decocms 2.306.1 → 2.306.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (183) hide show
  1. package/dist/client/assets/{AlertCircle--wiBhyBy.js → AlertCircle-CcUtX5uM.js} +1 -1
  2. package/dist/client/assets/{ArrowNarrowLeft-DUEFTkCU.js → ArrowNarrowLeft-IKO0Pdme.js} +1 -1
  3. package/dist/client/assets/{ArrowUpRight-ByDFdIYO.js → ArrowUpRight-B9ER_pU4.js} +1 -1
  4. package/dist/client/assets/{Check-C936sYYN.js → Check-DVRpvrTF.js} +1 -1
  5. package/dist/client/assets/{CheckCircle-CIhRIzNe.js → CheckCircle-C1PuOF6d.js} +1 -1
  6. package/dist/client/assets/{ChevronDown-D9-4IfgQ.js → ChevronDown-BgtmJwU7.js} +1 -1
  7. package/dist/client/assets/{ChevronRight-DYzYB9o2.js → ChevronRight-BxsGpbIW.js} +1 -1
  8. package/dist/client/assets/{ChevronUp-DjhQ54oJ.js → ChevronUp-DvM1tvKw.js} +1 -1
  9. package/dist/client/assets/{Container-W30Qs4TE.js → Container-D_d73BfD.js} +1 -1
  10. package/dist/client/assets/{DotsVertical-BTQcMhn-.js → DotsVertical-CFsox5cs.js} +1 -1
  11. package/dist/client/assets/{LinkExternal01-BWQuO7gD.js → LinkExternal01-BFJlAOho.js} +1 -1
  12. package/dist/client/assets/{Lock01-CzswZlFM.js → Lock01-BDVFL4zm.js} +1 -1
  13. package/dist/client/assets/{Palette-BkIcRAuI.js → Palette-C4Za_YQg.js} +1 -1
  14. package/dist/client/assets/{Play-CX-s0F5M.js → Play-CG03drxN.js} +1 -1
  15. package/dist/client/assets/{Plus-CxH8Dky0.js → Plus-BMxmddO-.js} +1 -1
  16. package/dist/client/assets/{RefreshCcw01-DUZtukjI.js → RefreshCcw01-B_PJ5f1k.js} +1 -1
  17. package/dist/client/assets/{SearchMd-DJcqe9YA.js → SearchMd-BH72zEYs.js} +1 -1
  18. package/dist/client/assets/{Settings02-19U6Pasa.js → Settings02-Bvv_nn0Y.js} +1 -1
  19. package/dist/client/assets/{Shield01-C1y1P7P6.js → Shield01-B-3tcngo.js} +1 -1
  20. package/dist/client/assets/{Star01-Dl0-D7bS.js → Star01-Cdw_hElv.js} +1 -1
  21. package/dist/client/assets/{Sun-DZgB_ONP.js → Sun-ja3JE2c9.js} +1 -1
  22. package/dist/client/assets/{Tool01-zaCqe86u.js → Tool01-DK9-mVZw.js} +1 -1
  23. package/dist/client/assets/{Trash01-DKdnsDmj.js → Trash01-D676SGAl.js} +1 -1
  24. package/dist/client/assets/{User01-kuDW4DKu.js → User01-DGJlNaMw.js} +1 -1
  25. package/dist/client/assets/{Users03-DEpz3kvM.js → Users03-CRQrY9LZ.js} +1 -1
  26. package/dist/client/assets/{X-CXRgDFum.js → X-DZI_qdyG.js} +1 -1
  27. package/dist/client/assets/{XCircle-CGvUuorr.js → XCircle-BI7HQKdL.js} +1 -1
  28. package/dist/client/assets/{XClose-C4DzyMov.js → XClose-DQPB9QhN.js} +1 -1
  29. package/dist/client/assets/{Zap-Cl0ETvvt.js → Zap-Dd-DoFdM.js} +1 -1
  30. package/dist/client/assets/{ZapSquare-DKEusvEW.js → ZapSquare-DZh8af5t.js} +1 -1
  31. package/dist/client/assets/{accordion-fFsu-8K2.js → accordion-BqJi9w98.js} +1 -1
  32. package/dist/client/assets/{agent-icon-D59FxHod.js → agent-icon-BpIPT-PU.js} +1 -1
  33. package/dist/client/assets/{agents-list-C9eV3yHD.js → agents-list-C92sGcpj.js} +1 -1
  34. package/dist/client/assets/ai-providers-Bi9o279v.js +1 -0
  35. package/dist/client/assets/{alert-dialog-Bs4oM5xq.js → alert-dialog-DZnXWtkc.js} +1 -1
  36. package/dist/client/assets/{auth-catchall-D7pOW-4H.js → auth-catchall-BlSxNcbF.js} +1 -1
  37. package/dist/client/assets/{automation-list-row-DBnJAyuL.js → automation-list-row-BjkF6IP8.js} +1 -1
  38. package/dist/client/assets/{automations-CASAuVDl.js → automations-Dk44qwnk.js} +1 -1
  39. package/dist/client/assets/{avatar-ChukgIuT.js → avatar-EJ4rWeJV.js} +1 -1
  40. package/dist/client/assets/{badge-CYxiHq4p.js → badge-CMhkMPpc.js} +1 -1
  41. package/dist/client/assets/{brand-context-BUYExxZ2.js → brand-context-DHKafDne.js} +1 -1
  42. package/dist/client/assets/{card-CuKTvJk_.js → card-DfBr11OH.js} +1 -1
  43. package/dist/client/assets/{chat-context-Cmw2lxUK.js → chat-context-DfNQ7f-M.js} +1 -1
  44. package/dist/client/assets/{checkbox-B5zXb2Jo.js → checkbox-CsVxpSNu.js} +1 -1
  45. package/dist/client/assets/{collection-detail-D12l8837.js → collection-detail-D3z0bht4.js} +1 -1
  46. package/dist/client/assets/{collection-display-button-DUUEITxu.js → collection-display-button-CijPjsBx.js} +1 -1
  47. package/dist/client/assets/{collection-search-JYX4AEcX.js → collection-search-CUzZkask.js} +1 -1
  48. package/dist/client/assets/{collection-search-Clt8DXHN.js → collection-search-DDXROr4Y.js} +1 -1
  49. package/dist/client/assets/{collection-table-wrapper-ClYve0R8.js → collection-table-wrapper-BJIOgEuU.js} +1 -1
  50. package/dist/client/assets/{collection-tabs-lx0xcUeS.js → collection-tabs-Sh1c6Hp3.js} +1 -1
  51. package/dist/client/assets/{collections-BNOKPh2o.js → collections-B6H9755O.js} +1 -1
  52. package/dist/client/assets/{command-Dl-gUn28.js → command-CN0wol1M.js} +1 -1
  53. package/dist/client/assets/{connection-card-DpO7z97O.js → connection-card-t8q3avUo.js} +1 -1
  54. package/dist/client/assets/{connection-detail-AvrFqpFh.js → connection-detail-_U-y0yZK.js} +1 -1
  55. package/dist/client/assets/{connection-form-helpers-YsDtNQ7E.js → connection-form-helpers-CDqLkd8a.js} +1 -1
  56. package/dist/client/assets/{connections-BCRN-YI1.js → connections-B7soayai.js} +1 -1
  57. package/dist/client/assets/{constants-BGzIm0WX.js → constants-Hpdlytpy.js} +1 -1
  58. package/dist/client/assets/{constants-DfKy425l.js → constants-RvCh42kd.js} +1 -1
  59. package/dist/client/assets/{dialog-De2L-Mm9.js → dialog-sB-RNyMu.js} +1 -1
  60. package/dist/client/assets/{domain-settings-Dpd1_jlw.js → domain-settings-CfN0XeQj.js} +1 -1
  61. package/dist/client/assets/{drawer-14Rn9Zur.js → drawer-DdDu6FoS.js} +1 -1
  62. package/dist/client/assets/{dropdown-menu-B7VqWYeT.js → dropdown-menu-Ba10Ub1x.js} +1 -1
  63. package/dist/client/assets/{dynamic-plugin-layout-DiwAyewI.js → dynamic-plugin-layout-DXfaFfD-.js} +1 -1
  64. package/dist/client/assets/{empty-state-BAo1HEab.js → empty-state-4KQTPzu7.js} +1 -1
  65. package/dist/client/assets/{empty-state-DH5ZYu9E.js → empty-state-oHMUpnK0.js} +1 -1
  66. package/dist/client/assets/{extract-connection-data-Dn80NCk3.js → extract-connection-data-CLmSiyTB.js} +1 -1
  67. package/dist/client/assets/{features-n_p9V38c.js → features-gEXnGXJn.js} +1 -1
  68. package/dist/client/assets/{form-BpjQQfrk.js → form-C8F4itc9.js} +1 -1
  69. package/dist/client/assets/{general-Dq8oAlWK.js → general-YVhMnlrc.js} +1 -1
  70. package/dist/client/assets/{index-Cnr3iyKb.js → index-9WMiiDWH.js} +1 -1
  71. package/dist/client/assets/{index-DZ2mE-ID.js → index-A1kUSxVF.js} +1 -1
  72. package/dist/client/assets/{index-DuYWPwRk.js → index-B__IE7Zg.js} +1 -1
  73. package/dist/client/assets/{index-f--UpzBV.js → index-BfH23PIC.js} +1 -1
  74. package/dist/client/assets/{index-PaARzNIj.js → index-C8Jg2iKl.js} +1 -1
  75. package/dist/client/assets/{index-DeZ4lzZS.js → index-CPXgqgtn.js} +2 -2
  76. package/dist/client/assets/{index-xj-daVDj.js → index-CaFhVluQ.js} +1 -1
  77. package/dist/client/assets/{index-x86r1Bar.js → index-Ccbgu0mE.js} +1 -1
  78. package/dist/client/assets/{index-YoMTmLrM.js → index-CsYx-I3w.js} +1 -1
  79. package/dist/client/assets/{index-CsGGI0Nu.js → index-CzNtdOVE.js} +3 -3
  80. package/dist/client/assets/{index-Lha-Dz-p.js → index-DGIpb-N4.js} +1 -1
  81. package/dist/client/assets/{index-aqFN5mzK.js → index-RcpmOMcB.js} +1 -1
  82. package/dist/client/assets/{index-CzYFXCYm.js → index-SKdTLMdd.js} +1 -1
  83. package/dist/client/assets/{index-C3WwEpEf.js → index-Vpu4sPxo.js} +1 -1
  84. package/dist/client/assets/index-s5U-1Asm.js +1 -0
  85. package/dist/client/assets/{index-BGGN2eK9.js → index-vqBvbw9C.js} +1 -1
  86. package/dist/client/assets/{infiniteQueryObserver-B8wlRxFU.js → infiniteQueryObserver-BeoG5sU6.js} +1 -1
  87. package/dist/client/assets/{input-BbtZTtIz.js → input-BYLqJazY.js} +1 -1
  88. package/dist/client/assets/{integration-icon-CX-4HHYz.js → integration-icon-Btpdnlb-.js} +1 -1
  89. package/dist/client/assets/{label-B56NHqZu.js → label-wqfg1Psv.js} +1 -1
  90. package/dist/client/assets/{layout-DJRPSgl8.js → layout-CSZNypzG.js} +1 -1
  91. package/dist/client/assets/{lean-canvas-recruit-modal-jh6XZJ5m.js → lean-canvas-recruit-modal-aeSS5EN2.js} +1 -1
  92. package/dist/client/assets/{login-MOfMmqEE.js → login-eSx-pmqu.js} +1 -1
  93. package/dist/client/assets/{members-Bb0t0cOy.js → members-Dp2QRB1E.js} +1 -1
  94. package/dist/client/assets/{monaco-editor-B3eeVSHt.js → monaco-editor-Bp7vt54e.js} +1 -1
  95. package/dist/client/assets/{monitoring-stats-row-BOj9NNqP.js → monitoring-stats-row-CSfdCe-P.js} +1 -1
  96. package/dist/client/assets/{oauth-callback-Bpfn3wkA.js → oauth-callback-ChiIJvQB.js} +1 -1
  97. package/dist/client/assets/{oauth-callback-ai-provider-BzHKlMUG.js → oauth-callback-ai-provider-Uj96uOps.js} +1 -1
  98. package/dist/client/assets/{onboarding-BHY99bnn.js → onboarding-B_0dDnLd.js} +1 -1
  99. package/dist/client/assets/{org-layout-BA9WvOcB.js → org-layout-DokAgJ5h.js} +1 -1
  100. package/dist/client/assets/{org-plugin-layout-D8vjiGLz.js → org-plugin-layout-C98RwuLU.js} +1 -1
  101. package/dist/client/assets/{pair-CqzVS7FB.js → pair-DYA5r7ea.js} +1 -1
  102. package/dist/client/assets/{plugin-empty-state-peVJXJ6R.js → plugin-empty-state-j8s8XCj4.js} +1 -1
  103. package/dist/client/assets/{plugin-header-BzceyGQx.js → plugin-header-BufwzLmI.js} +1 -1
  104. package/dist/client/assets/{plugin-layout-gRiAtkqj.js → plugin-layout-BwLMjrn6.js} +1 -1
  105. package/dist/client/assets/{popover-BWJBmR0W.js → popover-BP8qYbWI.js} +1 -1
  106. package/dist/client/assets/{profile-3DZrk3WT.js → profile-BUq_8Y8L.js} +1 -1
  107. package/dist/client/assets/{project-app-view-DKEPlP9n.js → project-app-view-Xj3yVfXy.js} +1 -1
  108. package/dist/client/assets/registry-BLsA5AO_.js +2 -0
  109. package/dist/client/assets/{registry-layout-6idZqCIF.js → registry-layout-CZ27EJiP.js} +1 -1
  110. package/dist/client/assets/{required-auth-layout-C4TIYyDi.js → required-auth-layout-DxobDViQ.js} +1 -1
  111. package/dist/client/assets/{reset-password-CKXtWBt4.js → reset-password-BX31j3AV.js} +1 -1
  112. package/dist/client/assets/{roles-CR6ZAjq-.js → roles-dyH1CsHQ.js} +1 -1
  113. package/dist/client/assets/{scroll-area-CpFD8S3R.js → scroll-area-Bazrt5Q_.js} +1 -1
  114. package/dist/client/assets/{search-input-D2W6-i9v.js → search-input-CagM2rOd.js} +1 -1
  115. package/dist/client/assets/{select-CACnwoTF.js → select-DV6XTbu1.js} +1 -1
  116. package/dist/client/assets/{select-model-Cajziskt.js → select-model-q-6_EO7e.js} +1 -1
  117. package/dist/client/assets/{settings-layout-BNHNlQuI.js → settings-layout-ydozaX1z.js} +1 -1
  118. package/dist/client/assets/{settings-section-B79eSyxk.js → settings-section-BSSTyi59.js} +1 -1
  119. package/dist/client/assets/{shell-layout-D-2Zmpp8.js → shell-layout-CCBbSGMK.js} +1 -1
  120. package/dist/client/assets/{skeleton-j1f8Y-yp.js → skeleton-eJ5dvmO1.js} +1 -1
  121. package/dist/client/assets/{sso-B3TyJ2uc.js → sso-D3B4i8mi.js} +1 -1
  122. package/dist/client/assets/store-registry-BizfzILs.js +2 -0
  123. package/dist/client/assets/{store-CIHVOnJ4.js → store-tol-TExI.js} +1 -1
  124. package/dist/client/assets/{switch-Cym1wsqe.js → switch-B9P99cpo.js} +1 -1
  125. package/dist/client/assets/{table-DjvJngLq.js → table-BIJ38639.js} +1 -1
  126. package/dist/client/assets/{tabs-CcbG9N2e.js → tabs-C0vV7-ts.js} +1 -1
  127. package/dist/client/assets/{task-status-BhHFrQR1.js → task-status-nAuAdX3m.js} +1 -1
  128. package/dist/client/assets/{textarea-CxPy3ZTN.js → textarea-Dk5HQM76.js} +1 -1
  129. package/dist/client/assets/{toggle-group-CUoQjxXD.js → toggle-group-DiN3ciV3.js} +1 -1
  130. package/dist/client/assets/{tools-list-Cb8a_Lef.js → tools-list-NaHpnv5w.js} +1 -1
  131. package/dist/client/assets/{tooltip-CzbSAgXQ.js → tooltip-CCRvyunm.js} +1 -1
  132. package/dist/client/assets/{types-DxewxD-a.js → types-CsuD99pM.js} +1 -1
  133. package/dist/client/assets/{use-ai-providers-CHzON1wD.js → use-ai-providers-Dgd0mo29.js} +1 -1
  134. package/dist/client/assets/{use-collections-DSBDbO1N.js → use-collections-Ra-WueHq.js} +1 -1
  135. package/dist/client/assets/{use-connection-DbYn3h0U.js → use-connection-D6QJlUO9.js} +1 -1
  136. package/dist/client/assets/{use-copy-B8mhVwfc.js → use-copy-BHjujE3w.js} +1 -1
  137. package/dist/client/assets/{use-create-virtual-mcp-zuSOC404.js → use-create-virtual-mcp-BxdAiHU1.js} +1 -1
  138. package/dist/client/assets/{use-debounced-autosave-B3LX33uh.js → use-debounced-autosave-C7GmOCQZ.js} +1 -1
  139. package/dist/client/assets/{use-decopilot-events-C1f4EaaO.js → use-decopilot-events-DQouP0Xf.js} +1 -1
  140. package/dist/client/assets/{use-delete-connection-B7VdYPcM.js → use-delete-connection-1o_zv9iJ.js} +1 -1
  141. package/dist/client/assets/{use-infinite-scroll-61_2Ymdd.js → use-infinite-scroll-CBiQU4Ab.js} +1 -1
  142. package/dist/client/assets/{use-list-state-BX0wxNad.js → use-list-state-COPr6pvf.js} +1 -1
  143. package/dist/client/assets/{use-mcp-tools-LXbg-7b0.js → use-mcp-tools-DD1IUYEC.js} +1 -1
  144. package/dist/client/assets/{use-members-B7wVCVZJ.js → use-members-uqCUADFs.js} +1 -1
  145. package/dist/client/assets/{use-navigate-to-agent-mAuF_Olj.js → use-navigate-to-agent-DtcXsTmt.js} +1 -1
  146. package/dist/client/assets/{use-org-auth-client-CZ46-R8H.js → use-org-auth-client-lzEa1Nt5.js} +1 -1
  147. package/dist/client/assets/{use-org-sso-iwRxmcvL.js → use-org-sso-XYdJdNGD.js} +1 -1
  148. package/dist/client/assets/{use-organization-roles-BiL7w6Rf.js → use-organization-roles-DaSsDuIz.js} +1 -1
  149. package/dist/client/assets/{use-organization-settings-CgpGj7yV.js → use-organization-settings-DZQEi_vL.js} +1 -1
  150. package/dist/client/assets/{use-registry-connections-v6H0url5.js → use-registry-connections-BgfsM9PL.js} +1 -1
  151. package/dist/client/assets/{use-status-sounds-DWE_lKOw.js → use-status-sounds-BnOGH79m.js} +1 -1
  152. package/dist/client/assets/{use-tasks-DYLdIMjk.js → use-tasks-CP9EEDgQ.js} +1 -1
  153. package/dist/client/assets/{use-view-mode-Dj9H2B4i.js → use-view-mode-DBMTYwcB.js} +1 -1
  154. package/dist/client/assets/{use-virtual-mcp-DNHpowZu.js → use-virtual-mcp-BNrt8cOn.js} +1 -1
  155. package/dist/client/assets/useInfiniteQuery-m6hlUQnd.js +1 -0
  156. package/dist/client/assets/useSuspenseInfiniteQuery-BbuXOIpQ.js +1 -0
  157. package/dist/client/assets/{user-B6HmPP4N.js → user-O4Eqd0DY.js} +1 -1
  158. package/dist/client/assets/{view-mode-toggle-CWWQpnSB.js → view-mode-toggle-BDOZY65E.js} +1 -1
  159. package/dist/client/assets/{workflow-zflBzFOe.js → workflow-BiwnYTIB.js} +1 -1
  160. package/dist/client/assets/workflow-detail-CHrqPsdS.js +1 -0
  161. package/dist/client/index.html +1 -1
  162. package/dist/server/cli.js +2 -2
  163. package/dist/server/node_modules/ansi-styles/index.d.ts +236 -0
  164. package/dist/server/node_modules/ansi-styles/index.js +223 -0
  165. package/dist/server/node_modules/ansi-styles/license +9 -0
  166. package/dist/server/node_modules/ansi-styles/package.json +54 -0
  167. package/dist/server/node_modules/ansi-styles/readme.md +173 -0
  168. package/dist/server/node_modules/xtend/.jshintrc +30 -0
  169. package/dist/server/node_modules/xtend/LICENSE +20 -0
  170. package/dist/server/node_modules/xtend/README.md +32 -0
  171. package/dist/server/node_modules/xtend/immutable.js +19 -0
  172. package/dist/server/node_modules/xtend/mutable.js +17 -0
  173. package/dist/server/node_modules/xtend/package.json +55 -0
  174. package/dist/server/node_modules/xtend/test.js +103 -0
  175. package/dist/server/server.js +1 -1
  176. package/package.json +1 -1
  177. package/dist/client/assets/ai-providers-Dw3vAL7u.js +0 -1
  178. package/dist/client/assets/index-xIOMtHnW.js +0 -1
  179. package/dist/client/assets/registry-4PJ4DDSp.js +0 -2
  180. package/dist/client/assets/store-registry-DKNEpxY8.js +0 -2
  181. package/dist/client/assets/useInfiniteQuery-DsFcYHS7.js +0 -1
  182. package/dist/client/assets/useSuspenseInfiniteQuery-B4Xtg3B8.js +0 -1
  183. package/dist/client/assets/workflow-detail-BkYNroDK.js +0 -1
@@ -1948,7 +1948,7 @@ ${Z}
1948
1948
 
1949
1949
  `;break}case"tool":throw new E9({functionality:"tool messages"});default:throw Error(`Unsupported role: ${J}`)}return Q+=`${G}:
1950
1950
  `,{prompt:Q,stopSequences:[`
1951
- ${Y}:`]}}function aA6({id:X,model:Y,created:G}){return{id:X!=null?X:void 0,modelId:Y!=null?Y:void 0,timestamp:G!=null?new Date(G*1000):void 0}}function oA6(X){switch(X){case"stop":return"stop";case"length":return"length";case"content_filter":return"content-filter";case"function_call":case"tool_calls":return"tool-calls";default:return"other"}}function gA5(X){return xA5.some((Y)=>X.startsWith(Y))}function XT6(X,Y,G){if(X==null)return{};let Q={};if(X.image_tokens!=null){let J=Math.floor(X.image_tokens/G),$=X.image_tokens-J*(G-1);Q.imageTokens=Y===G-1?$:J}if(X.text_tokens!=null){let J=Math.floor(X.text_tokens/G),$=X.text_tokens-J*(G-1);Q.textTokens=Y===G-1?$:J}return Q}async function lA5(X){if(!X)return;if(X.type==="url")return qP0(X.url);let Y=X.data instanceof Uint8Array?X.data:WG(X.data);return new Blob([Y],{type:X.mediaType})}function YT6(X){var Y,G,Q,J;if(X==null)return{inputTokens:{total:void 0,noCache:void 0,cacheRead:void 0,cacheWrite:void 0},outputTokens:{total:void 0,text:void 0,reasoning:void 0},raw:void 0};let{input_tokens:$,output_tokens:Z}=X,W=(G=(Y=X.input_tokens_details)==null?void 0:Y.cached_tokens)!=null?G:0,K=(J=(Q=X.output_tokens_details)==null?void 0:Q.reasoning_tokens)!=null?J:0;return{inputTokens:{total:$,noCache:$-W,cacheRead:W,cacheWrite:void 0},outputTokens:{total:Z,text:Z-K,reasoning:K},raw:X}}function ST5(X){return JSON.stringify(X===void 0?{}:X)}function GT6(X,Y){if(!Y)return!1;return Y.some((G)=>X.startsWith(G))}async function kT5({prompt:X,toolNameMapping:Y,systemMessageMode:G,providerOptionsName:Q,fileIdPrefixes:J,store:$,hasConversation:Z=!1,hasLocalShellTool:W=!1,hasShellTool:K=!1,hasApplyPatchTool:H=!1,customProviderToolNames:U}){var B,N,O,z,w,E,P,A,V,M,j,R,C,_,v,y,x;let i=[],t=[],b=new Set;for(let{role:m,content:e}of X)switch(m){case"system":{switch(G){case"system":{i.push({role:"system",content:e});break}case"developer":{i.push({role:"developer",content:e});break}case"remove":{t.push({type:"other",message:"system messages are removed for this model"});break}default:throw Error(`Unsupported system message mode: ${G}`)}break}case"user":{i.push({role:"user",content:e.map((s,N1)=>{var w1,B1,D1;switch(s.type){case"text":return{type:"input_text",text:s.text};case"file":if(s.mediaType.startsWith("image/")){let k1=s.mediaType==="image/*"?"image/jpeg":s.mediaType;return{type:"input_image",...s.data instanceof URL?{image_url:s.data.toString()}:typeof s.data==="string"&&GT6(s.data,J)?{file_id:s.data}:{image_url:`data:${k1};base64,${mJ(s.data)}`},detail:(B1=(w1=s.providerOptions)==null?void 0:w1[Q])==null?void 0:B1.imageDetail}}else if(s.mediaType==="application/pdf"){if(s.data instanceof URL)return{type:"input_file",file_url:s.data.toString()};return{type:"input_file",...typeof s.data==="string"&&GT6(s.data,J)?{file_id:s.data}:{filename:(D1=s.filename)!=null?D1:`part-${N1}.pdf`,file_data:`data:application/pdf;base64,${mJ(s.data)}`}}}else throw new E9({functionality:`file part media type ${s.mediaType}`})}})});break}case"assistant":{let s={};for(let N1 of e)switch(N1.type){case"text":{let w1=(B=N1.providerOptions)==null?void 0:B[Q],B1=w1==null?void 0:w1.itemId,D1=w1==null?void 0:w1.phase;if(Z&&B1!=null)break;if($&&B1!=null){i.push({type:"item_reference",id:B1});break}i.push({role:"assistant",content:[{type:"output_text",text:N1.text}],id:B1,...D1!=null&&{phase:D1}});break}case"tool-call":{let w1=(E=(O=(N=N1.providerOptions)==null?void 0:N[Q])==null?void 0:O.itemId)!=null?E:(w=(z=N1.providerMetadata)==null?void 0:z[Q])==null?void 0:w.itemId;if(Z&&w1!=null)break;let B1=Y.toProviderToolName(N1.toolName);if(B1==="tool_search"){if($&&w1!=null){i.push({type:"item_reference",id:w1});break}let D1=typeof N1.input==="string"?await IP0({text:N1.input,schema:FA0}):await N8({value:N1.input,schema:FA0}),k1=D1.call_id!=null?"client":"server";i.push({type:"tool_search_call",id:w1!=null?w1:N1.toolCallId,execution:k1,call_id:(P=D1.call_id)!=null?P:null,status:"completed",arguments:D1.arguments});break}if(N1.providerExecuted){if($&&w1!=null)i.push({type:"item_reference",id:w1});break}if($&&w1!=null){i.push({type:"item_reference",id:w1});break}if(W&&B1==="local_shell"){let D1=await N8({value:N1.input,schema:NT6});i.push({type:"local_shell_call",call_id:N1.toolCallId,id:w1,action:{type:"exec",command:D1.action.command,timeout_ms:D1.action.timeoutMs,user:D1.action.user,working_directory:D1.action.workingDirectory,env:D1.action.env}});break}if(K&&B1==="shell"){let D1=await N8({value:N1.input,schema:zT6});i.push({type:"shell_call",call_id:N1.toolCallId,id:w1,status:"completed",action:{commands:D1.action.commands,timeout_ms:D1.action.timeoutMs,max_output_length:D1.action.maxOutputLength}});break}if(H&&B1==="apply_patch"){let D1=await N8({value:N1.input,schema:HT6});i.push({type:"apply_patch_call",call_id:D1.callId,id:w1,status:"completed",operation:D1.operation});break}if(U==null?void 0:U.has(B1)){i.push({type:"custom_tool_call",call_id:N1.toolCallId,name:B1,input:typeof N1.input==="string"?N1.input:JSON.stringify(N1.input),id:w1});break}i.push({type:"function_call",call_id:N1.toolCallId,name:B1,arguments:ST5(N1.input),id:w1});break}case"tool-result":{if(N1.output.type==="execution-denied"||N1.output.type==="json"&&typeof N1.output.value==="object"&&N1.output.value!=null&&"type"in N1.output.value&&N1.output.value.type==="execution-denied")break;if(Z)break;let w1=Y.toProviderToolName(N1.toolName);if(w1==="tool_search"){let B1=(M=(V=(A=N1.providerOptions)==null?void 0:A[Q])==null?void 0:V.itemId)!=null?M:N1.toolCallId;if($)i.push({type:"item_reference",id:B1});else if(N1.output.type==="json"){let D1=await N8({value:N1.output.value,schema:UA0});i.push({type:"tool_search_output",id:B1,execution:"server",call_id:null,status:"completed",tools:D1.tools})}break}if(K&&w1==="shell"){if(N1.output.type==="json"){let B1=await N8({value:N1.output.value,schema:HA0});i.push({type:"shell_call_output",call_id:N1.toolCallId,output:B1.output.map((D1)=>({stdout:D1.stdout,stderr:D1.stderr,outcome:D1.outcome.type==="timeout"?{type:"timeout"}:{type:"exit",exit_code:D1.outcome.exitCode}}))})}break}if($){let B1=(C=(R=(j=N1.providerOptions)==null?void 0:j[Q])==null?void 0:R.itemId)!=null?C:N1.toolCallId;i.push({type:"item_reference",id:B1})}else t.push({type:"other",message:`Results for OpenAI tool ${N1.toolName} are not sent to the API when store is false`});break}case"reasoning":{let w1=await S9({provider:Q,providerOptions:N1.providerOptions,schema:CT5}),B1=w1==null?void 0:w1.itemId;if(Z&&B1!=null)break;if(B1!=null){let D1=s[B1];if($){if(D1===void 0)i.push({type:"item_reference",id:B1}),s[B1]={type:"reasoning",id:B1,summary:[]}}else{let k1=[];if(N1.text.length>0)k1.push({type:"summary_text",text:N1.text});else if(D1!==void 0)t.push({type:"other",message:`Cannot append empty reasoning part to existing reasoning sequence. Skipping reasoning part: ${JSON.stringify(N1)}.`});if(D1===void 0)s[B1]={type:"reasoning",id:B1,encrypted_content:w1==null?void 0:w1.reasoningEncryptedContent,summary:k1},i.push(s[B1]);else if(D1.summary.push(...k1),(w1==null?void 0:w1.reasoningEncryptedContent)!=null)D1.encrypted_content=w1.reasoningEncryptedContent}}else{let D1=w1==null?void 0:w1.reasoningEncryptedContent;if(D1!=null){let k1=[];if(N1.text.length>0)k1.push({type:"summary_text",text:N1.text});i.push({type:"reasoning",encrypted_content:D1,summary:k1})}else t.push({type:"other",message:`Non-OpenAI reasoning parts are not supported. Skipping reasoning part: ${JSON.stringify(N1)}.`})}break}}break}case"tool":{for(let s of e){if(s.type==="tool-approval-response"){let D1=s;if(b.has(D1.approvalId))continue;if(b.add(D1.approvalId),$)i.push({type:"item_reference",id:D1.approvalId});i.push({type:"mcp_approval_response",approval_request_id:D1.approvalId,approve:D1.approved});continue}let N1=s.output;if(N1.type==="execution-denied"){if((v=(_=N1.providerOptions)==null?void 0:_.openai)==null?void 0:v.approvalId)continue}let w1=Y.toProviderToolName(s.toolName);if(w1==="tool_search"&&N1.type==="json"){let D1=await N8({value:N1.value,schema:UA0});i.push({type:"tool_search_output",execution:"client",call_id:s.toolCallId,status:"completed",tools:D1.tools});continue}if(W&&w1==="local_shell"&&N1.type==="json"){let D1=await N8({value:N1.value,schema:OT6});i.push({type:"local_shell_call_output",call_id:s.toolCallId,output:D1.output});continue}if(K&&w1==="shell"&&N1.type==="json"){let D1=await N8({value:N1.value,schema:HA0});i.push({type:"shell_call_output",call_id:s.toolCallId,output:D1.output.map((k1)=>({stdout:k1.stdout,stderr:k1.stderr,outcome:k1.outcome.type==="timeout"?{type:"timeout"}:{type:"exit",exit_code:k1.outcome.exitCode}}))});continue}if(H&&s.toolName==="apply_patch"&&N1.type==="json"){let D1=await N8({value:N1.value,schema:FT6});i.push({type:"apply_patch_call_output",call_id:s.toolCallId,status:D1.status,output:D1.output});continue}if(U==null?void 0:U.has(w1)){let D1;switch(N1.type){case"text":case"error-text":D1=N1.value;break;case"execution-denied":D1=(y=N1.reason)!=null?y:"Tool execution denied.";break;case"json":case"error-json":D1=JSON.stringify(N1.value);break;case"content":D1=N1.value.map((k1)=>{var o1;switch(k1.type){case"text":return{type:"input_text",text:k1.text};case"image-data":return{type:"input_image",image_url:`data:${k1.mediaType};base64,${k1.data}`};case"image-url":return{type:"input_image",image_url:k1.url};case"file-data":return{type:"input_file",filename:(o1=k1.filename)!=null?o1:"data",file_data:`data:${k1.mediaType};base64,${k1.data}`};case"file-url":return{type:"input_file",file_url:k1.url};default:t.push({type:"other",message:`unsupported custom tool content part type: ${k1.type}`});return}}).filter(c2);break;default:D1=""}i.push({type:"custom_tool_call_output",call_id:s.toolCallId,output:D1});continue}let B1;switch(N1.type){case"text":case"error-text":B1=N1.value;break;case"execution-denied":B1=(x=N1.reason)!=null?x:"Tool execution denied.";break;case"json":case"error-json":B1=JSON.stringify(N1.value);break;case"content":B1=N1.value.map((D1)=>{var k1;switch(D1.type){case"text":return{type:"input_text",text:D1.text};case"image-data":return{type:"input_image",image_url:`data:${D1.mediaType};base64,${D1.data}`};case"image-url":return{type:"input_image",image_url:D1.url};case"file-data":return{type:"input_file",filename:(k1=D1.filename)!=null?k1:"data",file_data:`data:${D1.mediaType};base64,${D1.data}`};case"file-url":return{type:"input_file",file_url:D1.url};default:{t.push({type:"other",message:`unsupported tool content part type: ${D1.type}`});return}}}).filter(c2);break}i.push({type:"function_call_output",call_id:s.toolCallId,output:B1})}break}default:throw Error(`Unsupported role: ${m}`)}if(!$&&i.some((m)=>("type"in m)&&m.type==="reasoning"&&m.encrypted_content==null))t.push({type:"other",message:"Reasoning parts without encrypted content are not supported when store is false. Skipping reasoning parts."}),i=i.filter((m)=>!("type"in m)||m.type!=="reasoning"||m.encrypted_content!=null);return{input:i,warnings:t}}function KA0({finishReason:X,hasFunctionCall:Y}){switch(X){case void 0:case null:return Y?"tool-calls":"stop";case"max_output_tokens":return"length";case"content_filter":return"content-filter";default:return Y?"tool-calls":"other"}}async function bT5({tools:X,toolChoice:Y,toolNameMapping:G,customProviderToolNames:Q}){var J,$;X=(X==null?void 0:X.length)?X:void 0;let Z=[];if(X==null)return{tools:void 0,toolChoice:void 0,toolWarnings:Z};let W=[],K=Q!=null?Q:new Set;for(let U of X)switch(U.type){case"function":{let B=(J=U.providerOptions)==null?void 0:J.openai,N=B==null?void 0:B.deferLoading;W.push({type:"function",name:U.name,description:U.description,parameters:U.inputSchema,...U.strict!=null?{strict:U.strict}:{},...N!=null?{defer_loading:N}:{}});break}case"provider":{switch(U.id){case"openai.file_search":{let B=await N8({value:U.args,schema:eA5});W.push({type:"file_search",vector_store_ids:B.vectorStoreIds,max_num_results:B.maxNumResults,ranking_options:B.ranking?{ranker:B.ranking.ranker,score_threshold:B.ranking.scoreThreshold}:void 0,filters:B.filters});break}case"openai.local_shell":{W.push({type:"local_shell"});break}case"openai.shell":{let B=await N8({value:U.args,schema:HT5});W.push({type:"shell",...B.environment&&{environment:yT5(B.environment)}});break}case"openai.apply_patch":{W.push({type:"apply_patch"});break}case"openai.web_search_preview":{let B=await N8({value:U.args,schema:ET5});W.push({type:"web_search_preview",search_context_size:B.searchContextSize,user_location:B.userLocation});break}case"openai.web_search":{let B=await N8({value:U.args,schema:OT5});W.push({type:"web_search",filters:B.filters!=null?{allowed_domains:B.filters.allowedDomains}:void 0,external_web_access:B.externalWebAccess,search_context_size:B.searchContextSize,user_location:B.userLocation});break}case"openai.code_interpreter":{let B=await N8({value:U.args,schema:pA5});W.push({type:"code_interpreter",container:B.container==null?{type:"auto",file_ids:void 0}:typeof B.container==="string"?B.container:{type:"auto",file_ids:B.container.fileIds}});break}case"openai.image_generation":{let B=await N8({value:U.args,schema:GT5});W.push({type:"image_generation",background:B.background,input_fidelity:B.inputFidelity,input_image_mask:B.inputImageMask?{file_id:B.inputImageMask.fileId,image_url:B.inputImageMask.imageUrl}:void 0,model:B.model,moderation:B.moderation,partial_images:B.partialImages,quality:B.quality,output_compression:B.outputCompression,output_format:B.outputFormat,size:B.size});break}case"openai.mcp":{let B=await N8({value:U.args,schema:TT5}),N=(w)=>({tool_names:w.toolNames}),O=B.requireApproval,z=O==null?void 0:typeof O==="string"?O:O.never!=null?{never:N(O.never)}:void 0;W.push({type:"mcp",server_label:B.serverLabel,allowed_tools:Array.isArray(B.allowedTools)?B.allowedTools:B.allowedTools?{read_only:B.allowedTools.readOnly,tool_names:B.allowedTools.toolNames}:void 0,authorization:B.authorization,connector_id:B.connectorId,headers:B.headers,require_approval:z!=null?z:"never",server_description:B.serverDescription,server_url:B.serverUrl});break}case"openai.custom":{let B=await N8({value:U.args,schema:rA5});W.push({type:"custom",name:B.name,description:B.description,format:B.format}),K.add(B.name);break}case"openai.tool_search":{let B=await N8({value:U.args,schema:UT5});W.push({type:"tool_search",...B.execution!=null?{execution:B.execution}:{},...B.description!=null?{description:B.description}:{},...B.parameters!=null?{parameters:B.parameters}:{}});break}}break}default:Z.push({type:"unsupported",feature:`function tool ${U}`});break}if(Y==null)return{tools:W,toolChoice:void 0,toolWarnings:Z};let H=Y.type;switch(H){case"auto":case"none":case"required":return{tools:W,toolChoice:H,toolWarnings:Z};case"tool":{let U=($=G==null?void 0:G.toProviderToolName(Y.toolName))!=null?$:Y.toolName;return{tools:W,toolChoice:U==="code_interpreter"||U==="file_search"||U==="image_generation"||U==="web_search_preview"||U==="web_search"||U==="mcp"||U==="apply_patch"?{type:U}:K.has(U)?{type:"custom",name:U}:{type:"function",name:U},toolWarnings:Z}}default:throw new E9({functionality:`tool choice type: ${H}`})}}function yT5(X){if(X.type==="containerReference")return{type:"container_reference",container_id:X.containerId};if(X.type==="containerAuto"){let G=X;return{type:"container_auto",file_ids:G.fileIds,memory_limit:G.memoryLimit,network_policy:G.networkPolicy==null?void 0:G.networkPolicy.type==="disabled"?{type:"disabled"}:{type:"allowlist",allowed_domains:G.networkPolicy.allowedDomains,domain_secrets:G.networkPolicy.domainSecrets},skills:hT5(G.skills)}}return{type:"local",skills:X.skills}}function hT5(X){return X==null?void 0:X.map((Y)=>Y.type==="skillReference"?{type:"skill_reference",skill_id:Y.skillId,version:Y.version}:{type:"inline",name:Y.name,description:Y.description,source:{type:"base64",media_type:Y.source.mediaType,data:Y.source.data}})}function JT6(X){var Y,G;let Q={};for(let J of X){if(J.role!=="assistant")continue;for(let $ of J.content){if($.type!=="tool-call")continue;let Z=(G=(Y=$.providerOptions)==null?void 0:Y.openai)==null?void 0:G.approvalRequestId;if(Z!=null)Q[Z]=$.toolCallId}}return Q}function gT5(X){return X.type==="response.output_text.delta"}function uT5(X){return X.type==="response.output_item.done"}function lT5(X){return X.type==="response.completed"||X.type==="response.incomplete"}function mT5(X){return X.type==="response.failed"}function dT5(X){return X.type==="response.created"}function cT5(X){return X.type==="response.function_call_arguments.delta"}function iT5(X){return X.type==="response.custom_tool_call_input.delta"}function pT5(X){return X.type==="response.image_generation_call.partial_image"}function nT5(X){return X.type==="response.code_interpreter_call_code.delta"}function tT5(X){return X.type==="response.code_interpreter_call_code.done"}function rT5(X){return X.type==="response.apply_patch_call_operation_diff.delta"}function aT5(X){return X.type==="response.apply_patch_call_operation_diff.done"}function ZT6(X){return X.type==="response.output_item.added"}function oT5(X){return X.type==="response.output_text.annotation.added"}function sT5(X){return X.type==="error"}function $T6(X){var Y;if(X==null)return{};switch(X.type){case"search":return{action:{type:"search",query:(Y=X.query)!=null?Y:void 0},...X.sources!=null&&{sources:X.sources}};case"open_page":return{action:{type:"openPage",url:X.url}};case"find_in_page":return{action:{type:"findInPage",url:X.url,pattern:X.pattern}}}}function YM(X){return JSON.stringify(X).slice(1,-1)}function OA0(X={}){var Y,G;let Q=(Y=Sq(yN({settingValue:X.baseURL,environmentVariableName:"OPENAI_BASE_URL"})))!=null?Y:"https://api.openai.com/v1",J=(G=X.name)!=null?G:"openai",$=()=>_5({Authorization:`Bearer ${wr({apiKey:X.apiKey,environmentVariableName:"OPENAI_API_KEY",description:"OpenAI"})}`,"OpenAI-Organization":X.organization,"OpenAI-Project":X.project,...X.headers},`ai-sdk/openai/${JI5}`),Z=(w)=>new SA5(w,{provider:`${J}.chat`,url:({path:E})=>`${Q}${E}`,headers:$,fetch:X.fetch}),W=(w)=>new _A5(w,{provider:`${J}.completion`,url:({path:E})=>`${Q}${E}`,headers:$,fetch:X.fetch}),K=(w)=>new yA5(w,{provider:`${J}.embedding`,url:({path:E})=>`${Q}${E}`,headers:$,fetch:X.fetch}),H=(w)=>new uA5(w,{provider:`${J}.image`,url:({path:E})=>`${Q}${E}`,headers:$,fetch:X.fetch}),U=(w)=>new QI5(w,{provider:`${J}.transcription`,url:({path:E})=>`${Q}${E}`,headers:$,fetch:X.fetch}),B=(w)=>new XI5(w,{provider:`${J}.speech`,url:({path:E})=>`${Q}${E}`,headers:$,fetch:X.fetch}),N=(w)=>{if(new.target)throw Error("The OpenAI model function cannot be called with the new keyword.");return O(w)},O=(w)=>{return new xT5(w,{provider:`${J}.responses`,url:({path:E})=>`${Q}${E}`,headers:$,fetch:X.fetch,fileIdPrefixes:["file-"]})},z=function(w){return N(w)};return z.specificationVersion="v3",z.languageModel=N,z.chat=Z,z.completion=W,z.responses=O,z.embedding=K,z.embeddingModel=K,z.textEmbedding=K,z.textEmbeddingModel=K,z.image=H,z.imageModel=H,z.transcription=U,z.transcriptionModel=U,z.speech=B,z.speechModel=B,z.tools=RT5,z}var NA0,NU,jA5,VA5,MA5,SA5=class{constructor(X,Y){this.specificationVersion="v3",this.supportedUrls={"image/*":[/^https?:\/\/.*$/]},this.modelId=X,this.config=Y}get provider(){return this.config.provider}async getArgs({prompt:X,maxOutputTokens:Y,temperature:G,topP:Q,topK:J,frequencyPenalty:$,presencePenalty:Z,stopSequences:W,responseFormat:K,seed:H,tools:U,toolChoice:B,providerOptions:N}){var O,z,w,E,P;let A=[],V=(O=await S9({provider:"openai",providerOptions:N,schema:MA5}))!=null?O:{},M=KT6(this.modelId),j=(z=V.forceReasoning)!=null?z:M.isReasoningModel;if(J!=null)A.push({type:"unsupported",feature:"topK"});let{messages:R,warnings:C}=IA5({prompt:X,systemMessageMode:(w=V.systemMessageMode)!=null?w:j?"developer":M.systemMessageMode});A.push(...C);let _=(E=V.strictJsonSchema)!=null?E:!0,v={model:this.modelId,logit_bias:V.logitBias,logprobs:V.logprobs===!0||typeof V.logprobs==="number"?!0:void 0,top_logprobs:typeof V.logprobs==="number"?V.logprobs:typeof V.logprobs==="boolean"?V.logprobs?0:void 0:void 0,user:V.user,parallel_tool_calls:V.parallelToolCalls,max_tokens:Y,temperature:G,top_p:Q,frequency_penalty:$,presence_penalty:Z,response_format:(K==null?void 0:K.type)==="json"?K.schema!=null?{type:"json_schema",json_schema:{schema:K.schema,strict:_,name:(P=K.name)!=null?P:"response",description:K.description}}:{type:"json_object"}:void 0,stop:W,seed:H,verbosity:V.textVerbosity,max_completion_tokens:V.maxCompletionTokens,store:V.store,metadata:V.metadata,prediction:V.prediction,reasoning_effort:V.reasoningEffort,service_tier:V.serviceTier,prompt_cache_key:V.promptCacheKey,prompt_cache_retention:V.promptCacheRetention,safety_identifier:V.safetyIdentifier,messages:R};if(j){if(V.reasoningEffort!=="none"||!M.supportsNonReasoningParameters){if(v.temperature!=null)v.temperature=void 0,A.push({type:"unsupported",feature:"temperature",details:"temperature is not supported for reasoning models"});if(v.top_p!=null)v.top_p=void 0,A.push({type:"unsupported",feature:"topP",details:"topP is not supported for reasoning models"});if(v.logprobs!=null)v.logprobs=void 0,A.push({type:"other",message:"logprobs is not supported for reasoning models"})}if(v.frequency_penalty!=null)v.frequency_penalty=void 0,A.push({type:"unsupported",feature:"frequencyPenalty",details:"frequencyPenalty is not supported for reasoning models"});if(v.presence_penalty!=null)v.presence_penalty=void 0,A.push({type:"unsupported",feature:"presencePenalty",details:"presencePenalty is not supported for reasoning models"});if(v.logit_bias!=null)v.logit_bias=void 0,A.push({type:"other",message:"logitBias is not supported for reasoning models"});if(v.top_logprobs!=null)v.top_logprobs=void 0,A.push({type:"other",message:"topLogprobs is not supported for reasoning models"});if(v.max_tokens!=null){if(v.max_completion_tokens==null)v.max_completion_tokens=v.max_tokens;v.max_tokens=void 0}}else if(this.modelId.startsWith("gpt-4o-search-preview")||this.modelId.startsWith("gpt-4o-mini-search-preview")){if(v.temperature!=null)v.temperature=void 0,A.push({type:"unsupported",feature:"temperature",details:"temperature is not supported for the search preview models and has been removed."})}if(V.serviceTier==="flex"&&!M.supportsFlexProcessing)A.push({type:"unsupported",feature:"serviceTier",details:"flex processing is only available for o3, o4-mini, and gpt-5 models"}),v.service_tier=void 0;if(V.serviceTier==="priority"&&!M.supportsPriorityProcessing)A.push({type:"unsupported",feature:"serviceTier",details:"priority processing is only available for supported models (gpt-4, gpt-5, gpt-5-mini, o3, o4-mini) and requires Enterprise access. gpt-5-nano is not supported"}),v.service_tier=void 0;let{tools:y,toolChoice:x,toolWarnings:i}=RA5({tools:U,toolChoice:B});return{args:{...v,tools:y,tool_choice:x},warnings:[...A,...i]}}async doGenerate(X){var Y,G,Q,J,$,Z,W;let{args:K,warnings:H}=await this.getArgs(X),{responseHeaders:U,value:B,rawValue:N}=await n8({url:this.config.url({path:"/chat/completions",modelId:this.modelId}),headers:S8(this.config.headers(),X.headers),body:K,failedResponseHandler:NU,successfulResponseHandler:u8(jA5),abortSignal:X.abortSignal,fetch:this.config.fetch}),O=B.choices[0],z=[],w=O.message.content;if(w!=null&&w.length>0)z.push({type:"text",text:w});for(let V of(Y=O.message.tool_calls)!=null?Y:[])z.push({type:"tool-call",toolCallId:(G=V.id)!=null?G:e4(),toolName:V.function.name,input:V.function.arguments});for(let V of(Q=O.message.annotations)!=null?Q:[])z.push({type:"source",sourceType:"url",id:e4(),url:V.url_citation.url,title:V.url_citation.title});let E=(J=B.usage)==null?void 0:J.completion_tokens_details,P=($=B.usage)==null?void 0:$.prompt_tokens_details,A={openai:{}};if((E==null?void 0:E.accepted_prediction_tokens)!=null)A.openai.acceptedPredictionTokens=E==null?void 0:E.accepted_prediction_tokens;if((E==null?void 0:E.rejected_prediction_tokens)!=null)A.openai.rejectedPredictionTokens=E==null?void 0:E.rejected_prediction_tokens;if(((Z=O.logprobs)==null?void 0:Z.content)!=null)A.openai.logprobs=O.logprobs.content;return{content:z,finishReason:{unified:tA6(O.finish_reason),raw:(W=O.finish_reason)!=null?W:void 0},usage:nA6(B.usage),request:{body:K},response:{...WA0(B),headers:U,body:N},warnings:H,providerMetadata:A}}async doStream(X){let{args:Y,warnings:G}=await this.getArgs(X),Q={...Y,stream:!0,stream_options:{include_usage:!0}},{responseHeaders:J,value:$}=await n8({url:this.config.url({path:"/chat/completions",modelId:this.modelId}),headers:S8(this.config.headers(),X.headers),body:Q,failedResponseHandler:NU,successfulResponseHandler:HH(VA5),abortSignal:X.abortSignal,fetch:this.config.fetch}),Z=[],W={unified:"other",raw:void 0},K=void 0,H=!1,U=!1,B={openai:{}};return{stream:$.pipeThrough(new TransformStream({start(N){N.enqueue({type:"stream-start",warnings:G})},transform(N,O){var z,w,E,P,A,V,M,j,R,C,_,v,y,x,i,t,b;if(X.includeRawChunks)O.enqueue({type:"raw",rawValue:N.rawValue});if(!N.success){W={unified:"error",raw:void 0},O.enqueue({type:"error",error:N.error});return}let m=N.value;if("error"in m){W={unified:"error",raw:void 0},O.enqueue({type:"error",error:m.error});return}if(!H){let N1=WA0(m);if(Object.values(N1).some(Boolean))H=!0,O.enqueue({type:"response-metadata",...WA0(m)})}if(m.usage!=null){if(K=m.usage,((z=m.usage.completion_tokens_details)==null?void 0:z.accepted_prediction_tokens)!=null)B.openai.acceptedPredictionTokens=(w=m.usage.completion_tokens_details)==null?void 0:w.accepted_prediction_tokens;if(((E=m.usage.completion_tokens_details)==null?void 0:E.rejected_prediction_tokens)!=null)B.openai.rejectedPredictionTokens=(P=m.usage.completion_tokens_details)==null?void 0:P.rejected_prediction_tokens}let e=m.choices[0];if((e==null?void 0:e.finish_reason)!=null)W={unified:tA6(e.finish_reason),raw:e.finish_reason};if(((A=e==null?void 0:e.logprobs)==null?void 0:A.content)!=null)B.openai.logprobs=e.logprobs.content;if((e==null?void 0:e.delta)==null)return;let s=e.delta;if(s.content!=null){if(!U)O.enqueue({type:"text-start",id:"0"}),U=!0;O.enqueue({type:"text-delta",id:"0",delta:s.content})}if(s.tool_calls!=null)for(let N1 of s.tool_calls){let w1=N1.index;if(Z[w1]==null){if(N1.type!=null&&N1.type!=="function")throw new Nr({data:N1,message:"Expected 'function' type."});if(N1.id==null)throw new Nr({data:N1,message:"Expected 'id' to be a string."});if(((V=N1.function)==null?void 0:V.name)==null)throw new Nr({data:N1,message:"Expected 'function.name' to be a string."});O.enqueue({type:"tool-input-start",id:N1.id,toolName:N1.function.name}),Z[w1]={id:N1.id,type:"function",function:{name:N1.function.name,arguments:(M=N1.function.arguments)!=null?M:""},hasFinished:!1};let D1=Z[w1];if(((j=D1.function)==null?void 0:j.name)!=null&&((R=D1.function)==null?void 0:R.arguments)!=null){if(D1.function.arguments.length>0)O.enqueue({type:"tool-input-delta",id:D1.id,delta:D1.function.arguments});if(jP0(D1.function.arguments))O.enqueue({type:"tool-input-end",id:D1.id}),O.enqueue({type:"tool-call",toolCallId:(C=D1.id)!=null?C:e4(),toolName:D1.function.name,input:D1.function.arguments}),D1.hasFinished=!0}continue}let B1=Z[w1];if(B1.hasFinished)continue;if(((_=N1.function)==null?void 0:_.arguments)!=null)B1.function.arguments+=(y=(v=N1.function)==null?void 0:v.arguments)!=null?y:"";if(O.enqueue({type:"tool-input-delta",id:B1.id,delta:(x=N1.function.arguments)!=null?x:""}),((i=B1.function)==null?void 0:i.name)!=null&&((t=B1.function)==null?void 0:t.arguments)!=null&&jP0(B1.function.arguments))O.enqueue({type:"tool-input-end",id:B1.id}),O.enqueue({type:"tool-call",toolCallId:(b=B1.id)!=null?b:e4(),toolName:B1.function.name,input:B1.function.arguments}),B1.hasFinished=!0}if(s.annotations!=null)for(let N1 of s.annotations)O.enqueue({type:"source",sourceType:"url",id:e4(),url:N1.url_citation.url,title:N1.url_citation.title})},flush(N){if(U)N.enqueue({type:"text-end",id:"0"});N.enqueue({type:"finish",finishReason:W,usage:nA6(K),...B!=null?{providerMetadata:B}:{}})}})),request:{body:Q},response:{headers:J}}}},CA5,vA5,sA6,_A5=class{constructor(X,Y){this.specificationVersion="v3",this.supportedUrls={},this.modelId=X,this.config=Y}get providerOptionsName(){return this.config.provider.split(".")[0].trim()}get provider(){return this.config.provider}async getArgs({prompt:X,maxOutputTokens:Y,temperature:G,topP:Q,topK:J,frequencyPenalty:$,presencePenalty:Z,stopSequences:W,responseFormat:K,tools:H,toolChoice:U,seed:B,providerOptions:N}){let O=[],z={...await S9({provider:"openai",providerOptions:N,schema:sA6}),...await S9({provider:this.providerOptionsName,providerOptions:N,schema:sA6})};if(J!=null)O.push({type:"unsupported",feature:"topK"});if(H==null?void 0:H.length)O.push({type:"unsupported",feature:"tools"});if(U!=null)O.push({type:"unsupported",feature:"toolChoice"});if(K!=null&&K.type!=="text")O.push({type:"unsupported",feature:"responseFormat",details:"JSON response format is not supported."});let{prompt:w,stopSequences:E}=kA5({prompt:X}),P=[...E!=null?E:[],...W!=null?W:[]];return{args:{model:this.modelId,echo:z.echo,logit_bias:z.logitBias,logprobs:(z==null?void 0:z.logprobs)===!0?0:(z==null?void 0:z.logprobs)===!1?void 0:z==null?void 0:z.logprobs,suffix:z.suffix,user:z.user,max_tokens:Y,temperature:G,top_p:Q,frequency_penalty:$,presence_penalty:Z,seed:B,prompt:w,stop:P.length>0?P:void 0},warnings:O}}async doGenerate(X){var Y;let{args:G,warnings:Q}=await this.getArgs(X),{responseHeaders:J,value:$,rawValue:Z}=await n8({url:this.config.url({path:"/completions",modelId:this.modelId}),headers:S8(this.config.headers(),X.headers),body:G,failedResponseHandler:NU,successfulResponseHandler:u8(CA5),abortSignal:X.abortSignal,fetch:this.config.fetch}),W=$.choices[0],K={openai:{}};if(W.logprobs!=null)K.openai.logprobs=W.logprobs;return{content:[{type:"text",text:W.text}],usage:rA6($.usage),finishReason:{unified:oA6(W.finish_reason),raw:(Y=W.finish_reason)!=null?Y:void 0},request:{body:G},response:{...aA6($),headers:J,body:Z},providerMetadata:K,warnings:Q}}async doStream(X){let{args:Y,warnings:G}=await this.getArgs(X),Q={...Y,stream:!0,stream_options:{include_usage:!0}},{responseHeaders:J,value:$}=await n8({url:this.config.url({path:"/completions",modelId:this.modelId}),headers:S8(this.config.headers(),X.headers),body:Q,failedResponseHandler:NU,successfulResponseHandler:HH(vA5),abortSignal:X.abortSignal,fetch:this.config.fetch}),Z={unified:"other",raw:void 0},W={openai:{}},K=void 0,H=!0;return{stream:$.pipeThrough(new TransformStream({start(U){U.enqueue({type:"stream-start",warnings:G})},transform(U,B){if(X.includeRawChunks)B.enqueue({type:"raw",rawValue:U.rawValue});if(!U.success){Z={unified:"error",raw:void 0},B.enqueue({type:"error",error:U.error});return}let N=U.value;if("error"in N){Z={unified:"error",raw:void 0},B.enqueue({type:"error",error:N.error});return}if(H)H=!1,B.enqueue({type:"response-metadata",...aA6(N)}),B.enqueue({type:"text-start",id:"0"});if(N.usage!=null)K=N.usage;let O=N.choices[0];if((O==null?void 0:O.finish_reason)!=null)Z={unified:oA6(O.finish_reason),raw:O.finish_reason};if((O==null?void 0:O.logprobs)!=null)W.openai.logprobs=O.logprobs;if((O==null?void 0:O.text)!=null&&O.text.length>0)B.enqueue({type:"text-delta",id:"0",delta:O.text})},flush(U){if(!H)U.enqueue({type:"text-end",id:"0"});U.enqueue({type:"finish",finishReason:Z,providerMetadata:W,usage:rA6(K)})}})),request:{body:Q},response:{headers:J}}}},fA5,bA5,yA5=class{constructor(X,Y){this.specificationVersion="v3",this.maxEmbeddingsPerCall=2048,this.supportsParallelCalls=!0,this.modelId=X,this.config=Y}get provider(){return this.config.provider}async doEmbed({values:X,headers:Y,abortSignal:G,providerOptions:Q}){var J;if(X.length>this.maxEmbeddingsPerCall)throw new Or({provider:this.provider,modelId:this.modelId,maxEmbeddingsPerCall:this.maxEmbeddingsPerCall,values:X});let $=(J=await S9({provider:"openai",providerOptions:Q,schema:fA5}))!=null?J:{},{responseHeaders:Z,value:W,rawValue:K}=await n8({url:this.config.url({path:"/embeddings",modelId:this.modelId}),headers:S8(this.config.headers(),Y),body:{model:this.modelId,input:X,encoding_format:"float",dimensions:$.dimensions,user:$.user},failedResponseHandler:NU,successfulResponseHandler:u8(bA5),abortSignal:G,fetch:this.config.fetch});return{warnings:[],embeddings:W.data.map((H)=>H.embedding),usage:W.usage?{tokens:W.usage.prompt_tokens}:void 0,response:{headers:Z,body:K}}}},eA6,hA5,xA5,uA5=class{constructor(X,Y){this.modelId=X,this.config=Y,this.specificationVersion="v3"}get maxImagesPerCall(){var X;return(X=hA5[this.modelId])!=null?X:1}get provider(){return this.config.provider}async doGenerate({prompt:X,files:Y,mask:G,n:Q,size:J,aspectRatio:$,seed:Z,providerOptions:W,headers:K,abortSignal:H}){var U,B,N,O,z,w,E,P,A,V,M;let j=[];if($!=null)j.push({type:"unsupported",feature:"aspectRatio",details:"This model does not support aspect ratio. Use `size` instead."});if(Z!=null)j.push({type:"unsupported",feature:"seed"});let R=(N=(B=(U=this.config._internal)==null?void 0:U.currentDate)==null?void 0:B.call(U))!=null?N:new Date;if(Y!=null){let{value:v,responseHeaders:y}=await Wj1({url:this.config.url({path:"/images/edits",modelId:this.modelId}),headers:S8(this.config.headers(),K),formData:bE6({model:this.modelId,prompt:X,image:await Promise.all(Y.map((x)=>x.type==="file"?new Blob([x.data instanceof Uint8Array?new Blob([x.data],{type:x.mediaType}):new Blob([WG(x.data)],{type:x.mediaType})],{type:x.mediaType}):qP0(x.url))),mask:G!=null?await lA5(G):void 0,n:Q,size:J,...(O=W.openai)!=null?O:{}}),failedResponseHandler:NU,successfulResponseHandler:u8(eA6),abortSignal:H,fetch:this.config.fetch});return{images:v.data.map((x)=>x.b64_json),warnings:j,usage:v.usage!=null?{inputTokens:(z=v.usage.input_tokens)!=null?z:void 0,outputTokens:(w=v.usage.output_tokens)!=null?w:void 0,totalTokens:(E=v.usage.total_tokens)!=null?E:void 0}:void 0,response:{timestamp:R,modelId:this.modelId,headers:y},providerMetadata:{openai:{images:v.data.map((x,i)=>{var t,b,m,e,s,N1;return{...x.revised_prompt?{revisedPrompt:x.revised_prompt}:{},created:(t=v.created)!=null?t:void 0,size:(b=v.size)!=null?b:void 0,quality:(m=v.quality)!=null?m:void 0,background:(e=v.background)!=null?e:void 0,outputFormat:(s=v.output_format)!=null?s:void 0,...XT6((N1=v.usage)==null?void 0:N1.input_tokens_details,i,v.data.length)}})}}}}let{value:C,responseHeaders:_}=await n8({url:this.config.url({path:"/images/generations",modelId:this.modelId}),headers:S8(this.config.headers(),K),body:{model:this.modelId,prompt:X,n:Q,size:J,...(P=W.openai)!=null?P:{},...!gA5(this.modelId)?{response_format:"b64_json"}:{}},failedResponseHandler:NU,successfulResponseHandler:u8(eA6),abortSignal:H,fetch:this.config.fetch});return{images:C.data.map((v)=>v.b64_json),warnings:j,usage:C.usage!=null?{inputTokens:(A=C.usage.input_tokens)!=null?A:void 0,outputTokens:(V=C.usage.output_tokens)!=null?V:void 0,totalTokens:(M=C.usage.total_tokens)!=null?M:void 0}:void 0,response:{timestamp:R,modelId:this.modelId,headers:_},providerMetadata:{openai:{images:C.data.map((v,y)=>{var x,i,t,b,m,e;return{...v.revised_prompt?{revisedPrompt:v.revised_prompt}:{},created:(x=C.created)!=null?x:void 0,size:(i=C.size)!=null?i:void 0,quality:(t=C.quality)!=null?t:void 0,background:(b=C.background)!=null?b:void 0,outputFormat:(m=C.output_format)!=null?m:void 0,...XT6((e=C.usage)==null?void 0:e.input_tokens_details,y,C.data.length)}})}}}}},HT6,FT6,fX7,mA5,dA5,cA5,iA5,pA5,nA5,tA5=(X={})=>{return nA5(X)},rA5,aA5,oA5,sA5=(X)=>oA5(X),UT6,BT6,eA5,XT5,YT5,GT5,QT5,JT5,ZT5,$T5=(X={})=>{return ZT5(X)},NT6,OT6,WT5,zT6,HA0,KT5,HT5,FT5,UT5,FA0,UA0,BT5,NT5=(X={})=>BT5(X),OT5,zT5,DT5,wT5,LT5=(X={})=>wT5(X),ET5,PT5,qT5,AT5,BA0,TT5,IT5,jT5,VT5,MT5=(X)=>VT5(X),RT5,CT5,PG1,vT5,_T5,DT6=20,fT5,FY7,QT6,xT5=class{constructor(X,Y){this.specificationVersion="v3",this.supportedUrls={"image/*":[/^https?:\/\/.*$/],"application/pdf":[/^https?:\/\/.*$/]},this.modelId=X,this.config=Y}get provider(){return this.config.provider}async getArgs({maxOutputTokens:X,temperature:Y,stopSequences:G,topP:Q,topK:J,presencePenalty:$,frequencyPenalty:Z,seed:W,prompt:K,providerOptions:H,tools:U,toolChoice:B,responseFormat:N}){var O,z,w,E,P,A,V,M,j;let R=[],C=KT6(this.modelId);if(J!=null)R.push({type:"unsupported",feature:"topK"});if(W!=null)R.push({type:"unsupported",feature:"seed"});if($!=null)R.push({type:"unsupported",feature:"presencePenalty"});if(Z!=null)R.push({type:"unsupported",feature:"frequencyPenalty"});if(G!=null)R.push({type:"unsupported",feature:"stopSequences"});let _=this.config.provider.includes("azure")?"azure":"openai",v=await S9({provider:_,providerOptions:H,schema:QT6});if(v==null&&_!=="openai")v=await S9({provider:"openai",providerOptions:H,schema:QT6});let y=(O=v==null?void 0:v.forceReasoning)!=null?O:C.isReasoningModel;if((v==null?void 0:v.conversation)&&(v==null?void 0:v.previousResponseId))R.push({type:"unsupported",feature:"conversation",details:"conversation and previousResponseId cannot be used together"});let x=Zj1({tools:U,providerToolNames:{"openai.code_interpreter":"code_interpreter","openai.file_search":"file_search","openai.image_generation":"image_generation","openai.local_shell":"local_shell","openai.shell":"shell","openai.web_search":"web_search","openai.web_search_preview":"web_search_preview","openai.mcp":"mcp","openai.apply_patch":"apply_patch","openai.tool_search":"tool_search"},resolveProviderToolName:(W0)=>W0.id==="openai.custom"?W0.args.name:void 0}),i=new Set,{tools:t,toolChoice:b,toolWarnings:m}=await bT5({tools:U,toolChoice:B,toolNameMapping:x,customProviderToolNames:i}),{input:e,warnings:s}=await kT5({prompt:K,toolNameMapping:x,systemMessageMode:(z=v==null?void 0:v.systemMessageMode)!=null?z:y?"developer":C.systemMessageMode,providerOptionsName:_,fileIdPrefixes:this.config.fileIdPrefixes,store:(w=v==null?void 0:v.store)!=null?w:!0,hasConversation:(v==null?void 0:v.conversation)!=null,hasLocalShellTool:D1("openai.local_shell"),hasShellTool:D1("openai.shell"),hasApplyPatchTool:D1("openai.apply_patch"),customProviderToolNames:i.size>0?i:void 0});R.push(...s);let N1=(E=v==null?void 0:v.strictJsonSchema)!=null?E:!0,w1=v==null?void 0:v.include;function B1(W0){if(w1==null)w1=[W0];else if(!w1.includes(W0))w1=[...w1,W0]}function D1(W0){return(U==null?void 0:U.find((a1)=>a1.type==="provider"&&a1.id===W0))!=null}let k1=typeof(v==null?void 0:v.logprobs)==="number"?v==null?void 0:v.logprobs:(v==null?void 0:v.logprobs)===!0?DT6:void 0;if(k1)B1("message.output_text.logprobs");let o1=(P=U==null?void 0:U.find((W0)=>W0.type==="provider"&&(W0.id==="openai.web_search"||W0.id==="openai.web_search_preview")))==null?void 0:P.name;if(o1)B1("web_search_call.action.sources");if(D1("openai.code_interpreter"))B1("code_interpreter_call.outputs");let m1=v==null?void 0:v.store;if(m1===!1&&y)B1("reasoning.encrypted_content");let h1={model:this.modelId,input:e,temperature:Y,top_p:Q,max_output_tokens:X,...((N==null?void 0:N.type)==="json"||(v==null?void 0:v.textVerbosity))&&{text:{...(N==null?void 0:N.type)==="json"&&{format:N.schema!=null?{type:"json_schema",strict:N1,name:(A=N.name)!=null?A:"response",description:N.description,schema:N.schema}:{type:"json_object"}},...(v==null?void 0:v.textVerbosity)&&{verbosity:v.textVerbosity}}},conversation:v==null?void 0:v.conversation,max_tool_calls:v==null?void 0:v.maxToolCalls,metadata:v==null?void 0:v.metadata,parallel_tool_calls:v==null?void 0:v.parallelToolCalls,previous_response_id:v==null?void 0:v.previousResponseId,store:m1,user:v==null?void 0:v.user,instructions:v==null?void 0:v.instructions,service_tier:v==null?void 0:v.serviceTier,include:w1,prompt_cache_key:v==null?void 0:v.promptCacheKey,prompt_cache_retention:v==null?void 0:v.promptCacheRetention,safety_identifier:v==null?void 0:v.safetyIdentifier,top_logprobs:k1,truncation:v==null?void 0:v.truncation,...y&&((v==null?void 0:v.reasoningEffort)!=null||(v==null?void 0:v.reasoningSummary)!=null)&&{reasoning:{...(v==null?void 0:v.reasoningEffort)!=null&&{effort:v.reasoningEffort},...(v==null?void 0:v.reasoningSummary)!=null&&{summary:v.reasoningSummary}}}};if(y){if(!((v==null?void 0:v.reasoningEffort)==="none"&&C.supportsNonReasoningParameters)){if(h1.temperature!=null)h1.temperature=void 0,R.push({type:"unsupported",feature:"temperature",details:"temperature is not supported for reasoning models"});if(h1.top_p!=null)h1.top_p=void 0,R.push({type:"unsupported",feature:"topP",details:"topP is not supported for reasoning models"})}}else{if((v==null?void 0:v.reasoningEffort)!=null)R.push({type:"unsupported",feature:"reasoningEffort",details:"reasoningEffort is not supported for non-reasoning models"});if((v==null?void 0:v.reasoningSummary)!=null)R.push({type:"unsupported",feature:"reasoningSummary",details:"reasoningSummary is not supported for non-reasoning models"})}if((v==null?void 0:v.serviceTier)==="flex"&&!C.supportsFlexProcessing)R.push({type:"unsupported",feature:"serviceTier",details:"flex processing is only available for o3, o4-mini, and gpt-5 models"}),delete h1.service_tier;if((v==null?void 0:v.serviceTier)==="priority"&&!C.supportsPriorityProcessing)R.push({type:"unsupported",feature:"serviceTier",details:"priority processing is only available for supported models (gpt-4, gpt-5, gpt-5-mini, o3, o4-mini) and requires Enterprise access. gpt-5-nano is not supported"}),delete h1.service_tier;let Y1=(j=(M=(V=U==null?void 0:U.find((W0)=>W0.type==="provider"&&W0.id==="openai.shell"))==null?void 0:V.args)==null?void 0:M.environment)==null?void 0:j.type,u1=Y1==="containerAuto"||Y1==="containerReference";return{webSearchToolName:o1,args:{...h1,tools:t,tool_choice:b},warnings:[...R,...m],store:m1,toolNameMapping:x,providerOptionsName:_,isShellProviderExecuted:u1}}async doGenerate(X){var Y,G,Q,J,$,Z,W,K,H,U,B,N,O,z,w,E,P,A,V,M,j,R,C,_,v,y,x,i;let{args:t,warnings:b,webSearchToolName:m,toolNameMapping:e,providerOptionsName:s,isShellProviderExecuted:N1}=await this.getArgs(X),w1=this.config.url({path:"/responses",modelId:this.modelId}),B1=JT6(X.prompt),{responseHeaders:D1,value:k1,rawValue:o1}=await n8({url:w1,headers:S8(this.config.headers(),X.headers),body:t,failedResponseHandler:NU,successfulResponseHandler:u8(_T5),abortSignal:X.abortSignal,fetch:this.config.fetch});if(k1.error)throw new g8({message:k1.error.message,url:w1,requestBodyValues:t,statusCode:400,responseHeaders:D1,responseBody:o1,isRetryable:!1});let m1=[],h1=[],Y1=!1,u1=[];for(let P1 of k1.output)switch(P1.type){case"reasoning":{if(P1.summary.length===0)P1.summary.push({type:"summary_text",text:""});for(let E1 of P1.summary)m1.push({type:"reasoning",text:E1.text,providerMetadata:{[s]:{itemId:P1.id,reasoningEncryptedContent:(Y=P1.encrypted_content)!=null?Y:null}}});break}case"image_generation_call":{m1.push({type:"tool-call",toolCallId:P1.id,toolName:e.toCustomToolName("image_generation"),input:"{}",providerExecuted:!0}),m1.push({type:"tool-result",toolCallId:P1.id,toolName:e.toCustomToolName("image_generation"),result:{result:P1.result}});break}case"tool_search_call":{let E1=(G=P1.call_id)!=null?G:P1.id,U1=P1.execution==="server";if(U1)u1.push(E1);m1.push({type:"tool-call",toolCallId:E1,toolName:e.toCustomToolName("tool_search"),input:JSON.stringify({arguments:P1.arguments,call_id:P1.call_id}),...U1?{providerExecuted:!0}:{},providerMetadata:{[s]:{itemId:P1.id}}});break}case"tool_search_output":{let E1=(J=(Q=P1.call_id)!=null?Q:u1.shift())!=null?J:P1.id;m1.push({type:"tool-result",toolCallId:E1,toolName:e.toCustomToolName("tool_search"),result:{tools:P1.tools},providerMetadata:{[s]:{itemId:P1.id}}});break}case"local_shell_call":{m1.push({type:"tool-call",toolCallId:P1.call_id,toolName:e.toCustomToolName("local_shell"),input:JSON.stringify({action:P1.action}),providerMetadata:{[s]:{itemId:P1.id}}});break}case"shell_call":{m1.push({type:"tool-call",toolCallId:P1.call_id,toolName:e.toCustomToolName("shell"),input:JSON.stringify({action:{commands:P1.action.commands}}),...N1&&{providerExecuted:!0},providerMetadata:{[s]:{itemId:P1.id}}});break}case"shell_call_output":{m1.push({type:"tool-result",toolCallId:P1.call_id,toolName:e.toCustomToolName("shell"),result:{output:P1.output.map((E1)=>({stdout:E1.stdout,stderr:E1.stderr,outcome:E1.outcome.type==="exit"?{type:"exit",exitCode:E1.outcome.exit_code}:{type:"timeout"}}))}});break}case"message":{for(let E1 of P1.content){if(((Z=($=X.providerOptions)==null?void 0:$[s])==null?void 0:Z.logprobs)&&E1.logprobs)h1.push(E1.logprobs);let U1={itemId:P1.id,...P1.phase!=null&&{phase:P1.phase},...E1.annotations.length>0&&{annotations:E1.annotations}};m1.push({type:"text",text:E1.text,providerMetadata:{[s]:U1}});for(let $1 of E1.annotations)if($1.type==="url_citation")m1.push({type:"source",sourceType:"url",id:(H=(K=(W=this.config).generateId)==null?void 0:K.call(W))!=null?H:e4(),url:$1.url,title:$1.title});else if($1.type==="file_citation")m1.push({type:"source",sourceType:"document",id:(N=(B=(U=this.config).generateId)==null?void 0:B.call(U))!=null?N:e4(),mediaType:"text/plain",title:$1.filename,filename:$1.filename,providerMetadata:{[s]:{type:$1.type,fileId:$1.file_id,index:$1.index}}});else if($1.type==="container_file_citation")m1.push({type:"source",sourceType:"document",id:(w=(z=(O=this.config).generateId)==null?void 0:z.call(O))!=null?w:e4(),mediaType:"text/plain",title:$1.filename,filename:$1.filename,providerMetadata:{[s]:{type:$1.type,fileId:$1.file_id,containerId:$1.container_id}}});else if($1.type==="file_path")m1.push({type:"source",sourceType:"document",id:(A=(P=(E=this.config).generateId)==null?void 0:P.call(E))!=null?A:e4(),mediaType:"application/octet-stream",title:$1.file_id,filename:$1.file_id,providerMetadata:{[s]:{type:$1.type,fileId:$1.file_id,index:$1.index}}})}break}case"function_call":{Y1=!0,m1.push({type:"tool-call",toolCallId:P1.call_id,toolName:P1.name,input:P1.arguments,providerMetadata:{[s]:{itemId:P1.id}}});break}case"custom_tool_call":{Y1=!0;let E1=e.toCustomToolName(P1.name);m1.push({type:"tool-call",toolCallId:P1.call_id,toolName:E1,input:JSON.stringify(P1.input),providerMetadata:{[s]:{itemId:P1.id}}});break}case"web_search_call":{m1.push({type:"tool-call",toolCallId:P1.id,toolName:e.toCustomToolName(m!=null?m:"web_search"),input:JSON.stringify({}),providerExecuted:!0}),m1.push({type:"tool-result",toolCallId:P1.id,toolName:e.toCustomToolName(m!=null?m:"web_search"),result:$T6(P1.action)});break}case"mcp_call":{let E1=P1.approval_request_id!=null?(V=B1[P1.approval_request_id])!=null?V:P1.id:P1.id,U1=`mcp.${P1.name}`;m1.push({type:"tool-call",toolCallId:E1,toolName:U1,input:P1.arguments,providerExecuted:!0,dynamic:!0}),m1.push({type:"tool-result",toolCallId:E1,toolName:U1,result:{type:"call",serverLabel:P1.server_label,name:P1.name,arguments:P1.arguments,...P1.output!=null?{output:P1.output}:{},...P1.error!=null?{error:P1.error}:{}},providerMetadata:{[s]:{itemId:P1.id}}});break}case"mcp_list_tools":break;case"mcp_approval_request":{let E1=(M=P1.approval_request_id)!=null?M:P1.id,U1=(C=(R=(j=this.config).generateId)==null?void 0:R.call(j))!=null?C:e4(),$1=`mcp.${P1.name}`;m1.push({type:"tool-call",toolCallId:U1,toolName:$1,input:P1.arguments,providerExecuted:!0,dynamic:!0}),m1.push({type:"tool-approval-request",approvalId:E1,toolCallId:U1});break}case"computer_call":{m1.push({type:"tool-call",toolCallId:P1.id,toolName:e.toCustomToolName("computer_use"),input:"",providerExecuted:!0}),m1.push({type:"tool-result",toolCallId:P1.id,toolName:e.toCustomToolName("computer_use"),result:{type:"computer_use_tool_result",status:P1.status||"completed"}});break}case"file_search_call":{m1.push({type:"tool-call",toolCallId:P1.id,toolName:e.toCustomToolName("file_search"),input:"{}",providerExecuted:!0}),m1.push({type:"tool-result",toolCallId:P1.id,toolName:e.toCustomToolName("file_search"),result:{queries:P1.queries,results:(v=(_=P1.results)==null?void 0:_.map((E1)=>({attributes:E1.attributes,fileId:E1.file_id,filename:E1.filename,score:E1.score,text:E1.text})))!=null?v:null}});break}case"code_interpreter_call":{m1.push({type:"tool-call",toolCallId:P1.id,toolName:e.toCustomToolName("code_interpreter"),input:JSON.stringify({code:P1.code,containerId:P1.container_id}),providerExecuted:!0}),m1.push({type:"tool-result",toolCallId:P1.id,toolName:e.toCustomToolName("code_interpreter"),result:{outputs:P1.outputs}});break}case"apply_patch_call":{m1.push({type:"tool-call",toolCallId:P1.call_id,toolName:e.toCustomToolName("apply_patch"),input:JSON.stringify({callId:P1.call_id,operation:P1.operation}),providerMetadata:{[s]:{itemId:P1.id}}});break}}let W0={[s]:{responseId:k1.id,...h1.length>0?{logprobs:h1}:{},...typeof k1.service_tier==="string"?{serviceTier:k1.service_tier}:{}}},a1=k1.usage;return{content:m1,finishReason:{unified:KA0({finishReason:(y=k1.incomplete_details)==null?void 0:y.reason,hasFunctionCall:Y1}),raw:(i=(x=k1.incomplete_details)==null?void 0:x.reason)!=null?i:void 0},usage:YT6(a1),request:{body:t},response:{id:k1.id,timestamp:new Date(k1.created_at*1000),modelId:k1.model,headers:D1,body:o1},providerMetadata:W0,warnings:b}}async doStream(X){let{args:Y,warnings:G,webSearchToolName:Q,toolNameMapping:J,store:$,providerOptionsName:Z,isShellProviderExecuted:W}=await this.getArgs(X),{responseHeaders:K,value:H}=await n8({url:this.config.url({path:"/responses",modelId:this.modelId}),headers:S8(this.config.headers(),X.headers),body:{...Y,stream:!0},failedResponseHandler:NU,successfulResponseHandler:HH(vT5),abortSignal:X.abortSignal,fetch:this.config.fetch}),U=this,B=JT6(X.prompt),N=new Map,O={unified:"other",raw:void 0},z=void 0,w=[],E=null,P={},A=[],V,M=!1,j={},R,C=[];return{stream:H.pipeThrough(new TransformStream({start(_){_.enqueue({type:"stream-start",warnings:G})},transform(_,v){var y,x,i,t,b,m,e,s,N1,w1,B1,D1,k1,o1,m1,h1,Y1,u1,W0,a1,P1,E1,U1,$1,V1,T1,i1,A1,b1,e1,Z0,z4,g0,U0,N0,v0,j0,T6;if(X.includeRawChunks)v.enqueue({type:"raw",rawValue:_.rawValue});if(!_.success){O={unified:"error",raw:void 0},v.enqueue({type:"error",error:_.error});return}let M1=_.value;if(ZT6(M1)){if(M1.item.type==="function_call")P[M1.output_index]={toolName:M1.item.name,toolCallId:M1.item.call_id},v.enqueue({type:"tool-input-start",id:M1.item.call_id,toolName:M1.item.name});else if(M1.item.type==="custom_tool_call"){let X0=J.toCustomToolName(M1.item.name);P[M1.output_index]={toolName:X0,toolCallId:M1.item.call_id},v.enqueue({type:"tool-input-start",id:M1.item.call_id,toolName:X0})}else if(M1.item.type==="web_search_call")P[M1.output_index]={toolName:J.toCustomToolName(Q!=null?Q:"web_search"),toolCallId:M1.item.id},v.enqueue({type:"tool-input-start",id:M1.item.id,toolName:J.toCustomToolName(Q!=null?Q:"web_search"),providerExecuted:!0}),v.enqueue({type:"tool-input-end",id:M1.item.id}),v.enqueue({type:"tool-call",toolCallId:M1.item.id,toolName:J.toCustomToolName(Q!=null?Q:"web_search"),input:JSON.stringify({}),providerExecuted:!0});else if(M1.item.type==="computer_call")P[M1.output_index]={toolName:J.toCustomToolName("computer_use"),toolCallId:M1.item.id},v.enqueue({type:"tool-input-start",id:M1.item.id,toolName:J.toCustomToolName("computer_use"),providerExecuted:!0});else if(M1.item.type==="code_interpreter_call")P[M1.output_index]={toolName:J.toCustomToolName("code_interpreter"),toolCallId:M1.item.id,codeInterpreter:{containerId:M1.item.container_id}},v.enqueue({type:"tool-input-start",id:M1.item.id,toolName:J.toCustomToolName("code_interpreter"),providerExecuted:!0}),v.enqueue({type:"tool-input-delta",id:M1.item.id,delta:`{"containerId":"${M1.item.container_id}","code":"`});else if(M1.item.type==="file_search_call")v.enqueue({type:"tool-call",toolCallId:M1.item.id,toolName:J.toCustomToolName("file_search"),input:"{}",providerExecuted:!0});else if(M1.item.type==="image_generation_call")v.enqueue({type:"tool-call",toolCallId:M1.item.id,toolName:J.toCustomToolName("image_generation"),input:"{}",providerExecuted:!0});else if(M1.item.type==="tool_search_call"){let X0=M1.item.id,r0=J.toCustomToolName("tool_search"),b4=M1.item.execution==="server";if(P[M1.output_index]={toolName:r0,toolCallId:X0,toolSearchExecution:(y=M1.item.execution)!=null?y:"server"},b4)v.enqueue({type:"tool-input-start",id:X0,toolName:r0,providerExecuted:!0})}else if(M1.item.type==="tool_search_output");else if(M1.item.type==="mcp_call"||M1.item.type==="mcp_list_tools"||M1.item.type==="mcp_approval_request");else if(M1.item.type==="apply_patch_call"){let{call_id:X0,operation:r0}=M1.item;if(P[M1.output_index]={toolName:J.toCustomToolName("apply_patch"),toolCallId:X0,applyPatch:{hasDiff:r0.type==="delete_file",endEmitted:r0.type==="delete_file"}},v.enqueue({type:"tool-input-start",id:X0,toolName:J.toCustomToolName("apply_patch")}),r0.type==="delete_file"){let b4=JSON.stringify({callId:X0,operation:r0});v.enqueue({type:"tool-input-delta",id:X0,delta:b4}),v.enqueue({type:"tool-input-end",id:X0})}else v.enqueue({type:"tool-input-delta",id:X0,delta:`{"callId":"${YM(X0)}","operation":{"type":"${YM(r0.type)}","path":"${YM(r0.path)}","diff":"`})}else if(M1.item.type==="shell_call")P[M1.output_index]={toolName:J.toCustomToolName("shell"),toolCallId:M1.item.call_id};else if(M1.item.type==="shell_call_output");else if(M1.item.type==="message")A.splice(0,A.length),V=(x=M1.item.phase)!=null?x:void 0,v.enqueue({type:"text-start",id:M1.item.id,providerMetadata:{[Z]:{itemId:M1.item.id,...M1.item.phase!=null&&{phase:M1.item.phase}}}});else if(ZT6(M1)&&M1.item.type==="reasoning")j[M1.item.id]={encryptedContent:M1.item.encrypted_content,summaryParts:{0:"active"}},v.enqueue({type:"reasoning-start",id:`${M1.item.id}:0`,providerMetadata:{[Z]:{itemId:M1.item.id,reasoningEncryptedContent:(i=M1.item.encrypted_content)!=null?i:null}}})}else if(uT5(M1)){if(M1.item.type==="message"){let X0=(t=M1.item.phase)!=null?t:V;V=void 0,v.enqueue({type:"text-end",id:M1.item.id,providerMetadata:{[Z]:{itemId:M1.item.id,...X0!=null&&{phase:X0},...A.length>0&&{annotations:A}}}})}else if(M1.item.type==="function_call")P[M1.output_index]=void 0,M=!0,v.enqueue({type:"tool-input-end",id:M1.item.call_id}),v.enqueue({type:"tool-call",toolCallId:M1.item.call_id,toolName:M1.item.name,input:M1.item.arguments,providerMetadata:{[Z]:{itemId:M1.item.id}}});else if(M1.item.type==="custom_tool_call"){P[M1.output_index]=void 0,M=!0;let X0=J.toCustomToolName(M1.item.name);v.enqueue({type:"tool-input-end",id:M1.item.call_id}),v.enqueue({type:"tool-call",toolCallId:M1.item.call_id,toolName:X0,input:JSON.stringify(M1.item.input),providerMetadata:{[Z]:{itemId:M1.item.id}}})}else if(M1.item.type==="web_search_call")P[M1.output_index]=void 0,v.enqueue({type:"tool-result",toolCallId:M1.item.id,toolName:J.toCustomToolName(Q!=null?Q:"web_search"),result:$T6(M1.item.action)});else if(M1.item.type==="computer_call")P[M1.output_index]=void 0,v.enqueue({type:"tool-input-end",id:M1.item.id}),v.enqueue({type:"tool-call",toolCallId:M1.item.id,toolName:J.toCustomToolName("computer_use"),input:"",providerExecuted:!0}),v.enqueue({type:"tool-result",toolCallId:M1.item.id,toolName:J.toCustomToolName("computer_use"),result:{type:"computer_use_tool_result",status:M1.item.status||"completed"}});else if(M1.item.type==="file_search_call")P[M1.output_index]=void 0,v.enqueue({type:"tool-result",toolCallId:M1.item.id,toolName:J.toCustomToolName("file_search"),result:{queries:M1.item.queries,results:(m=(b=M1.item.results)==null?void 0:b.map((X0)=>({attributes:X0.attributes,fileId:X0.file_id,filename:X0.filename,score:X0.score,text:X0.text})))!=null?m:null}});else if(M1.item.type==="code_interpreter_call")P[M1.output_index]=void 0,v.enqueue({type:"tool-result",toolCallId:M1.item.id,toolName:J.toCustomToolName("code_interpreter"),result:{outputs:M1.item.outputs}});else if(M1.item.type==="image_generation_call")v.enqueue({type:"tool-result",toolCallId:M1.item.id,toolName:J.toCustomToolName("image_generation"),result:{result:M1.item.result}});else if(M1.item.type==="tool_search_call"){let X0=P[M1.output_index],r0=M1.item.execution==="server";if(X0!=null){let b4=r0?X0.toolCallId:(e=M1.item.call_id)!=null?e:M1.item.id;if(r0)C.push(b4);else v.enqueue({type:"tool-input-start",id:b4,toolName:X0.toolName});v.enqueue({type:"tool-input-end",id:b4}),v.enqueue({type:"tool-call",toolCallId:b4,toolName:X0.toolName,input:JSON.stringify({arguments:M1.item.arguments,call_id:r0?null:b4}),...r0?{providerExecuted:!0}:{},providerMetadata:{[Z]:{itemId:M1.item.id}}})}P[M1.output_index]=void 0}else if(M1.item.type==="tool_search_output"){let X0=(N1=(s=M1.item.call_id)!=null?s:C.shift())!=null?N1:M1.item.id;v.enqueue({type:"tool-result",toolCallId:X0,toolName:J.toCustomToolName("tool_search"),result:{tools:M1.item.tools},providerMetadata:{[Z]:{itemId:M1.item.id}}})}else if(M1.item.type==="mcp_call"){P[M1.output_index]=void 0;let X0=(w1=M1.item.approval_request_id)!=null?w1:void 0,r0=X0!=null?(D1=(B1=N.get(X0))!=null?B1:B[X0])!=null?D1:M1.item.id:M1.item.id,b4=`mcp.${M1.item.name}`;v.enqueue({type:"tool-call",toolCallId:r0,toolName:b4,input:M1.item.arguments,providerExecuted:!0,dynamic:!0}),v.enqueue({type:"tool-result",toolCallId:r0,toolName:b4,result:{type:"call",serverLabel:M1.item.server_label,name:M1.item.name,arguments:M1.item.arguments,...M1.item.output!=null?{output:M1.item.output}:{},...M1.item.error!=null?{error:M1.item.error}:{}},providerMetadata:{[Z]:{itemId:M1.item.id}}})}else if(M1.item.type==="mcp_list_tools")P[M1.output_index]=void 0;else if(M1.item.type==="apply_patch_call"){let X0=P[M1.output_index];if((X0==null?void 0:X0.applyPatch)&&!X0.applyPatch.endEmitted&&M1.item.operation.type!=="delete_file"){if(!X0.applyPatch.hasDiff)v.enqueue({type:"tool-input-delta",id:X0.toolCallId,delta:YM(M1.item.operation.diff)});v.enqueue({type:"tool-input-delta",id:X0.toolCallId,delta:'"}}'}),v.enqueue({type:"tool-input-end",id:X0.toolCallId}),X0.applyPatch.endEmitted=!0}if(X0&&M1.item.status==="completed")v.enqueue({type:"tool-call",toolCallId:X0.toolCallId,toolName:J.toCustomToolName("apply_patch"),input:JSON.stringify({callId:M1.item.call_id,operation:M1.item.operation}),providerMetadata:{[Z]:{itemId:M1.item.id}}});P[M1.output_index]=void 0}else if(M1.item.type==="mcp_approval_request"){P[M1.output_index]=void 0;let X0=(m1=(o1=(k1=U.config).generateId)==null?void 0:o1.call(k1))!=null?m1:e4(),r0=(h1=M1.item.approval_request_id)!=null?h1:M1.item.id;N.set(r0,X0);let b4=`mcp.${M1.item.name}`;v.enqueue({type:"tool-call",toolCallId:X0,toolName:b4,input:M1.item.arguments,providerExecuted:!0,dynamic:!0}),v.enqueue({type:"tool-approval-request",approvalId:r0,toolCallId:X0})}else if(M1.item.type==="local_shell_call")P[M1.output_index]=void 0,v.enqueue({type:"tool-call",toolCallId:M1.item.call_id,toolName:J.toCustomToolName("local_shell"),input:JSON.stringify({action:{type:"exec",command:M1.item.action.command,timeoutMs:M1.item.action.timeout_ms,user:M1.item.action.user,workingDirectory:M1.item.action.working_directory,env:M1.item.action.env}}),providerMetadata:{[Z]:{itemId:M1.item.id}}});else if(M1.item.type==="shell_call")P[M1.output_index]=void 0,v.enqueue({type:"tool-call",toolCallId:M1.item.call_id,toolName:J.toCustomToolName("shell"),input:JSON.stringify({action:{commands:M1.item.action.commands}}),...W&&{providerExecuted:!0},providerMetadata:{[Z]:{itemId:M1.item.id}}});else if(M1.item.type==="shell_call_output")v.enqueue({type:"tool-result",toolCallId:M1.item.call_id,toolName:J.toCustomToolName("shell"),result:{output:M1.item.output.map((X0)=>({stdout:X0.stdout,stderr:X0.stderr,outcome:X0.outcome.type==="exit"?{type:"exit",exitCode:X0.outcome.exit_code}:{type:"timeout"}}))}});else if(M1.item.type==="reasoning"){let X0=j[M1.item.id],r0=Object.entries(X0.summaryParts).filter(([b4,I])=>I==="active"||I==="can-conclude").map(([b4])=>b4);for(let b4 of r0)v.enqueue({type:"reasoning-end",id:`${M1.item.id}:${b4}`,providerMetadata:{[Z]:{itemId:M1.item.id,reasoningEncryptedContent:(Y1=M1.item.encrypted_content)!=null?Y1:null}}});delete j[M1.item.id]}}else if(cT5(M1)){let X0=P[M1.output_index];if(X0!=null)v.enqueue({type:"tool-input-delta",id:X0.toolCallId,delta:M1.delta})}else if(iT5(M1)){let X0=P[M1.output_index];if(X0!=null)v.enqueue({type:"tool-input-delta",id:X0.toolCallId,delta:M1.delta})}else if(rT5(M1)){let X0=P[M1.output_index];if(X0==null?void 0:X0.applyPatch)v.enqueue({type:"tool-input-delta",id:X0.toolCallId,delta:YM(M1.delta)}),X0.applyPatch.hasDiff=!0}else if(aT5(M1)){let X0=P[M1.output_index];if((X0==null?void 0:X0.applyPatch)&&!X0.applyPatch.endEmitted){if(!X0.applyPatch.hasDiff)v.enqueue({type:"tool-input-delta",id:X0.toolCallId,delta:YM(M1.diff)}),X0.applyPatch.hasDiff=!0;v.enqueue({type:"tool-input-delta",id:X0.toolCallId,delta:'"}}'}),v.enqueue({type:"tool-input-end",id:X0.toolCallId}),X0.applyPatch.endEmitted=!0}}else if(pT5(M1))v.enqueue({type:"tool-result",toolCallId:M1.item_id,toolName:J.toCustomToolName("image_generation"),result:{result:M1.partial_image_b64},preliminary:!0});else if(nT5(M1)){let X0=P[M1.output_index];if(X0!=null)v.enqueue({type:"tool-input-delta",id:X0.toolCallId,delta:YM(M1.delta)})}else if(tT5(M1)){let X0=P[M1.output_index];if(X0!=null)v.enqueue({type:"tool-input-delta",id:X0.toolCallId,delta:'"}'}),v.enqueue({type:"tool-input-end",id:X0.toolCallId}),v.enqueue({type:"tool-call",toolCallId:X0.toolCallId,toolName:J.toCustomToolName("code_interpreter"),input:JSON.stringify({code:M1.code,containerId:X0.codeInterpreter.containerId}),providerExecuted:!0})}else if(dT5(M1))E=M1.response.id,v.enqueue({type:"response-metadata",id:M1.response.id,timestamp:new Date(M1.response.created_at*1000),modelId:M1.response.model});else if(gT5(M1)){if(v.enqueue({type:"text-delta",id:M1.item_id,delta:M1.delta}),((W0=(u1=X.providerOptions)==null?void 0:u1[Z])==null?void 0:W0.logprobs)&&M1.logprobs)w.push(M1.logprobs)}else if(M1.type==="response.reasoning_summary_part.added"){if(M1.summary_index>0){let X0=j[M1.item_id];X0.summaryParts[M1.summary_index]="active";for(let r0 of Object.keys(X0.summaryParts))if(X0.summaryParts[r0]==="can-conclude")v.enqueue({type:"reasoning-end",id:`${M1.item_id}:${r0}`,providerMetadata:{[Z]:{itemId:M1.item_id}}}),X0.summaryParts[r0]="concluded";v.enqueue({type:"reasoning-start",id:`${M1.item_id}:${M1.summary_index}`,providerMetadata:{[Z]:{itemId:M1.item_id,reasoningEncryptedContent:(P1=(a1=j[M1.item_id])==null?void 0:a1.encryptedContent)!=null?P1:null}}})}}else if(M1.type==="response.reasoning_summary_text.delta")v.enqueue({type:"reasoning-delta",id:`${M1.item_id}:${M1.summary_index}`,delta:M1.delta,providerMetadata:{[Z]:{itemId:M1.item_id}}});else if(M1.type==="response.reasoning_summary_part.done")if($)v.enqueue({type:"reasoning-end",id:`${M1.item_id}:${M1.summary_index}`,providerMetadata:{[Z]:{itemId:M1.item_id}}}),j[M1.item_id].summaryParts[M1.summary_index]="concluded";else j[M1.item_id].summaryParts[M1.summary_index]="can-conclude";else if(lT5(M1)){if(O={unified:KA0({finishReason:(E1=M1.response.incomplete_details)==null?void 0:E1.reason,hasFunctionCall:M}),raw:($1=(U1=M1.response.incomplete_details)==null?void 0:U1.reason)!=null?$1:void 0},z=M1.response.usage,typeof M1.response.service_tier==="string")R=M1.response.service_tier}else if(mT5(M1)){let X0=(V1=M1.response.incomplete_details)==null?void 0:V1.reason;O={unified:X0?KA0({finishReason:X0,hasFunctionCall:M}):"error",raw:X0!=null?X0:"error"},z=(T1=M1.response.usage)!=null?T1:void 0}else if(oT5(M1)){if(A.push(M1.annotation),M1.annotation.type==="url_citation")v.enqueue({type:"source",sourceType:"url",id:(b1=(A1=(i1=U.config).generateId)==null?void 0:A1.call(i1))!=null?b1:e4(),url:M1.annotation.url,title:M1.annotation.title});else if(M1.annotation.type==="file_citation")v.enqueue({type:"source",sourceType:"document",id:(z4=(Z0=(e1=U.config).generateId)==null?void 0:Z0.call(e1))!=null?z4:e4(),mediaType:"text/plain",title:M1.annotation.filename,filename:M1.annotation.filename,providerMetadata:{[Z]:{type:M1.annotation.type,fileId:M1.annotation.file_id,index:M1.annotation.index}}});else if(M1.annotation.type==="container_file_citation")v.enqueue({type:"source",sourceType:"document",id:(N0=(U0=(g0=U.config).generateId)==null?void 0:U0.call(g0))!=null?N0:e4(),mediaType:"text/plain",title:M1.annotation.filename,filename:M1.annotation.filename,providerMetadata:{[Z]:{type:M1.annotation.type,fileId:M1.annotation.file_id,containerId:M1.annotation.container_id}}});else if(M1.annotation.type==="file_path")v.enqueue({type:"source",sourceType:"document",id:(T6=(j0=(v0=U.config).generateId)==null?void 0:j0.call(v0))!=null?T6:e4(),mediaType:"application/octet-stream",title:M1.annotation.file_id,filename:M1.annotation.file_id,providerMetadata:{[Z]:{type:M1.annotation.type,fileId:M1.annotation.file_id,index:M1.annotation.index}}})}else if(sT5(M1))v.enqueue({type:"error",error:M1})},flush(_){let v={[Z]:{responseId:E,...w.length>0?{logprobs:w}:{},...R!==void 0?{serviceTier:R}:{}}};_.enqueue({type:"finish",finishReason:O,usage:YT6(z),providerMetadata:v})}})),request:{body:Y},response:{headers:K}}}},eT5,XI5=class{constructor(X,Y){this.modelId=X,this.config=Y,this.specificationVersion="v3"}get provider(){return this.config.provider}async getArgs({text:X,voice:Y="alloy",outputFormat:G="mp3",speed:Q,instructions:J,language:$,providerOptions:Z}){let W=[],K=await S9({provider:"openai",providerOptions:Z,schema:eT5}),H={model:this.modelId,input:X,voice:Y,response_format:"mp3",speed:Q,instructions:J};if(G)if(["mp3","opus","aac","flac","wav","pcm"].includes(G))H.response_format=G;else W.push({type:"unsupported",feature:"outputFormat",details:`Unsupported output format: ${G}. Using mp3 instead.`});if(K){let U={};for(let B in U){let N=U[B];if(N!==void 0)H[B]=N}}if($)W.push({type:"unsupported",feature:"language",details:`OpenAI speech models do not support language selection. Language parameter "${$}" was ignored.`});return{requestBody:H,warnings:W}}async doGenerate(X){var Y,G,Q;let J=(Q=(G=(Y=this.config._internal)==null?void 0:Y.currentDate)==null?void 0:G.call(Y))!=null?Q:new Date,{requestBody:$,warnings:Z}=await this.getArgs(X),{value:W,responseHeaders:K,rawValue:H}=await n8({url:this.config.url({path:"/audio/speech",modelId:this.modelId}),headers:S8(this.config.headers(),X.headers),body:$,failedResponseHandler:NU,successfulResponseHandler:rE6(),abortSignal:X.abortSignal,fetch:this.config.fetch});return{audio:W,warnings:Z,request:{body:JSON.stringify($)},response:{timestamp:J,modelId:this.modelId,headers:K,body:H}}}},YI5,GI5,WT6,QI5=class{constructor(X,Y){this.modelId=X,this.config=Y,this.specificationVersion="v3"}get provider(){return this.config.provider}async getArgs({audio:X,mediaType:Y,providerOptions:G}){let Q=[],J=await S9({provider:"openai",providerOptions:G,schema:GI5}),$=new FormData,Z=X instanceof Uint8Array?new Blob([X]):new Blob([WG(X)]);$.append("model",this.modelId);let W=mE6(Y);if($.append("file",new File([Z],"audio",{type:Y}),`audio.${W}`),J){let K={include:J.include,language:J.language,prompt:J.prompt,response_format:["gpt-4o-transcribe","gpt-4o-mini-transcribe"].includes(this.modelId)?"json":"verbose_json",temperature:J.temperature,timestamp_granularities:J.timestampGranularities};for(let[H,U]of Object.entries(K))if(U!=null)if(Array.isArray(U))for(let B of U)$.append(`${H}[]`,String(B));else $.append(H,String(U))}return{formData:$,warnings:Q}}async doGenerate(X){var Y,G,Q,J,$,Z,W,K;let H=(Q=(G=(Y=this.config._internal)==null?void 0:Y.currentDate)==null?void 0:G.call(Y))!=null?Q:new Date,{formData:U,warnings:B}=await this.getArgs(X),{value:N,responseHeaders:O,rawValue:z}=await Wj1({url:this.config.url({path:"/audio/transcriptions",modelId:this.modelId}),headers:S8(this.config.headers(),X.headers),formData:U,failedResponseHandler:NU,successfulResponseHandler:u8(YI5),abortSignal:X.abortSignal,fetch:this.config.fetch}),w=N.language!=null&&N.language in WT6?WT6[N.language]:void 0;return{text:N.text,segments:(W=(Z=(J=N.segments)==null?void 0:J.map((E)=>({text:E.text,startSecond:E.start,endSecond:E.end})))!=null?Z:($=N.words)==null?void 0:$.map((E)=>({text:E.word,startSecond:E.start,endSecond:E.end})))!=null?W:[],language:w,durationInSeconds:(K=N.duration)!=null?K:void 0,warnings:B,response:{timestamp:H,modelId:this.modelId,headers:O,body:z}}}},JI5="3.0.53",qY7;var wT6=D(()=>{M0();g4();M0();d0();M0();g4();M0();M0();d0();M0();d0();g4();M0();g4();d0();M0();M0();d0();g4();M0();M0();d0();M0();d0();M0();M0();d0();M0();d0();M0();d0();M0();d0();M0();d0();M0();d0();M0();d0();M0();d0();M0();d0();M0();d0();M0();d0();M0();d0();g4();M0();g4();M0();d0();M0();d0();M0();d0();g4();M0();M0();M0();d0();M0();M0();d0();M0();d0();NA0=F.object({error:F.object({message:F.string(),type:F.string().nullish(),param:F.any().nullish(),code:F.union([F.string(),F.number()]).nullish()})}),NU=qY({errorSchema:NA0,errorToMessage:(X)=>X.error.message});jA5=Q0(()=>n1(F.object({id:F.string().nullish(),created:F.number().nullish(),model:F.string().nullish(),choices:F.array(F.object({message:F.object({role:F.literal("assistant").nullish(),content:F.string().nullish(),tool_calls:F.array(F.object({id:F.string().nullish(),type:F.literal("function"),function:F.object({name:F.string(),arguments:F.string()})})).nullish(),annotations:F.array(F.object({type:F.literal("url_citation"),url_citation:F.object({start_index:F.number(),end_index:F.number(),url:F.string(),title:F.string()})})).nullish()}),index:F.number(),logprobs:F.object({content:F.array(F.object({token:F.string(),logprob:F.number(),top_logprobs:F.array(F.object({token:F.string(),logprob:F.number()}))})).nullish()}).nullish(),finish_reason:F.string().nullish()})),usage:F.object({prompt_tokens:F.number().nullish(),completion_tokens:F.number().nullish(),total_tokens:F.number().nullish(),prompt_tokens_details:F.object({cached_tokens:F.number().nullish()}).nullish(),completion_tokens_details:F.object({reasoning_tokens:F.number().nullish(),accepted_prediction_tokens:F.number().nullish(),rejected_prediction_tokens:F.number().nullish()}).nullish()}).nullish()}))),VA5=Q0(()=>n1(F.union([F.object({id:F.string().nullish(),created:F.number().nullish(),model:F.string().nullish(),choices:F.array(F.object({delta:F.object({role:F.enum(["assistant"]).nullish(),content:F.string().nullish(),tool_calls:F.array(F.object({index:F.number(),id:F.string().nullish(),type:F.literal("function").nullish(),function:F.object({name:F.string().nullish(),arguments:F.string().nullish()})})).nullish(),annotations:F.array(F.object({type:F.literal("url_citation"),url_citation:F.object({start_index:F.number(),end_index:F.number(),url:F.string(),title:F.string()})})).nullish()}).nullish(),logprobs:F.object({content:F.array(F.object({token:F.string(),logprob:F.number(),top_logprobs:F.array(F.object({token:F.string(),logprob:F.number()}))})).nullish()}).nullish(),finish_reason:F.string().nullish(),index:F.number()})),usage:F.object({prompt_tokens:F.number().nullish(),completion_tokens:F.number().nullish(),total_tokens:F.number().nullish(),prompt_tokens_details:F.object({cached_tokens:F.number().nullish()}).nullish(),completion_tokens_details:F.object({reasoning_tokens:F.number().nullish(),accepted_prediction_tokens:F.number().nullish(),rejected_prediction_tokens:F.number().nullish()}).nullish()}).nullish()}),NA0]))),MA5=Q0(()=>n1(F.object({logitBias:F.record(F.coerce.number(),F.number()).optional(),logprobs:F.union([F.boolean(),F.number()]).optional(),parallelToolCalls:F.boolean().optional(),user:F.string().optional(),reasoningEffort:F.enum(["none","minimal","low","medium","high","xhigh"]).optional(),maxCompletionTokens:F.number().optional(),store:F.boolean().optional(),metadata:F.record(F.string().max(64),F.string().max(512)).optional(),prediction:F.record(F.string(),F.any()).optional(),serviceTier:F.enum(["auto","flex","priority","default"]).optional(),strictJsonSchema:F.boolean().optional(),textVerbosity:F.enum(["low","medium","high"]).optional(),promptCacheKey:F.string().optional(),promptCacheRetention:F.enum(["in_memory","24h"]).optional(),safetyIdentifier:F.string().optional(),systemMessageMode:F.enum(["system","developer","remove"]).optional(),forceReasoning:F.boolean().optional()})));CA5=Q0(()=>n1(F.object({id:F.string().nullish(),created:F.number().nullish(),model:F.string().nullish(),choices:F.array(F.object({text:F.string(),finish_reason:F.string(),logprobs:F.object({tokens:F.array(F.string()),token_logprobs:F.array(F.number()),top_logprobs:F.array(F.record(F.string(),F.number())).nullish()}).nullish()})),usage:F.object({prompt_tokens:F.number(),completion_tokens:F.number(),total_tokens:F.number()}).nullish()}))),vA5=Q0(()=>n1(F.union([F.object({id:F.string().nullish(),created:F.number().nullish(),model:F.string().nullish(),choices:F.array(F.object({text:F.string(),finish_reason:F.string().nullish(),index:F.number(),logprobs:F.object({tokens:F.array(F.string()),token_logprobs:F.array(F.number()),top_logprobs:F.array(F.record(F.string(),F.number())).nullish()}).nullish()})),usage:F.object({prompt_tokens:F.number(),completion_tokens:F.number(),total_tokens:F.number()}).nullish()}),NA0]))),sA6=Q0(()=>n1(F.object({echo:F.boolean().optional(),logitBias:F.record(F.string(),F.number()).optional(),suffix:F.string().optional(),user:F.string().optional(),logprobs:F.union([F.boolean(),F.number()]).optional()}))),fA5=Q0(()=>n1(F.object({dimensions:F.number().optional(),user:F.string().optional()}))),bA5=Q0(()=>n1(F.object({data:F.array(F.object({embedding:F.array(F.number())})),usage:F.object({prompt_tokens:F.number()}).nullish()}))),eA6=Q0(()=>n1(F.object({created:F.number().nullish(),data:F.array(F.object({b64_json:F.string(),revised_prompt:F.string().nullish()})),background:F.string().nullish(),output_format:F.string().nullish(),size:F.string().nullish(),quality:F.string().nullish(),usage:F.object({input_tokens:F.number().nullish(),output_tokens:F.number().nullish(),total_tokens:F.number().nullish(),input_tokens_details:F.object({image_tokens:F.number().nullish(),text_tokens:F.number().nullish()}).nullish()}).nullish()}))),hA5={"dall-e-3":1,"dall-e-2":10,"gpt-image-1":10,"gpt-image-1-mini":10,"gpt-image-1.5":10,"chatgpt-image-latest":10},xA5=["chatgpt-image-","gpt-image-1-mini","gpt-image-1.5","gpt-image-1"];HT6=Q0(()=>n1(F.object({callId:F.string(),operation:F.discriminatedUnion("type",[F.object({type:F.literal("create_file"),path:F.string(),diff:F.string()}),F.object({type:F.literal("delete_file"),path:F.string()}),F.object({type:F.literal("update_file"),path:F.string(),diff:F.string()})])}))),FT6=Q0(()=>n1(F.object({status:F.enum(["completed","failed"]),output:F.string().optional()}))),fX7=Q0(()=>n1(F.object({}))),mA5=O8({id:"openai.apply_patch",inputSchema:HT6,outputSchema:FT6}),dA5=mA5,cA5=Q0(()=>n1(F.object({code:F.string().nullish(),containerId:F.string()}))),iA5=Q0(()=>n1(F.object({outputs:F.array(F.discriminatedUnion("type",[F.object({type:F.literal("logs"),logs:F.string()}),F.object({type:F.literal("image"),url:F.string()})])).nullish()}))),pA5=Q0(()=>n1(F.object({container:F.union([F.string(),F.object({fileIds:F.array(F.string()).optional()})]).optional()}))),nA5=O8({id:"openai.code_interpreter",inputSchema:cA5,outputSchema:iA5}),rA5=Q0(()=>n1(F.object({name:F.string(),description:F.string().optional(),format:F.union([F.object({type:F.literal("grammar"),syntax:F.enum(["regex","lark"]),definition:F.string()}),F.object({type:F.literal("text")})]).optional()}))),aA5=Q0(()=>n1(F.string())),oA5=l9({id:"openai.custom",inputSchema:aA5}),UT6=F.object({key:F.string(),type:F.enum(["eq","ne","gt","gte","lt","lte","in","nin"]),value:F.union([F.string(),F.number(),F.boolean(),F.array(F.string())])}),BT6=F.object({type:F.enum(["and","or"]),filters:F.array(F.union([UT6,F.lazy(()=>BT6)]))}),eA5=Q0(()=>n1(F.object({vectorStoreIds:F.array(F.string()),maxNumResults:F.number().optional(),ranking:F.object({ranker:F.string().optional(),scoreThreshold:F.number().optional()}).optional(),filters:F.union([UT6,BT6]).optional()}))),XT5=Q0(()=>n1(F.object({queries:F.array(F.string()),results:F.array(F.object({attributes:F.record(F.string(),F.unknown()),fileId:F.string(),filename:F.string(),score:F.number(),text:F.string()})).nullable()}))),YT5=O8({id:"openai.file_search",inputSchema:F.object({}),outputSchema:XT5}),GT5=Q0(()=>n1(F.object({background:F.enum(["auto","opaque","transparent"]).optional(),inputFidelity:F.enum(["low","high"]).optional(),inputImageMask:F.object({fileId:F.string().optional(),imageUrl:F.string().optional()}).optional(),model:F.string().optional(),moderation:F.enum(["auto"]).optional(),outputCompression:F.number().int().min(0).max(100).optional(),outputFormat:F.enum(["png","jpeg","webp"]).optional(),partialImages:F.number().int().min(0).max(3).optional(),quality:F.enum(["auto","low","medium","high"]).optional(),size:F.enum(["1024x1024","1024x1536","1536x1024","auto"]).optional()}).strict())),QT5=Q0(()=>n1(F.object({}))),JT5=Q0(()=>n1(F.object({result:F.string()}))),ZT5=O8({id:"openai.image_generation",inputSchema:QT5,outputSchema:JT5}),NT6=Q0(()=>n1(F.object({action:F.object({type:F.literal("exec"),command:F.array(F.string()),timeoutMs:F.number().optional(),user:F.string().optional(),workingDirectory:F.string().optional(),env:F.record(F.string(),F.string()).optional()})}))),OT6=Q0(()=>n1(F.object({output:F.string()}))),WT5=O8({id:"openai.local_shell",inputSchema:NT6,outputSchema:OT6}),zT6=Q0(()=>n1(F.object({action:F.object({commands:F.array(F.string()),timeoutMs:F.number().optional(),maxOutputLength:F.number().optional()})}))),HA0=Q0(()=>n1(F.object({output:F.array(F.object({stdout:F.string(),stderr:F.string(),outcome:F.discriminatedUnion("type",[F.object({type:F.literal("timeout")}),F.object({type:F.literal("exit"),exitCode:F.number()})])}))}))),KT5=F.array(F.discriminatedUnion("type",[F.object({type:F.literal("skillReference"),skillId:F.string(),version:F.string().optional()}),F.object({type:F.literal("inline"),name:F.string(),description:F.string(),source:F.object({type:F.literal("base64"),mediaType:F.literal("application/zip"),data:F.string()})})])).optional(),HT5=Q0(()=>n1(F.object({environment:F.union([F.object({type:F.literal("containerAuto"),fileIds:F.array(F.string()).optional(),memoryLimit:F.enum(["1g","4g","16g","64g"]).optional(),networkPolicy:F.discriminatedUnion("type",[F.object({type:F.literal("disabled")}),F.object({type:F.literal("allowlist"),allowedDomains:F.array(F.string()),domainSecrets:F.array(F.object({domain:F.string(),name:F.string(),value:F.string()})).optional()})]).optional(),skills:KT5}),F.object({type:F.literal("containerReference"),containerId:F.string()}),F.object({type:F.literal("local").optional(),skills:F.array(F.object({name:F.string(),description:F.string(),path:F.string()})).optional()})]).optional()}))),FT5=O8({id:"openai.shell",inputSchema:zT6,outputSchema:HA0}),UT5=Q0(()=>n1(F.object({execution:F.enum(["server","client"]).optional(),description:F.string().optional(),parameters:F.record(F.string(),F.unknown()).optional()}))),FA0=Q0(()=>n1(F.object({arguments:F.unknown().optional(),call_id:F.string().nullish()}))),UA0=Q0(()=>n1(F.object({tools:F.array(F.record(F.string(),F.unknown()))}))),BT5=O8({id:"openai.tool_search",inputSchema:FA0,outputSchema:UA0}),OT5=Q0(()=>n1(F.object({externalWebAccess:F.boolean().optional(),filters:F.object({allowedDomains:F.array(F.string()).optional()}).optional(),searchContextSize:F.enum(["low","medium","high"]).optional(),userLocation:F.object({type:F.literal("approximate"),country:F.string().optional(),city:F.string().optional(),region:F.string().optional(),timezone:F.string().optional()}).optional()}))),zT5=Q0(()=>n1(F.object({}))),DT5=Q0(()=>n1(F.object({action:F.discriminatedUnion("type",[F.object({type:F.literal("search"),query:F.string().optional()}),F.object({type:F.literal("openPage"),url:F.string().nullish()}),F.object({type:F.literal("findInPage"),url:F.string().nullish(),pattern:F.string().nullish()})]).optional(),sources:F.array(F.discriminatedUnion("type",[F.object({type:F.literal("url"),url:F.string()}),F.object({type:F.literal("api"),name:F.string()})])).optional()}))),wT5=O8({id:"openai.web_search",inputSchema:zT5,outputSchema:DT5}),ET5=Q0(()=>n1(F.object({searchContextSize:F.enum(["low","medium","high"]).optional(),userLocation:F.object({type:F.literal("approximate"),country:F.string().optional(),city:F.string().optional(),region:F.string().optional(),timezone:F.string().optional()}).optional()}))),PT5=Q0(()=>n1(F.object({}))),qT5=Q0(()=>n1(F.object({action:F.discriminatedUnion("type",[F.object({type:F.literal("search"),query:F.string().optional()}),F.object({type:F.literal("openPage"),url:F.string().nullish()}),F.object({type:F.literal("findInPage"),url:F.string().nullish(),pattern:F.string().nullish()})]).optional()}))),AT5=O8({id:"openai.web_search_preview",inputSchema:PT5,outputSchema:qT5}),BA0=F.lazy(()=>F.union([F.string(),F.number(),F.boolean(),F.null(),F.array(BA0),F.record(F.string(),BA0)])),TT5=Q0(()=>n1(F.object({serverLabel:F.string(),allowedTools:F.union([F.array(F.string()),F.object({readOnly:F.boolean().optional(),toolNames:F.array(F.string()).optional()})]).optional(),authorization:F.string().optional(),connectorId:F.string().optional(),headers:F.record(F.string(),F.string()).optional(),requireApproval:F.union([F.enum(["always","never"]),F.object({never:F.object({toolNames:F.array(F.string()).optional()}).optional()})]).optional(),serverDescription:F.string().optional(),serverUrl:F.string().optional()}).refine((X)=>X.serverUrl!=null||X.connectorId!=null,"One of serverUrl or connectorId must be provided."))),IT5=Q0(()=>n1(F.object({}))),jT5=Q0(()=>n1(F.object({type:F.literal("call"),serverLabel:F.string(),name:F.string(),arguments:F.string(),output:F.string().nullish(),error:F.union([F.string(),BA0]).optional()}))),VT5=O8({id:"openai.mcp",inputSchema:IT5,outputSchema:jT5}),RT5={applyPatch:dA5,customTool:sA5,codeInterpreter:tA5,fileSearch:YT5,imageGeneration:$T5,localShell:WT5,shell:FT5,webSearchPreview:AT5,webSearch:LT5,mcp:MT5,toolSearch:NT5};CT5=F.object({itemId:F.string().nullish(),reasoningEncryptedContent:F.string().nullish()});PG1=F.lazy(()=>F.union([F.string(),F.number(),F.boolean(),F.null(),F.array(PG1),F.record(F.string(),PG1.optional())])),vT5=Q0(()=>n1(F.union([F.object({type:F.literal("response.output_text.delta"),item_id:F.string(),delta:F.string(),logprobs:F.array(F.object({token:F.string(),logprob:F.number(),top_logprobs:F.array(F.object({token:F.string(),logprob:F.number()}))})).nullish()}),F.object({type:F.enum(["response.completed","response.incomplete"]),response:F.object({incomplete_details:F.object({reason:F.string()}).nullish(),usage:F.object({input_tokens:F.number(),input_tokens_details:F.object({cached_tokens:F.number().nullish()}).nullish(),output_tokens:F.number(),output_tokens_details:F.object({reasoning_tokens:F.number().nullish()}).nullish()}),service_tier:F.string().nullish()})}),F.object({type:F.literal("response.failed"),response:F.object({error:F.object({code:F.string().nullish(),message:F.string()}).nullish(),incomplete_details:F.object({reason:F.string()}).nullish(),usage:F.object({input_tokens:F.number(),input_tokens_details:F.object({cached_tokens:F.number().nullish()}).nullish(),output_tokens:F.number(),output_tokens_details:F.object({reasoning_tokens:F.number().nullish()}).nullish()}).nullish(),service_tier:F.string().nullish()})}),F.object({type:F.literal("response.created"),response:F.object({id:F.string(),created_at:F.number(),model:F.string(),service_tier:F.string().nullish()})}),F.object({type:F.literal("response.output_item.added"),output_index:F.number(),item:F.discriminatedUnion("type",[F.object({type:F.literal("message"),id:F.string(),phase:F.enum(["commentary","final_answer"]).nullish()}),F.object({type:F.literal("reasoning"),id:F.string(),encrypted_content:F.string().nullish()}),F.object({type:F.literal("function_call"),id:F.string(),call_id:F.string(),name:F.string(),arguments:F.string()}),F.object({type:F.literal("web_search_call"),id:F.string(),status:F.string()}),F.object({type:F.literal("computer_call"),id:F.string(),status:F.string()}),F.object({type:F.literal("file_search_call"),id:F.string()}),F.object({type:F.literal("image_generation_call"),id:F.string()}),F.object({type:F.literal("code_interpreter_call"),id:F.string(),container_id:F.string(),code:F.string().nullable(),outputs:F.array(F.discriminatedUnion("type",[F.object({type:F.literal("logs"),logs:F.string()}),F.object({type:F.literal("image"),url:F.string()})])).nullable(),status:F.string()}),F.object({type:F.literal("mcp_call"),id:F.string(),status:F.string(),approval_request_id:F.string().nullish()}),F.object({type:F.literal("mcp_list_tools"),id:F.string()}),F.object({type:F.literal("mcp_approval_request"),id:F.string()}),F.object({type:F.literal("apply_patch_call"),id:F.string(),call_id:F.string(),status:F.enum(["in_progress","completed"]),operation:F.discriminatedUnion("type",[F.object({type:F.literal("create_file"),path:F.string(),diff:F.string()}),F.object({type:F.literal("delete_file"),path:F.string()}),F.object({type:F.literal("update_file"),path:F.string(),diff:F.string()})])}),F.object({type:F.literal("custom_tool_call"),id:F.string(),call_id:F.string(),name:F.string(),input:F.string()}),F.object({type:F.literal("shell_call"),id:F.string(),call_id:F.string(),status:F.enum(["in_progress","completed","incomplete"]),action:F.object({commands:F.array(F.string())})}),F.object({type:F.literal("shell_call_output"),id:F.string(),call_id:F.string(),status:F.enum(["in_progress","completed","incomplete"]),output:F.array(F.object({stdout:F.string(),stderr:F.string(),outcome:F.discriminatedUnion("type",[F.object({type:F.literal("timeout")}),F.object({type:F.literal("exit"),exit_code:F.number()})])}))}),F.object({type:F.literal("tool_search_call"),id:F.string(),execution:F.enum(["server","client"]),call_id:F.string().nullable(),status:F.enum(["in_progress","completed","incomplete"]),arguments:F.unknown()}),F.object({type:F.literal("tool_search_output"),id:F.string(),execution:F.enum(["server","client"]),call_id:F.string().nullable(),status:F.enum(["in_progress","completed","incomplete"]),tools:F.array(F.record(F.string(),PG1.optional()))})])}),F.object({type:F.literal("response.output_item.done"),output_index:F.number(),item:F.discriminatedUnion("type",[F.object({type:F.literal("message"),id:F.string(),phase:F.enum(["commentary","final_answer"]).nullish()}),F.object({type:F.literal("reasoning"),id:F.string(),encrypted_content:F.string().nullish()}),F.object({type:F.literal("function_call"),id:F.string(),call_id:F.string(),name:F.string(),arguments:F.string(),status:F.literal("completed")}),F.object({type:F.literal("custom_tool_call"),id:F.string(),call_id:F.string(),name:F.string(),input:F.string(),status:F.literal("completed")}),F.object({type:F.literal("code_interpreter_call"),id:F.string(),code:F.string().nullable(),container_id:F.string(),outputs:F.array(F.discriminatedUnion("type",[F.object({type:F.literal("logs"),logs:F.string()}),F.object({type:F.literal("image"),url:F.string()})])).nullable()}),F.object({type:F.literal("image_generation_call"),id:F.string(),result:F.string()}),F.object({type:F.literal("web_search_call"),id:F.string(),status:F.string(),action:F.discriminatedUnion("type",[F.object({type:F.literal("search"),query:F.string().nullish(),sources:F.array(F.discriminatedUnion("type",[F.object({type:F.literal("url"),url:F.string()}),F.object({type:F.literal("api"),name:F.string()})])).nullish()}),F.object({type:F.literal("open_page"),url:F.string().nullish()}),F.object({type:F.literal("find_in_page"),url:F.string().nullish(),pattern:F.string().nullish()})]).nullish()}),F.object({type:F.literal("file_search_call"),id:F.string(),queries:F.array(F.string()),results:F.array(F.object({attributes:F.record(F.string(),F.union([F.string(),F.number(),F.boolean()])),file_id:F.string(),filename:F.string(),score:F.number(),text:F.string()})).nullish()}),F.object({type:F.literal("local_shell_call"),id:F.string(),call_id:F.string(),action:F.object({type:F.literal("exec"),command:F.array(F.string()),timeout_ms:F.number().optional(),user:F.string().optional(),working_directory:F.string().optional(),env:F.record(F.string(),F.string()).optional()})}),F.object({type:F.literal("computer_call"),id:F.string(),status:F.literal("completed")}),F.object({type:F.literal("mcp_call"),id:F.string(),status:F.string(),arguments:F.string(),name:F.string(),server_label:F.string(),output:F.string().nullish(),error:F.union([F.string(),F.object({type:F.string().optional(),code:F.union([F.number(),F.string()]).optional(),message:F.string().optional()}).loose()]).nullish(),approval_request_id:F.string().nullish()}),F.object({type:F.literal("mcp_list_tools"),id:F.string(),server_label:F.string(),tools:F.array(F.object({name:F.string(),description:F.string().optional(),input_schema:F.any(),annotations:F.record(F.string(),F.unknown()).optional()})),error:F.union([F.string(),F.object({type:F.string().optional(),code:F.union([F.number(),F.string()]).optional(),message:F.string().optional()}).loose()]).optional()}),F.object({type:F.literal("mcp_approval_request"),id:F.string(),server_label:F.string(),name:F.string(),arguments:F.string(),approval_request_id:F.string().optional()}),F.object({type:F.literal("apply_patch_call"),id:F.string(),call_id:F.string(),status:F.enum(["in_progress","completed"]),operation:F.discriminatedUnion("type",[F.object({type:F.literal("create_file"),path:F.string(),diff:F.string()}),F.object({type:F.literal("delete_file"),path:F.string()}),F.object({type:F.literal("update_file"),path:F.string(),diff:F.string()})])}),F.object({type:F.literal("shell_call"),id:F.string(),call_id:F.string(),status:F.enum(["in_progress","completed","incomplete"]),action:F.object({commands:F.array(F.string())})}),F.object({type:F.literal("shell_call_output"),id:F.string(),call_id:F.string(),status:F.enum(["in_progress","completed","incomplete"]),output:F.array(F.object({stdout:F.string(),stderr:F.string(),outcome:F.discriminatedUnion("type",[F.object({type:F.literal("timeout")}),F.object({type:F.literal("exit"),exit_code:F.number()})])}))}),F.object({type:F.literal("tool_search_call"),id:F.string(),execution:F.enum(["server","client"]),call_id:F.string().nullable(),status:F.enum(["in_progress","completed","incomplete"]),arguments:F.unknown()}),F.object({type:F.literal("tool_search_output"),id:F.string(),execution:F.enum(["server","client"]),call_id:F.string().nullable(),status:F.enum(["in_progress","completed","incomplete"]),tools:F.array(F.record(F.string(),PG1.optional()))})])}),F.object({type:F.literal("response.function_call_arguments.delta"),item_id:F.string(),output_index:F.number(),delta:F.string()}),F.object({type:F.literal("response.custom_tool_call_input.delta"),item_id:F.string(),output_index:F.number(),delta:F.string()}),F.object({type:F.literal("response.image_generation_call.partial_image"),item_id:F.string(),output_index:F.number(),partial_image_b64:F.string()}),F.object({type:F.literal("response.code_interpreter_call_code.delta"),item_id:F.string(),output_index:F.number(),delta:F.string()}),F.object({type:F.literal("response.code_interpreter_call_code.done"),item_id:F.string(),output_index:F.number(),code:F.string()}),F.object({type:F.literal("response.output_text.annotation.added"),annotation:F.discriminatedUnion("type",[F.object({type:F.literal("url_citation"),start_index:F.number(),end_index:F.number(),url:F.string(),title:F.string()}),F.object({type:F.literal("file_citation"),file_id:F.string(),filename:F.string(),index:F.number()}),F.object({type:F.literal("container_file_citation"),container_id:F.string(),file_id:F.string(),filename:F.string(),start_index:F.number(),end_index:F.number()}),F.object({type:F.literal("file_path"),file_id:F.string(),index:F.number()})])}),F.object({type:F.literal("response.reasoning_summary_part.added"),item_id:F.string(),summary_index:F.number()}),F.object({type:F.literal("response.reasoning_summary_text.delta"),item_id:F.string(),summary_index:F.number(),delta:F.string()}),F.object({type:F.literal("response.reasoning_summary_part.done"),item_id:F.string(),summary_index:F.number()}),F.object({type:F.literal("response.apply_patch_call_operation_diff.delta"),item_id:F.string(),output_index:F.number(),delta:F.string(),obfuscation:F.string().nullish()}),F.object({type:F.literal("response.apply_patch_call_operation_diff.done"),item_id:F.string(),output_index:F.number(),diff:F.string()}),F.object({type:F.literal("error"),sequence_number:F.number(),error:F.object({type:F.string(),code:F.string(),message:F.string(),param:F.string().nullish()})}),F.object({type:F.string()}).loose().transform((X)=>({type:"unknown_chunk",message:X.type}))]))),_T5=Q0(()=>n1(F.object({id:F.string().optional(),created_at:F.number().optional(),error:F.object({message:F.string(),type:F.string(),param:F.string().nullish(),code:F.string()}).nullish(),model:F.string().optional(),output:F.array(F.discriminatedUnion("type",[F.object({type:F.literal("message"),role:F.literal("assistant"),id:F.string(),phase:F.enum(["commentary","final_answer"]).nullish(),content:F.array(F.object({type:F.literal("output_text"),text:F.string(),logprobs:F.array(F.object({token:F.string(),logprob:F.number(),top_logprobs:F.array(F.object({token:F.string(),logprob:F.number()}))})).nullish(),annotations:F.array(F.discriminatedUnion("type",[F.object({type:F.literal("url_citation"),start_index:F.number(),end_index:F.number(),url:F.string(),title:F.string()}),F.object({type:F.literal("file_citation"),file_id:F.string(),filename:F.string(),index:F.number()}),F.object({type:F.literal("container_file_citation"),container_id:F.string(),file_id:F.string(),filename:F.string(),start_index:F.number(),end_index:F.number()}),F.object({type:F.literal("file_path"),file_id:F.string(),index:F.number()})]))}))}),F.object({type:F.literal("web_search_call"),id:F.string(),status:F.string(),action:F.discriminatedUnion("type",[F.object({type:F.literal("search"),query:F.string().nullish(),sources:F.array(F.discriminatedUnion("type",[F.object({type:F.literal("url"),url:F.string()}),F.object({type:F.literal("api"),name:F.string()})])).nullish()}),F.object({type:F.literal("open_page"),url:F.string().nullish()}),F.object({type:F.literal("find_in_page"),url:F.string().nullish(),pattern:F.string().nullish()})]).nullish()}),F.object({type:F.literal("file_search_call"),id:F.string(),queries:F.array(F.string()),results:F.array(F.object({attributes:F.record(F.string(),F.union([F.string(),F.number(),F.boolean()])),file_id:F.string(),filename:F.string(),score:F.number(),text:F.string()})).nullish()}),F.object({type:F.literal("code_interpreter_call"),id:F.string(),code:F.string().nullable(),container_id:F.string(),outputs:F.array(F.discriminatedUnion("type",[F.object({type:F.literal("logs"),logs:F.string()}),F.object({type:F.literal("image"),url:F.string()})])).nullable()}),F.object({type:F.literal("image_generation_call"),id:F.string(),result:F.string()}),F.object({type:F.literal("local_shell_call"),id:F.string(),call_id:F.string(),action:F.object({type:F.literal("exec"),command:F.array(F.string()),timeout_ms:F.number().optional(),user:F.string().optional(),working_directory:F.string().optional(),env:F.record(F.string(),F.string()).optional()})}),F.object({type:F.literal("function_call"),call_id:F.string(),name:F.string(),arguments:F.string(),id:F.string()}),F.object({type:F.literal("custom_tool_call"),call_id:F.string(),name:F.string(),input:F.string(),id:F.string()}),F.object({type:F.literal("computer_call"),id:F.string(),status:F.string().optional()}),F.object({type:F.literal("reasoning"),id:F.string(),encrypted_content:F.string().nullish(),summary:F.array(F.object({type:F.literal("summary_text"),text:F.string()}))}),F.object({type:F.literal("mcp_call"),id:F.string(),status:F.string(),arguments:F.string(),name:F.string(),server_label:F.string(),output:F.string().nullish(),error:F.union([F.string(),F.object({type:F.string().optional(),code:F.union([F.number(),F.string()]).optional(),message:F.string().optional()}).loose()]).nullish(),approval_request_id:F.string().nullish()}),F.object({type:F.literal("mcp_list_tools"),id:F.string(),server_label:F.string(),tools:F.array(F.object({name:F.string(),description:F.string().optional(),input_schema:F.any(),annotations:F.record(F.string(),F.unknown()).optional()})),error:F.union([F.string(),F.object({type:F.string().optional(),code:F.union([F.number(),F.string()]).optional(),message:F.string().optional()}).loose()]).optional()}),F.object({type:F.literal("mcp_approval_request"),id:F.string(),server_label:F.string(),name:F.string(),arguments:F.string(),approval_request_id:F.string().optional()}),F.object({type:F.literal("apply_patch_call"),id:F.string(),call_id:F.string(),status:F.enum(["in_progress","completed"]),operation:F.discriminatedUnion("type",[F.object({type:F.literal("create_file"),path:F.string(),diff:F.string()}),F.object({type:F.literal("delete_file"),path:F.string()}),F.object({type:F.literal("update_file"),path:F.string(),diff:F.string()})])}),F.object({type:F.literal("shell_call"),id:F.string(),call_id:F.string(),status:F.enum(["in_progress","completed","incomplete"]),action:F.object({commands:F.array(F.string())})}),F.object({type:F.literal("shell_call_output"),id:F.string(),call_id:F.string(),status:F.enum(["in_progress","completed","incomplete"]),output:F.array(F.object({stdout:F.string(),stderr:F.string(),outcome:F.discriminatedUnion("type",[F.object({type:F.literal("timeout")}),F.object({type:F.literal("exit"),exit_code:F.number()})])}))}),F.object({type:F.literal("tool_search_call"),id:F.string(),execution:F.enum(["server","client"]),call_id:F.string().nullable(),status:F.enum(["in_progress","completed","incomplete"]),arguments:F.unknown()}),F.object({type:F.literal("tool_search_output"),id:F.string(),execution:F.enum(["server","client"]),call_id:F.string().nullable(),status:F.enum(["in_progress","completed","incomplete"]),tools:F.array(F.record(F.string(),PG1.optional()))})])).optional(),service_tier:F.string().nullish(),incomplete_details:F.object({reason:F.string()}).nullish(),usage:F.object({input_tokens:F.number(),input_tokens_details:F.object({cached_tokens:F.number().nullish()}).nullish(),output_tokens:F.number(),output_tokens_details:F.object({reasoning_tokens:F.number().nullish()}).nullish()}).optional()}))),fT5=["o1","o1-2024-12-17","o3","o3-2025-04-16","o3-mini","o3-mini-2025-01-31","o4-mini","o4-mini-2025-04-16","gpt-5","gpt-5-2025-08-07","gpt-5-codex","gpt-5-mini","gpt-5-mini-2025-08-07","gpt-5-nano","gpt-5-nano-2025-08-07","gpt-5-pro","gpt-5-pro-2025-10-06","gpt-5.1","gpt-5.1-chat-latest","gpt-5.1-codex-mini","gpt-5.1-codex","gpt-5.1-codex-max","gpt-5.2","gpt-5.2-chat-latest","gpt-5.2-pro","gpt-5.2-codex","gpt-5.3-chat-latest","gpt-5.3-codex","gpt-5.4","gpt-5.4-2026-03-05","gpt-5.4-mini","gpt-5.4-mini-2026-03-17","gpt-5.4-nano","gpt-5.4-nano-2026-03-17","gpt-5.4-pro","gpt-5.4-pro-2026-03-05"],FY7=["gpt-4.1","gpt-4.1-2025-04-14","gpt-4.1-mini","gpt-4.1-mini-2025-04-14","gpt-4.1-nano","gpt-4.1-nano-2025-04-14","gpt-4o","gpt-4o-2024-05-13","gpt-4o-2024-08-06","gpt-4o-2024-11-20","gpt-4o-audio-preview","gpt-4o-audio-preview-2024-12-17","gpt-4o-search-preview","gpt-4o-search-preview-2025-03-11","gpt-4o-mini-search-preview","gpt-4o-mini-search-preview-2025-03-11","gpt-4o-mini","gpt-4o-mini-2024-07-18","gpt-3.5-turbo-0125","gpt-3.5-turbo","gpt-3.5-turbo-1106","gpt-5-chat-latest",...fT5],QT6=Q0(()=>n1(F.object({conversation:F.string().nullish(),include:F.array(F.enum(["reasoning.encrypted_content","file_search_call.results","message.output_text.logprobs"])).nullish(),instructions:F.string().nullish(),logprobs:F.union([F.boolean(),F.number().min(1).max(DT6)]).optional(),maxToolCalls:F.number().nullish(),metadata:F.any().nullish(),parallelToolCalls:F.boolean().nullish(),previousResponseId:F.string().nullish(),promptCacheKey:F.string().nullish(),promptCacheRetention:F.enum(["in_memory","24h"]).nullish(),reasoningEffort:F.string().nullish(),reasoningSummary:F.string().nullish(),safetyIdentifier:F.string().nullish(),serviceTier:F.enum(["auto","flex","priority","default"]).nullish(),store:F.boolean().nullish(),strictJsonSchema:F.boolean().nullish(),textVerbosity:F.enum(["low","medium","high"]).nullish(),truncation:F.enum(["auto","disabled"]).nullish(),user:F.string().nullish(),systemMessageMode:F.enum(["system","developer","remove"]).optional(),forceReasoning:F.boolean().optional()})));eT5=Q0(()=>n1(F.object({instructions:F.string().nullish(),speed:F.number().min(0.25).max(4).default(1).nullish()}))),YI5=Q0(()=>n1(F.object({text:F.string(),language:F.string().nullish(),duration:F.number().nullish(),words:F.array(F.object({word:F.string(),start:F.number(),end:F.number()})).nullish(),segments:F.array(F.object({id:F.number(),seek:F.number(),start:F.number(),end:F.number(),text:F.string(),tokens:F.array(F.number()),temperature:F.number(),avg_logprob:F.number(),compression_ratio:F.number(),no_speech_prob:F.number()})).nullish()}))),GI5=Q0(()=>n1(F.object({include:F.array(F.string()).optional(),language:F.string().optional(),prompt:F.string().optional(),temperature:F.number().min(0).max(1).default(0).optional(),timestampGranularities:F.array(F.enum(["word","segment"])).default(["segment"]).optional()}))),WT6={afrikaans:"af",arabic:"ar",armenian:"hy",azerbaijani:"az",belarusian:"be",bosnian:"bs",bulgarian:"bg",catalan:"ca",chinese:"zh",croatian:"hr",czech:"cs",danish:"da",dutch:"nl",english:"en",estonian:"et",finnish:"fi",french:"fr",galician:"gl",german:"de",greek:"el",hebrew:"he",hindi:"hi",hungarian:"hu",icelandic:"is",indonesian:"id",italian:"it",japanese:"ja",kannada:"kn",kazakh:"kk",korean:"ko",latvian:"lv",lithuanian:"lt",macedonian:"mk",malay:"ms",marathi:"mr",maori:"mi",nepali:"ne",norwegian:"no",persian:"fa",polish:"pl",portuguese:"pt",romanian:"ro",russian:"ru",serbian:"sr",slovak:"sk",slovenian:"sl",spanish:"es",swahili:"sw",swedish:"sv",tagalog:"tl",tamil:"ta",thai:"th",turkish:"tr",ukrainian:"uk",urdu:"ur",vietnamese:"vi",welsh:"cy"};qY7=OA0()});function ZI5(X){let Y=JSON.parse(X);if(!Y.baseUrl||typeof Y.baseUrl!=="string")throw Error("Invalid OpenAI-compatible credential: missing baseUrl field");let G=Y.baseUrl.replace(/\/+$/,"");if(!G.endsWith("/v1"))G+="/v1";return{baseUrl:G,apiKey:Y.apiKey??""}}var $I5="https://assets.decocache.com/decocms/d138aa7e-5b8c-4821-9e64-6aff40df2cdc/ChatGPT_logo.svg",LT6;var ET6=D(()=>{wT6();LT6={info:{id:"openai-compatible",name:"OpenAI Compatible",description:"Custom OpenAI-compatible endpoint",logo:$I5},supportedMethods:["api-key"],create(X){let{baseUrl:Y,apiKey:G}=ZI5(X),Q=OA0({baseURL:Y,apiKey:G||"not-needed",name:"openai-compatible"}),J=Object.assign((...$)=>Q.chat(...$),Q,{languageModel:Q.chat});return{info:this.info,aiSdk:J,async listModels(){let $={};if(G)$.Authorization=`Bearer ${G}`;let Z=await fetch(`${Y}/models`,{headers:$,signal:AbortSignal.timeout(15000)});if(!Z.ok)throw Error(`OpenAI-compatible listModels failed: ${Z.status}`);return(await Z.json()).data.map((K)=>({providerId:"openai-compatible",modelId:K.id,title:K.id,description:K.owned_by?`Owned by ${K.owned_by}`:null,logo:null,capabilities:[],limits:null,costs:null}))}}}}});function tQ(){let X=h4();return{...X.aiGatewayEnabled&&{deco:T51},...X.localMode&&{"claude-code":hq0,codex:YA0},anthropic:Bq6,google:iA6,openrouter:zq1,"openai-compatible":LT6}}var Kw=D(()=>{Nq6();xj1();ij1();pA6();ET6();_N0();bN0();e5()});function WI5(X){return X.includes("/")?X.split("/").slice(1).join("/"):X}function KI5(X){let Y=X.supported_parameters.includes("tools"),G=X.supported_parameters.includes("reasoning");return{providerId:"openrouter",modelId:WI5(X.id),title:X.name,description:X.description||null,logo:null,capabilities:[...new Set([...X.architecture.input_modalities.map((Q)=>Q==="image"?"vision":Q),...X.architecture.output_modalities,...Y?["tools"]:[],...G?["reasoning"]:[]])],limits:{contextWindow:X.context_length,maxOutputTokens:X.top_provider.max_completion_tokens||null},costs:{input:X.pricing.prompt,output:X.pricing.completion}}}function qT6(X){let Y=new Map;for(let G of X){let Q={description:G.description,capabilities:G.capabilities,limits:G.limits,costs:G.costs};Y.set(G.modelId,Q);let J=G.modelId.replace(/\./g,"-");if(J!==G.modelId)Y.set(J,Q)}return Y}async function HI5(X){if(X){let Y=await X.get(PT6,"openrouter");if(Y)return qT6(Y)}try{let Y=await fetch("https://openrouter.ai/api/v1/models",{signal:AbortSignal.timeout(1e4)});if(!Y.ok)return new Map;let{data:G}=await Y.json(),Q=G.map(KI5);if(X)await X.set(PT6,"openrouter",Q);return qT6(Q)}catch{return new Map}}function FI5(X){let Y=X.replace(/\./g,"-"),G=X.replace(/-\d{8}$/,""),Q=G.replace(/\./g,"-");return[...new Set([X,Y,G,Q])]}function UI5(X){return X.providerId==="anthropic"||X.modelId.startsWith("anthropic/")}function TT6(X,Y){if(UI5(Y)&&X.includes("vision")&&!X.includes("file"))return[...X,"file"];return X}function BI5(X,Y){return X.map((G)=>{let J=FI5(G.modelId).map((W)=>Y.get(W)).find(Boolean),$=G.capabilities.length?G.capabilities:J?.capabilities??[],Z=TT6($,G);if(!J)return Z===$?G:{...G,capabilities:Z};return{...G,description:G.description??J.description??null,capabilities:Z,limits:G.limits??J.limits??null,costs:G.costs??J.costs??null}})}class zA0{storage;cache;constructor(X,Y){this.storage=X;this.cache=Y}async activate(X,Y){let{keyInfo:G,apiKey:Q}=await this.storage.resolve(X,Y),J=tQ()[G.providerId];if(!J)throw Error(`Unknown provider: ${G.providerId}`);return J.create(Q)}async listModels(X,Y){let{keyInfo:G,apiKey:Q}=await this.storage.resolve(X,Y),J=G.providerId,$=tQ()[J];if(!$)throw Error(`Unknown provider: ${J}`);if(this.cache){let B=await this.cache.get(Y,J);if(B)return AT6(B,$,Q)}let W=await $.create(Q).listModels(),K=new Set,H=W.filter((B)=>{if(B.deprecated)return!1;if(K.has(B.modelId))return!1;return K.add(B.modelId),!0});if(J!=="openrouter"){let B=await HI5(this.cache);H=BI5(H,B)}else H=H.map((B)=>({...B,capabilities:TT6(B.capabilities,B)}));let U=H.map((B)=>({...B,providerId:J}));if(this.cache)await this.cache.set(Y,J,U);return AT6(U,$,Q)}}function AT6(X,Y,G){let J=Y.create(G).asyncResearch;if(!J)return X;return X.map(($)=>J.canHandle($.modelId)?{...$,asyncResearch:!0}:$)}var PT6="_global";var IT6=D(()=>{Kw()});function nj1(X,Y){return{get:(G)=>X.get(Y,G),put:(G,Q,J)=>X.put(Y,G,Q,J),list:(G)=>X.list(Y,G),delete:(G)=>X.delete(Y,G),head:(G)=>X.head(Y,G),presignedGetUrl:(G,Q)=>X.presignedGetUrl(Y,G,Q),presignedPutUrl:(G,Q,J)=>X.presignedPutUrl(Y,G,Q,J)}}import{mkdir as NI5,readdir as OI5,readFile as jT6,stat as tj1,unlink as zI5,writeFile as DI5}from"fs/promises";import{createHmac as wI5}from"crypto";import{dirname as LI5,join as AG1}from"path";function DA0(X){let Y=X.replace(/[^a-zA-Z0-9_-]/g,"_");return AG1(EI5,Y)}function qG1(X,Y){return AG1(DA0(X),gd(Y))}class TG1{orgId;baseUrl;constructor(X,Y){this.orgId=X;this.baseUrl=Y}async get(X){let Y=qG1(this.orgId,X),G=await tj1(Y),Q=xL(X),J=await jT6(Y),$=eF1(Q);return{content:$?new TextDecoder().decode(J):Buffer.from(J).toString("base64"),contentType:Q,encoding:$?"utf-8":"base64",size:G.size,lastModified:G.mtime}}async put(X,Y,G){let Q=qG1(this.orgId,X);return await NI5(LI5(Q),{recursive:!0}),await DI5(Q,typeof Y==="string"?Buffer.from(Y,"utf-8"):Y),{key:X}}async list(X){let Y=X?.prefix?AG1(DA0(this.orgId),gd(X.prefix)):DA0(this.orgId),G;try{G=await OI5(Y,{withFileTypes:!0})}catch{return{objects:[],isTruncated:!1}}let Q=X?.maxKeys??1000,J=X?.prefix,$=G.filter((W)=>W.isFile());if(X?.delimiter){let W=[],K=G.filter((z)=>z.isDirectory());for(let z of K){let w=J?`${J}/${z.name}/`:`${z.name}/`;W.push(w)}W.sort();let H=Q,U=W.slice(0,H);H-=U.length;let B=$.slice(0,H),N=W.length+$.length;return{objects:await Promise.all(B.map(async(z)=>{let w=await tj1(AG1(Y,z.name));return{key:J?`${J}/${z.name}`:z.name,size:w.size,lastModified:w.mtime}})),isTruncated:N>Q,commonPrefixes:U.length>0?U:void 0}}return{objects:await Promise.all($.slice(0,Q).map(async(W)=>{let K=await tj1(AG1(Y,W.name));return{key:J?`${J}/${W.name}`:W.name,size:K.size,lastModified:K.mtime}})),isTruncated:$.length>Q}}async delete(X){await zI5(qG1(this.orgId,X))}async head(X){let Y=await tj1(qG1(this.orgId,X));return{contentType:xL(X),size:Y.size,lastModified:Y.mtime}}async presignedGetUrl(X){let Y=qG1(this.orgId,X),G=await jT6(Y),Q=xL(X),J=Buffer.from(G).toString("base64");return`data:${Q};base64,${J}`}async presignedPutUrl(X,Y=3600){if(!this.baseUrl)throw Error("baseUrl required for presigned PUT URLs in dev mode");let G=gd(X),Q=Math.floor(Date.now()/1000)+Y,J=h4().encryptionKey||"dev-secret",$=`${this.orgId}:${G}:${Q}:PUT`,Z=wI5("sha256",J).update($).digest("hex"),W=new URL(`/api/dev-assets/${this.orgId}/${G}`,this.baseUrl);return W.searchParams.set("expires",Q.toString()),W.searchParams.set("signature",Z),W.searchParams.set("method","PUT"),W.toString()}}var EI5="./data/assets";var wA0=D(()=>{A50();e5()});function PI5(X){if(!X)return;try{let Y=JSON.parse(X);if(typeof Y!=="object"||Y===null||Array.isArray(Y))return;let G={};for(let[Q,J]of Object.entries(Y))if(typeof J==="string")G[Q]=J;return Object.keys(G).length>0?G:void 0}catch{return}}function qI5(X,Y){for(let[G,Q]of Object.entries(Y)){let J=X[G];if(!J||J.length===0){let $=X["*"];if(!$||$.length===0)return!1;if($.includes("*"))continue;for(let Z of Q)if(!$.includes(Z))return!1;continue}if(J.includes("*"))continue;for(let $ of Q)if(!J.includes($))return!1}return!0}function EA0(X){let{auth:Y,headers:G,role:Q,permissions:J,userId:$}=X,Z=Y.api.hasPermission;return{hasPermission:async(W,K)=>{if(Q&&UP0.includes(Q))return!0;if(J)return qI5(J,W);if(!Z)return console.error("[Auth] hasPermission API not available"),!1;let H=K?.organizationId?{organizationId:K.organizationId}:{};try{if((await Z({headers:G,body:{permission:W,...H}}))?.success===!0)return!0;let B={};for(let O of Object.keys(W))B[O]=["*"];return(await Z({headers:G,body:{permission:B,...H}}))?.success===!0}catch(U){return console.error("[Auth] Permission check failed:",U),!1}},organization:{create:async(W)=>{return Y.api.createOrganization({headers:G,body:W})},update:async(W)=>{return Y.api.updateOrganization({headers:G,body:W})},delete:async(W)=>{await Y.api.deleteOrganization({headers:G,body:{organizationId:W}})},get:async(W)=>{return Y.api.getFullOrganization({headers:G,query:W?{organizationId:W}:void 0})},list:async(W)=>{return Y.api.listOrganizations({headers:G,query:W?{userId:W}:void 0})},addMember:async(W)=>{return Y.api.addMember({headers:G,body:W})},removeMember:async(W)=>{await Y.api.removeMember({headers:G,body:W})},listMembers:async(W)=>{return Y.api.listMembers({headers:G,query:W?{organizationId:W.organizationId,limit:W.limit,offset:W.offset}:void 0})},updateMemberRole:async(W)=>{return Y.api.updateMemberRole({headers:G,body:W})}},apiKey:{create:async(W)=>{return Y.api.createApiKey({body:{...W,userId:$}})},list:async()=>{return Y.api.listApiKeys({headers:G})},update:async(W)=>{return Y.api.updateApiKey({body:{...W,userId:$}})},delete:async(W)=>{await Y.api.deleteApiKey({headers:G,body:{keyId:W}})}}}}async function PA0(X,Y,G){if(UP0.includes(G))return;let Q=await X.selectFrom("organizationRole").select(["permission"]).where("organizationId","=",Y).where("role","=",G).executeTakeFirst();if(!Q?.permission)return;try{return JSON.parse(Q.permission)}catch{console.error(`[Auth] Failed to parse permissions for role: ${G}`);return}}async function AI5(X,Y,G,Q=MT6,J){let $=X.headers.get("Authorization");try{let Z=new Headers(X.headers);Z.set("X-MCP-Session-Auth","true");let W=await Q.measure("auth_get_mcp_session",()=>Y.api.getMcpSession({headers:Z}));if(W){let K=W.userId,H=X.headers.get("x-org-id"),U=X.headers.get("x-org-slug"),B=await Q.measure("auth_query_membership",()=>{let w=G.selectFrom("member").innerJoin("organization","organization.id","member.organizationId").select(["member.role","member.organizationId","organization.id as orgId","organization.slug as orgSlug","organization.name as orgName"]).where("member.userId","=",K);if(H)return w.where("organization.id","=",H).executeTakeFirst();if(U)return w.where("organization.slug","=",U).executeTakeFirst();return w.executeTakeFirst()}),N=B?.role,O=B?{id:B.orgId,slug:B.orgSlug,name:B.orgName}:void 0;if(B&&N)J?.set(K,B.organizationId,N);let z;if(B&&N)z=await Q.measure("auth_fetch_role_permissions",()=>PA0(G,B.organizationId,N));return{user:{id:K,role:N},role:N,permissions:z,organization:O}}}catch(Z){console.error("[Auth] OAuth session check failed:",Z)}if($?.startsWith("Bearer ")){let Z=$.replace("Bearer ","").trim();try{let W=await Q.measure("auth_verify_mesh_jwt",()=>yQ6(Z));if(W){let K,H=W.metadata?.organizationId;if(W.sub&&H){let N=J?.get(W.sub,H);if(N)K=N;else if(K=(await Q.measure("auth_query_membership",()=>G.selectFrom("member").select(["member.role"]).where("member.userId","=",W.sub).where("member.organizationId","=",H).executeTakeFirst()))?.role,K)J?.set(W.sub,H,K)}let U,B=W.metadata?.organizationId;if(B){let N=W.metadata?.organizationName,O=W.metadata?.organizationSlug;if(N||O)U={id:B,name:N,slug:O};else{let z=await Q.measure("auth_query_org_for_mesh_jwt",()=>G.selectFrom("organization").select(["id","slug","name"]).where("id","=",B).executeTakeFirst());U=z?{id:z.id,slug:z.slug,name:z.name}:{id:B}}}return{user:{id:W.sub,connectionId:W.metadata?.connectionId,role:K},role:K,permissions:W.permissions,organization:U}}}catch{}try{let W=await Q.measure("auth_verify_api_key",()=>Y.api.verifyApiKey({body:{key:Z}}));if(W?.valid&&W.key){let K=W.key.metadata?.organization,H=W.key.permissions,U,B=W.key.userId;if(B&&K?.id){let N=J?.get(B,K.id);if(N)U=N;else if(U=(await Q.measure("auth_query_membership",()=>G.selectFrom("member").select(["member.role"]).where("member.userId","=",B).where("member.organizationId","=",K.id).executeTakeFirst()))?.role,B&&U)J?.set(B,K.id,U)}return{apiKeyId:W.key.id,user:{id:W.key.userId,role:U},role:U,permissions:H,organization:K?{id:K.id,slug:K.slug,name:K.name}:void 0}}}catch(W){console.error("[Auth] API key check failed:",W)}}try{let Z=new Headers(X.headers);Z.delete("Authorization");let W=await Q.measure("auth_get_session",()=>Y.api.getSession({headers:Z}));if(W){let K,H,U=X.headers.get("x-org-id"),B=X.headers.get("x-org-slug");if(!U&&!B&&X.method.toUpperCase()==="GET")try{let N=new URL(X.url).searchParams;U=N.get("x-org-id"),B=N.get("x-org-slug")}catch{}if(U||B){let N=await Q.measure("auth_query_membership_from_header",()=>{let O=G.selectFrom("member").innerJoin("organization","organization.id","member.organizationId").select(["member.role","organization.id as orgId","organization.slug as orgSlug","organization.name as orgName"]).where("member.userId","=",W.user.id);if(U)O=O.where("organization.id","=",U);else if(B)O=O.where("organization.slug","=",B);return O.executeTakeFirst()});if(N)K={id:N.orgId,slug:N.orgSlug,name:N.orgName},H=N.role}else if(W.session.activeOrganizationId){let N=await Q.measure("auth_get_full_organization",()=>Y.api.getFullOrganization({headers:Z}).catch(()=>null));if(N)K={id:N.id,slug:N.slug,name:N.name},H=N.members?.find((z)=>z.userId===W.user.id)?.role;else K={id:W.session.activeOrganizationId,slug:"",name:""}}return{user:{id:W.user.id,email:W.user.email,emailVerified:!!W.user.emailVerified,name:W.user.name,image:W.user.image??void 0,role:H},role:H,organization:K}}}catch(Z){let W=Z;console.error("[Auth] Session check failed:",JSON.stringify({message:W.message,body:W.body,stack:W.stack},null,2))}return{user:void 0}}async function RT6(X){let Y=new CV(X.encryption.key),G=h4().clickhouseUrl,Q=!!G,J=Q?"clickhouse":"duckdb",$,Z;if(Q)$=new z71(G),Z=new z71(G);else{let{engine:w}=await iE0({basePath:PO()}),{engine:E}=await iE0({basePath:QT()});$=w,Z=E}let{resolve:W}=await import("path"),K=W(PO()),H=W(QT()),U=Q?(w)=>"monitoring_logs":(w)=>`read_ndjson('${K}/${w}/**/*.ndjson', auto_detect=true)`,B=process.env.USE_METRICS_ROLLUP!=="false",N=Q?(w)=>B?"monitoring_metrics_rollup_1m":"monitoring_metrics":(w)=>`read_ndjson('${H}/${w}/**/*.ndjson', auto_detect=true)`,O=new A71(X.db),z={connections:new M51(X.db,Y),organizationSettings:new pE0(X.db),monitoring:new OL0($,U,Z,N,J),virtualMcps:new R51(X.db),users:new JP0(X.db),tags:new QP0(X.db),virtualMcpPluginConfigs:new nE0(X.db),aiProviderKeys:new j51(X.db,Y),oauthPkceStates:new NP0(X.db),automations:gI1(X.db),triggerCallbackTokens:new D71(X.db),orgSsoConfig:new oE0(X.db,Y),orgSsoSessions:new sE0(X.db),registry:{items:new Wr(X.db),publishRequests:new Kr(X.db),publishApiKeys:new Hr(X.db),monitorRuns:new nI1(X.db),monitorResults:new tI1(X.db),monitorConnections:new rI1(X.db)},brandContext:new w71(X.db),organizationDomains:new ED(X.db)};return async(w,E)=>{let P=E?.timings??MT6,A=Br(),V=w?await X.observability.tracer.startActiveSpan("mesh.auth",async(m)=>{try{let e=await AI5(w,X.auth,X.db,P,X.memberRoleCache);return m.setStatus({code:LA0.SpanStatusCode.OK}),e}catch(e){throw m.setStatus({code:LA0.SpanStatusCode.ERROR,message:e.message}),m.recordException(e),e}finally{m.end()}}):{user:void 0},M=w?.headers.get("x-caller-id")??V.user?.connectionId??void 0,j=EA0({auth:X.auth,headers:w?.headers??new Headers,role:V.role,permissions:V.permissions,userId:V.user?.id}),R={user:V.user};if(V.apiKeyId)R.apiKey={id:V.apiKeyId,name:"",userId:""};let C=V.organization,_=w?h4().baseUrl??`${new URL(w.url).origin}`:N3(),v=new g2(X.auth,R.user?.id,void 0,j,V.role,"self",void 0,C?.id),y={...z,threads:new q71(O,C?.id)},x=new zA0(y.aiProviderKeys,X.modelListCache),i=ud(),t=!C?null:i?nj1(i,C.id):new TG1(C.id,_),b={timings:P,auth:R,connectionId:M,organization:C,storage:y,vault:Y,authInstance:X.auth,boundAuth:j,access:v,db:X.db,tracer:X.observability.tracer,meter:X.observability.meter,baseUrl:_,objectStorage:t,metadata:{requestId:crypto.randomUUID(),timestamp:new Date,wellKnownForwardableHeaders:Object.fromEntries(TI5.map((m)=>[m,w?.headers.get(m)??null]).filter(([m,e])=>e!==null)),userAgent:w?.headers.get("x-mesh-client")||w?.headers.get("User-Agent")||void 0,ipAddress:(w?.headers.get("CF-Connecting-IP")||w?.headers.get("X-Forwarded-For"))??void 0,properties:PI5(w?.headers.get("x-mesh-properties"))},eventBus:X.eventBus,aiProviders:x,createMCPProxy:async(m)=>{return await wL6(m,b)},invalidateMemberRole:X.memberRoleCache?(m,e)=>X.memberRoleCache.invalidate(m,e):void 0,getOrCreateClient:A,pendingRevalidations:[],firecrawlApiKey:h4().firecrawlApiKey};return b}}var LA0,VT6,OU,MT6,TI5;var IG1=D(()=>{fV();Dq1();e5();LD();xN0();gN0();DN6();rw6();a3();aw6();tE0();aE0();WL6();KL6();aI1();sI1();E71();Yj1();Gj1();yN0();IT6();XU1();wA0();LA0=X1(b0(),1);OU={set:(X)=>{VT6=X},create:async(X,Y)=>{return await VT6(X,Y)}},MT6={measure:async(X,Y)=>{return await Y()}},TI5=["x-hub-signature-256"]});async function ST6(X,Y,G){return(await Y.storage.connections.findById(X,G))?.connection_url??null}function II5(X){let Y=X.toLowerCase();return Y.includes("resource_metadata=")||Y.includes("invalid_token")||Y.includes("oauth")}async function kT6(X,Y={}){try{let G=await fetch(X,{method:"POST",headers:{...Y,"Content-Type":"application/json",Accept:"application/json, text/event-stream"},body:JSON.stringify({jsonrpc:"2.0",id:0,method:"initialize",params:{protocolVersion:"2025-06-18",capabilities:{},clientInfo:{name:"mcp-cms-proxy",version:"1.0.0"}}})});if(G.status===401){let Q=G.headers.get("WWW-Authenticate");if(Q){if(II5(Q))return Q}if(await jI5(X))return'Bearer realm="mcp"'}return null}catch{return null}}async function jI5(X){try{let Y=new URL(X),G=new URL("/.well-known/oauth-authorization-server",Y.origin),Q=await fetch(G.toString(),{method:"GET",headers:{Accept:"application/json"}});if(Q.ok){let J=await Q.json();if(J.authorization_endpoint||J.token_endpoint||J.issuer)return!0}return!1}catch{return!1}}async function fr(X){let G=new URL(X).pathname;if(G.endsWith("/"))G=G.slice(0,-1);let Q=new URL(X);Q.pathname=`${G}/.well-known/oauth-protected-resource`;let J=await fetch(Q.toString(),{method:"GET",headers:{Accept:"application/json"}});if(J.ok)return J;if(!qA0.includes(J.status))return J;let $=new URL(X);if($.pathname=`/.well-known/oauth-protected-resource${G}`,J=await fetch($.toString(),{method:"GET",headers:{Accept:"application/json"}}),!qA0.includes(J.status))return J;let Z=new URL(X);return Z.pathname="/.well-known/oauth-protected-resource",J=await fetch(Z.toString(),{method:"GET",headers:{Accept:"application/json"}}),J}async function VI5(X,Y){let G=await ST6(X,Y);if(!G)return null;let Q;try{Q=new URL(G).origin}catch{return null}try{let J=await fr(G);if(J.ok){let $=await J.json();if($.authorization_servers?.[0])return $.authorization_servers[0]}}catch{}return Q}async function CT6(X){let Y=X.get("meshContext");if(!Y)Y=await OU.create(X.req.raw),X.set("meshContext",Y);return Y}function vT6(X){return X?`/api/${X}`:""}async function _T6({error:X,reqUrl:Y,connectionId:G,connectionUrl:Q,headers:J,orgSlug:$}){let Z=X.message?.toLowerCase()??"";if(!(X.status===401||X.code===401||X.message?.includes("401")||Z.includes("unauthorized")||Z.includes("invalid_token")||Z.includes("api key required")||Z.includes("api-key required")))return null;if(Boolean(await kT6(Q,J))){let H=vT6($);return new Response(null,{status:401,headers:{"WWW-Authenticate":`Bearer realm="mcp",resource_metadata="${Y.origin}${H}/mcp/${G}/.well-known/oauth-protected-resource"`}})}return new Response(JSON.stringify({error:"unauthorized",message:"Authentication required but server does not support OAuth"}),{status:401,headers:{"Content-Type":"application/json"}})}async function VG1(X){let G=new URL(X).pathname;if(G.endsWith("/"))G=G.slice(0,-1);let Q=G!==""&&G!=="/",J=[];if(Q){let Z=new URL(X);Z.pathname=`/.well-known/oauth-authorization-server${G}`,J.push(Z);let W=new URL(X);W.pathname=`/.well-known/openid-configuration${G}`,J.push(W);let K=new URL(X);K.pathname=`${G}/.well-known/openid-configuration`,J.push(K)}else{let Z=new URL(X);Z.pathname="/.well-known/oauth-authorization-server",J.push(Z);let W=new URL(X);W.pathname="/.well-known/openid-configuration",J.push(W)}let $=null;for(let Z of J){if($=await fetch(Z.toString(),{method:"GET",headers:{Accept:"application/json"}}),$.ok)return $;if($.status!==404&&$.status!==401)return $}return $}var qA0,fT6=(X)=>{if(!(X.hostname==="localhost"||X.hostname.endsWith(".localhost")||X.hostname==="127.0.0.1"))X.protocol="https:";return X},jG1=async(X)=>{let Y=X.req.param("connectionId"),G=await CT6(X),Q=fT6(new URL(X.req.url)),J=G.organization?.slug??X.req.param("org"),$;if(J)if(G.organization?.id&&G.organization.slug===J)$=G.organization.id;else{let U=await G.db.selectFrom("organization").select("id").where("slug","=",J).executeTakeFirst();if(!U)return X.json({error:"Connection not found"},404);$=U.id}let Z=await ST6(Y,G,$);if(!Z)return X.json({error:"Connection not found"},404);let W=vT6(J),K=`${Q.origin}${W}/mcp/${Y}`,H=`${Q.origin}/oauth-proxy/${Y}`;try{let U=await fr(Z);if(!U.ok&&qA0.includes(U.status)){if(await kT6(Z))return new Response(JSON.stringify({resource:K,authorization_servers:[H],bearer_methods_supported:["header"],scopes_supported:["*"]}),{status:200,headers:{"Content-Type":"application/json"}});return new Response(U.body,{status:U.status,statusText:U.statusText,headers:{"Content-Type":"application/json"}})}if(!U.ok)return new Response(U.body,{status:U.status,statusText:U.statusText,headers:{"Content-Type":"application/json"}});let B=await U.json();if("issuer"in B&&!("resource"in B)&&(("authorization_endpoint"in B)||("token_endpoint"in B))){let z={resource:K,authorization_servers:[H],bearer_methods_supported:["header"],scopes_supported:"scopes_supported"in B&&Array.isArray(B.scopes_supported)&&B.scopes_supported.length>0?B.scopes_supported:["*"]};return new Response(JSON.stringify(z),{status:200,headers:{"Content-Type":"application/json"}})}let O={...B,resource:K,authorization_servers:[H]};return new Response(JSON.stringify(O),{status:U.status,statusText:U.statusText,headers:{"Content-Type":"application/json"}})}catch(U){let B=U;return console.error("[oauth-proxy] Failed to proxy OAuth protected resource metadata:",B),X.json({error:"Failed to proxy OAuth metadata",message:B.message},502)}},AA0=()=>{let X=new w6;return X.get("/.well-known/oauth-protected-resource/mcp/:connectionId",(Y)=>jG1(Y)),X.get("/mcp/:connectionId/.well-known/oauth-protected-resource",(Y)=>jG1(Y)),X},bT6=()=>{let X=new w6;return X.get("/mcp/:connectionId/.well-known/oauth-protected-resource",(Y)=>jG1(Y)),X},MI5=async(X)=>{let Y=X.req.param("connectionId"),G=await CT6(X),Q=await VI5(Y,G);if(!Q)return X.json({error:"Connection not found or no auth server"},404);try{let J=await VG1(Q);if(!J.ok)return new Response(J.body,{status:J.status,statusText:J.statusText,headers:{"Content-Type":"application/json"}});let $=await J.json(),W=`${fT6(new URL(X.req.url)).origin}/oauth-proxy/${Y}`,K={...$,authorization_endpoint:$.authorization_endpoint?`${W}/authorize`:void 0,token_endpoint:$.token_endpoint?`${W}/token`:void 0,registration_endpoint:$.registration_endpoint?`${W}/register`:void 0};return new Response(JSON.stringify(K),{status:200,headers:{"Content-Type":"application/json"}})}catch(J){let $=J;return console.error("[oauth-proxy] Failed to proxy auth server metadata:",$),X.json({error:"Failed to proxy auth server metadata",message:$.message},502)}},TA0=()=>{let X=new w6;return X.get("/.well-known/oauth-authorization-server/oauth-proxy/:connectionId",MI5),X},yT6;var MG1=D(()=>{jY();IG1();qA0=[404,401,406];yT6=new w6;yT6.route("/",AA0());yT6.route("/",TA0())});async function rj1(X){try{let Y;try{let Q=await fr(X);if(Q.ok)Y=(await Q.json()).authorization_servers?.[0]}catch{}if(!Y)Y=new URL(X).origin;let G=await VG1(Y);if(G.ok)return(await G.json()).token_endpoint??null;return null}catch{return null}}var IA0=D(()=>{MG1()});class G${db;vault;constructor(X,Y){this.db=X;this.vault=Y}async get(X){let Y=await this.db.selectFrom("downstream_tokens").selectAll().where("connectionId","=",X).executeTakeFirst();if(!Y)return null;return this.decryptToken(Y)}async upsert(X){let Y=new Date().toISOString(),G=await this.vault.encrypt(X.accessToken),Q=X.refreshToken?await this.vault.encrypt(X.refreshToken):null,J=X.clientSecret?await this.vault.encrypt(X.clientSecret):null;return await this.db.transaction().execute(async($)=>{let Z=await $.selectFrom("downstream_tokens").select(["id","createdAt"]).where("connectionId","=",X.connectionId).executeTakeFirst();if(Z)return await $.updateTable("downstream_tokens").set({accessToken:G,refreshToken:Q,scope:X.scope,expiresAt:X.expiresAt?.toISOString()??null,clientId:X.clientId,clientSecret:J,tokenEndpoint:X.tokenEndpoint,updatedAt:Y}).where("id","=",Z.id).execute(),{id:Z.id,connectionId:X.connectionId,accessToken:X.accessToken,refreshToken:X.refreshToken,scope:X.scope,expiresAt:X.expiresAt,createdAt:Z.createdAt,updatedAt:Y,clientId:X.clientId,clientSecret:X.clientSecret,tokenEndpoint:X.tokenEndpoint};let W=vX("dtok");return await $.insertInto("downstream_tokens").values({id:W,connectionId:X.connectionId,accessToken:G,refreshToken:Q,scope:X.scope,expiresAt:X.expiresAt?.toISOString()??null,clientId:X.clientId,clientSecret:J,tokenEndpoint:X.tokenEndpoint,createdAt:Y,updatedAt:Y}).execute(),{id:W,connectionId:X.connectionId,accessToken:X.accessToken,refreshToken:X.refreshToken,scope:X.scope,expiresAt:X.expiresAt,createdAt:Y,updatedAt:Y,clientId:X.clientId,clientSecret:X.clientSecret,tokenEndpoint:X.tokenEndpoint}})}async delete(X){await this.db.deleteFrom("downstream_tokens").where("connectionId","=",X).execute()}isExpired(X,Y=0){if(!X.expiresAt)return!1;let Q=(X.expiresAt instanceof Date?X.expiresAt:new Date(X.expiresAt)).getTime();if(Number.isNaN(Q))return!0;return Q-Y<Date.now()}async decryptToken(X){let Y=await this.vault.decrypt(X.accessToken),G=X.refreshToken?await this.vault.decrypt(X.refreshToken):null,Q=X.clientSecret?await this.vault.decrypt(X.clientSecret):null;return{id:X.id,connectionId:X.connectionId,accessToken:Y,refreshToken:G,scope:X.scope,expiresAt:X.expiresAt,createdAt:X.createdAt,updatedAt:X.updatedAt,clientId:X.clientId,clientSecret:Q,tokenEndpoint:X.tokenEndpoint}}}var GM=D(()=>{pK()});function RI5(X){if(!X)return;let Y={};for(let[G,Q]of Object.entries(X))if(Q&&typeof Q==="object"&&!Array.isArray(Q)&&"__binding"in Q){let{__binding:J,...$}=Q;Y[G]=$}else Y[G]=Q;return Y}async function VA0(X,Y,G){return Y.tracer.startActiveSpan("mesh.connection.build_headers",{attributes:{"connection.id":X.id}},async(Q)=>{try{let J=await SI5(X,Y,G);return Q.setStatus({code:jA0.SpanStatusCode.OK}),J}catch(J){throw Q.setStatus({code:jA0.SpanStatusCode.ERROR,message:J.message}),Q.recordException(J),J}finally{Q.end()}})}async function SI5(X,Y,G){let Q=X.id,J=WL0(X.configuration_state,X.configuration_scopes),$=Y.auth.user,Z=$?.id??Y.auth.apiKey?.userId??(G?X.created_by:void 0),[W,K]=Z?await bQ6({sub:Z,user:{id:Z,email:$?.email,name:$?.name,image:$?.image,role:$?.role},metadata:{state:RI5(X.configuration_state),meshUrl:Y.baseUrl,connectionId:Q,organizationId:Y.organization?.id,organizationName:Y.organization?.name,organizationSlug:Y.organization?.slug},permissions:J}).then((z)=>[z,null]).catch((z)=>[null,z]):[null,Error("User ID required to issue configuration token")];if(K)console.error("Failed to issue configuration token:",W);let H=Y.auth.user?.connectionId,U={...H?{"x-caller-id":H}:{},...Y.metadata.wellKnownForwardableHeaders??{},"x-request-id":Y.metadata.requestId},B=null,N=new G$(Y.db,Y.vault),O=await N.get(Q);if(O){let z=!!O.refreshToken&&!!O.tokenEndpoint;if(N.isExpired(O,z?300000:0))if(z){let E=O.tokenEndpoint;if(X.connection_url&&O.tokenEndpoint?.includes("/oauth-proxy/")){let A=await rj1(X.connection_url);if(A)E=A}let P=await YY1({...O,tokenEndpoint:E});if(P.success&&P.accessToken)await N.upsert({connectionId:Q,accessToken:P.accessToken,refreshToken:P.refreshToken??O.refreshToken,scope:P.scope??O.scope,expiresAt:P.expiresIn?new Date(Date.now()+P.expiresIn*1000):null,clientId:O.clientId,clientSecret:O.clientSecret,tokenEndpoint:E}),B=P.accessToken;else{if(P.permanent===!0)await N.delete(Q);console.error("[Proxy] token refresh failed",{connectionId:Q,status:P.status,errorCode:P.errorCode,permanent:P.permanent===!0,deleted:P.permanent===!0})}}else await N.delete(Q),console.warn(`[Proxy] Token expired for ${Q} with no refresh capability (refreshToken: ${!!O.refreshToken}, tokenEndpoint: ${!!O.tokenEndpoint})`);else B=O.accessToken}if(!B&&X.connection_token)B=X.connection_token;if(B)U.Authorization=`Bearer ${B}`;if(W)U["x-mesh-token"]=W;return U}var jA0;var hT6=D(()=>{KL0();fV();uT1();IA0();GM();jA0=X1(b0(),1)});function xT6(X){let Y=new f51({command:X.command,args:X.args,env:X.env,cwd:X.cwd,stderr:"pipe"}),G=X.name||X.id,Q="\x1B[2m",J="\x1B[0m";return Y.stderr?.on("data",($)=>{let Z=$.toString().trimEnd();if(Z)console.error(`${Z} \x1B[2m[${G}]\x1B[0m`)}),Y}var gT6=D(()=>{$O0()});var kI5="mcp.mesh",br;var uT6=D(()=>{ZH();aI1();Qi();br=class br extends ec{options;constructor(X,Y){super(X);this.options=Y}toolsListPromise=null;fetchToolsFromServer(){if(!this.toolsListPromise)this.toolsListPromise=new Promise((X)=>{let Y=`auth-tools-${Date.now()}`,G=this.innerTransport.onmessage;this.innerTransport.onmessage=(Q)=>{if("id"in Q&&Q.id===Y)if(this.innerTransport.onmessage=G,this.toolsListPromise=null,"result"in Q){let J=Q.result?.tools??null;X(J)}else X(null);else G?.(Q)},this.innerTransport.send({jsonrpc:"2.0",id:Y,method:"tools/list",params:{}}).catch(()=>{this.innerTransport.onmessage=G,this.toolsListPromise=null,X(null)})});return this.toolsListPromise}async ensureToolsMap(){let X=this.options.cache??nG(),Y=await sP("tools",this.options.connection.id,async()=>{let G=await this.fetchToolsFromServer();if(G===null)throw Error("Failed to fetch tools list");return G},X,(G)=>this.options.ctx.pendingRevalidations.push(G));if(!Y)return new Map;return new Map(Y.map((G)=>[G.name,G]))}async handleOutgoingMessage(X){if(!this.isRequest(X))return this.innerTransport.send(X);let Y=X;if(Y.method==="tools/call")await this.authorizeToolCall(Y),this.stripMetaFromArguments(Y);return this.innerTransport.send(X)}async authorizeToolCall(X){if(this.options.superUser)return;let G=X.params.name,{ctx:Q,connection:J}=this.options;if(await this.isPublicTool(G))return;if(!Q.auth.user?.id&&!Q.auth.apiKey?.id)throw Error("Authentication required. Please provide a valid OAuth token or API key.");let $=async()=>{return(await this.ensureToolsMap()).get(G)?._meta};await new g2(Q.authInstance,Q.auth.user?.id??Q.auth.apiKey?.userId,G,Q.boundAuth,Q.organization?.role??Q.auth.user?.role,J.id,$,Q.organization?.id).check(G)}async isPublicTool(X){if(X.startsWith("MESH_PUBLIC_"))return!0;let G=(await this.ensureToolsMap()).get(X);if(!G?._meta)return!1;return G._meta[kI5]?.public_tool===!0}stripMetaFromArguments(X){let Y=X.params;if(Y.arguments&&"_meta"in Y.arguments){let{_meta:G,...Q}=Y.arguments;Y.arguments=Q}}}});class MA0{patterns=[{type:"email",regex:/[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}/g},{type:"api_key",regex:/(?:api[_-]?key|token|secret|password|bearer)\s*[:=]\s*['"]?[\w-]{16,}['"]?/gi},{type:"jwt",regex:/eyJ[A-Za-z0-9-_]+\.eyJ[A-Za-z0-9-_]+\.[A-Za-z0-9-_.+/=]*/g},{type:"credit_card",regex:/\b\d{4}[- ]?\d{4}[- ]?\d{4}[- ]?\d{4}\b/g},{type:"ssn",regex:/\b\d{3}-\d{2}-\d{4}\b/g}];redact(X){if(X===null||X===void 0)return X;if(typeof X==="string")return this.redactString(X);if(Array.isArray(X))return X.map((Y)=>this.redact(Y));if(typeof X==="object"){let Y={};for(let[G,Q]of Object.entries(X)){let J=this.redactString(G);Y[J]=this.redact(Q)}return Y}return X}redactString(X){let Y=X;for(let G of this.patterns)Y=Y.replace(G.regex,`[REDACTED:${G.type}]`);return Y}}function SG1(X,Y){try{if(!X.organizationId)return;let G=RA0.redact(X.toolArguments??{}),Q=RA0.redact(X.result??{}),J=X.errorMessage?RA0.redactString(X.errorMessage):"";RG1.logs.getLogger("mesh.monitoring","1.0.0").emit({severityNumber:X.isError?RG1.SeverityNumber.ERROR:RG1.SeverityNumber.INFO,severityText:X.isError?"ERROR":"INFO",body:X.toolName,attributes:{[P9.TYPE]:X.type??to,[P9.ORGANIZATION_ID]:X.organizationId,[P9.CONNECTION_ID]:X.connectionId,[P9.CONNECTION_TITLE]:"",[P9.TOOL_NAME]:X.toolName,[P9.INPUT]:so(JSON.stringify(G)),[P9.OUTPUT]:so(JSON.stringify(Q)),[P9.IS_ERROR]:X.isError,[P9.ERROR_MESSAGE]:J,[P9.DURATION_MS]:X.duration,[P9.USER_ID]:X.userId||"",[P9.REQUEST_ID]:X.requestId,[P9.USER_AGENT]:X.userAgent||"",[P9.VIRTUAL_MCP_ID]:X.virtualMcpId||"",[P9.PROPERTIES]:X.properties?JSON.stringify(X.properties):""},context:Y})}catch{}}var RG1,RA0;var aj1=D(()=>{a3();Yp1();RG1=X1(sa(),1),RA0=new MA0});function SA0(X){let{ctx:Y,organizationId:G,connectionId:Q,toolName:J,durationMs:$,isError:Z}=X;if(!G||!Q||!J)return;let W={"tool.name":J,"organization.id":G,"connection.id":Q,status:Z?"error":"success","error.type":Z?X.errorType||"Error":""};Y.meter.createHistogram("tool.execution.duration",{description:"Duration of tool executions in milliseconds",unit:"ms"}).record($,W),Y.meter.createCounter("tool.execution.count",{description:"Number of tool executions"}).add(1,W)}function lT6(X){if(!X.isError)return;let Y=X.content;if(!Array.isArray(Y))return;for(let G of Y)if(G&&typeof G==="object"&&"type"in G&&G.type==="text"&&"text"in G&&typeof G.text==="string")return G.text;return}function mT6(X){if(!X)return;let Y=X._meta;if(!Y||typeof Y!=="object"||Array.isArray(Y))return;let G=Y.properties;if(!G||typeof G!=="object"||Array.isArray(G))return;let Q={};for(let[J,$]of Object.entries(G))if(typeof $==="string")Q[J]=$;return Object.keys(Q).length>0?Q:void 0}function dT6(X,Y){if(!X&&!Y)return;if(!X)return Y;if(!Y)return X;return{...Y,...X}}var cT6=D(()=>{ZX();aj1();a3()});var kG1,yr;var iT6=D(()=>{Qi();aj1();cT6();kG1=X1(b0(),1);yr=class yr extends ec{options;inflightRequests=new Map;requestContext;constructor(X,Y){super(X);this.options=Y;this.requestContext=kG1.context.active()}async handleOutgoingMessage(X){if(this.isRequest(X)){let Y=X;this.onRequestStart(Y)}return this.innerTransport.send(X)}handleIncomingMessage(X){if(this.isResponse(X)){let Y=X;this.onResponseEnd(Y)}this.onmessage?.(X)}onRequestStart(X){let{ctx:Y,connectionId:G}=this.options,Q,J;if(X.method==="tools/call"&&X.params){let Z=X.params;Q=Z.name,J=Z.arguments}let $;if(X.method==="tools/call"&&Q)$=Y.tracer.startSpan("mcp.proxy.callTool",{attributes:{"connection.id":G,"tool.name":Q,"request.id":Y.metadata.requestId,"jsonrpc.id":X.id,"jsonrpc.method":X.method}},this.requestContext);if(X.id!==null&&X.id!==void 0)this.inflightRequests.set(X.id,{startTime:Date.now(),method:X.method,toolName:Q,toolArguments:J,span:$})}onResponseEnd(X){if(X.id===null||X.id===void 0)return;let Y=this.inflightRequests.get(X.id);if(!Y)return;let{ctx:G,connectionId:Q}=this.options,{startTime:J,method:$,toolName:Z,toolArguments:W,span:K}=Y,H=Date.now()-J;if(this.inflightRequests.delete(X.id),$!=="tools/call"||!Z)return;let U=G.organization?.id??"",B="error"in X,N=B?X.error:X.result,O=B?{content:[{type:"text",text:X.error?.message||"Unknown error"}],isError:!0}:N;if(G.meter.createHistogram("connection.proxy.duration").record(H,{"connection.id":Q,"organization.id":U,"tool.name":Z,status:B?"error":"success"}),B)G.meter.createCounter("connection.proxy.errors").add(1,{"connection.id":Q,"organization.id":U,"tool.name":Z,error:X.error?.message});else G.meter.createCounter("connection.proxy.requests").add(1,{"connection.id":Q,"organization.id":U,"tool.name":Z,status:"success"});if(U)SA0({ctx:G,organizationId:U,connectionId:Q,toolName:Z,durationMs:H,isError:B,errorType:B?"RemoteError":""});if(K){if(B&&X.error)K.recordException(Error(X.error.message));let z=mT6(W),w=dT6(G.metadata.properties,z),E=kG1.trace.setSpan(kG1.context.active(),K);SG1({organizationId:G.organization?.id??"",connectionId:Q,toolName:Z,toolArguments:W,result:O,duration:H,isError:Boolean(B),errorMessage:lT6(O)||null,userId:G.auth.user?.id||G.auth.apiKey?.userId||null,requestId:G.metadata.requestId,userAgent:G.metadata.userAgent||null,virtualMcpId:this.options.virtualMcpId||null,properties:w||null},E),K.end()}}async close(){for(let X of this.inflightRequests.values())if(X.span)X.span.setAttributes({"transport.closed":!0}),X.span.end();return this.inflightRequests.clear(),super.close()}}});var pT6=D(()=>{Qi();uT6();iT6()});async function nT6(X,Y,G=!1){let Q=X.id,J=Y.connectionId&&Y.connectionId!==Q?Y.connectionId:void 0;switch(X.connection_type){case"STDIO":{if(!h4().localMode)throw Error("STDIO connections are only available in local mode (--local-mode).");let $=X.connection_headers;if(!qB($))throw Error("STDIO connection missing parameters");let Z=xT6({id:Q,name:X.title,command:$.command,args:$.args,env:$.envVars,cwd:$.cwd});return Z=Xi(Z,(W)=>new br(W,{ctx:Y,connection:X,superUser:G}),(W)=>new yr(W,{ctx:Y,connectionId:Q,virtualMcpId:J})),CI5(Z,Q)}case"HTTP":case"Websocket":{if(!X.connection_url)throw Error(`${X.connection_type} connection missing URL`);let $=await VA0(X,Y,G),Z=X.connection_headers;if(Z&&"headers"in Z)Object.assign($,Z.headers);let W=new EB(new URL(X.connection_url),{requestInit:{headers:$}});return W=Xi(W,(K)=>new br(K,{ctx:Y,connection:X,superUser:G}),(K)=>new yr(K,{ctx:Y,connectionId:Q,virtualMcpId:J})),Y.getOrCreateClient(W,Q)}case"SSE":{if(!X.connection_url)throw Error("SSE connection missing URL");let $=await VA0(X,Y,G),Z=X.connection_headers;if(Z&&"headers"in Z)Object.assign($,Z.headers);let W=new TD(new URL(X.connection_url),{requestInit:{headers:$}});return W=Xi(W,(K)=>new br(K,{ctx:Y,connection:X,superUser:G}),(K)=>new yr(K,{ctx:Y,connectionId:Q,virtualMcpId:J})),Y.getOrCreateClient(W,Q)}default:throw Error(`Unknown connection type: ${X.connection_type}`)}}var CI5;var tT6=D(()=>{e5();qD();_51();ac();hT6();Gj1();gT6();pT6();CI5=Br()});function oj1(X){return X.toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-|-$/g,"")}function kA0(X){if(X&&typeof X==="object"&&"gatewayClientId"in X&&typeof X.gatewayClientId==="string")return X.gatewayClientId;return}function CA0(X,Y){if(!Y)return X;let G=`${oj1(Y)}_`;return X.startsWith(G)?X.slice(G.length):X}function vI5(X){return X.split(/[-_]/).map((Y)=>Y?Y.charAt(0).toUpperCase()+Y.slice(1):Y).join(" ")}var sj1;var rT6=D(()=>{wB();sj1=class sj1 extends V7{clients;slugToKey=new Map;resolvedClients=new Map;toolsCache=null;resourcesCache=null;resourceTemplatesCache=null;promptsCache=null;resourceRouteMap=new Map;constructor(X,Y){super(Y?.clientInfo??{name:"gateway-client",version:"1.0.0"},{capabilities:Y?.capabilities});this.clients=X;for(let G of Object.keys(X)){let Q=oj1(G);if(this.slugToKey.has(Q))throw Error(`GatewayClient: duplicate slug "${Q}" from keys "${this.slugToKey.get(Q)}" and "${G}"`);this.slugToKey.set(Q,G)}}namespace(X,Y){return`${oj1(X)}_${Y}`}async resolveToolTarget(X){let Y=X.indexOf("_");if(Y!==-1){let Q=X.slice(0,Y),J=this.slugToKey.get(Q);if(J)return[J,X.slice(Y+1)]}let{tools:G}=await this.listTools();for(let Q of G){let J=kA0(Q._meta);if(!J)continue;if(CA0(Q.name,J)===X)return[J,X]}if(Y===-1)throw Error(`GatewayClient: could not resolve tool "${X}" \u2014 no namespace prefix and not found in any client`);throw Error(`GatewayClient: unknown namespace "${X.slice(0,Y)}" in "${X}" and not found by original name in any client`)}async resolvePromptTarget(X){let Y=X.indexOf("_");if(Y!==-1){let Q=X.slice(0,Y),J=this.slugToKey.get(Q);if(J)return[J,X.slice(Y+1)]}let{prompts:G}=await this.listPrompts();for(let Q of G){let J=kA0(Q._meta);if(!J)continue;if(CA0(Q.name,J)===X)return[J,X]}if(Y===-1)throw Error(`GatewayClient: could not resolve prompt "${X}" \u2014 no namespace prefix and not found in any client`);throw Error(`GatewayClient: unknown namespace "${X.slice(0,Y)}" in "${X}" and not found by original name in any client`)}resolveClient(X){let Y=this.resolvedClients.get(X);if(Y)return Y;let G=this.clients[X];if(!G)return Promise.reject(Error(`GatewayClient: unknown client key "${X}"`));let Q=G.client,$=(typeof Q==="function"?Promise.resolve(Q()):Promise.resolve(Q)).catch((Z)=>{throw this.resolvedClients.delete(X),Z});return this.resolvedClients.set(X,$),$}getResolvedClient(X){return this.resolveClient(X)}async fetchAllTools(X){let Y=[],G;do{let Q=await X.listTools(G?{cursor:G}:void 0);Y.push(...Q.tools),G=Q.nextCursor}while(G);return Y}async fetchAllResources(X){let Y=[],G;do{let Q=await X.listResources(G?{cursor:G}:void 0);Y.push(...Q.resources),G=Q.nextCursor}while(G);return Y}async fetchAllResourceTemplates(X){let Y=[],G;do{let Q=await X.listResourceTemplates(G?{cursor:G}:void 0);Y.push(...Q.resourceTemplates),G=Q.nextCursor}while(G);return Y}async fetchAllPrompts(X){let Y=[],G;do{let Q=await X.listPrompts(G?{cursor:G}:void 0);Y.push(...Q.prompts),G=Q.nextCursor}while(G);return Y}listTools(X,Y){if(!this.toolsCache)this.toolsCache=this.aggregateTools();return this.toolsCache}async aggregateTools(){let X=[];for(let[Y,G]of Object.entries(this.clients)){let Q=await this.resolveClient(Y),J=await this.fetchAllTools(Q),$=G.tools,Z=$?new Set($):null;for(let W of J){if(Z&&!Z.has(W.name))continue;X.push({...W,name:this.namespace(Y,W.name),_meta:{...W._meta??{},gatewayClientId:Y}})}}return{tools:X}}listResources(X,Y){if(!this.resourcesCache)this.resourcesCache=this.aggregateResources();return this.resourcesCache}async aggregateResources(){let X=new Set,Y=[],G=new Map;for(let[Q,J]of Object.entries(this.clients)){let $=await this.resolveClient(Q),Z=await this.fetchAllResources($),W=J.resources,K=W?new Set(W):null;for(let H of Z){if(K&&!K.has(H.uri)&&!(H.name&&K.has(H.name)))continue;if(X.has(H.uri)){console.warn(`GatewayClient: duplicate resource "${H.uri}" from client "${Q}" \u2014 skipping`);continue}X.add(H.uri),G.set(H.uri,Q),Y.push({...H,_meta:{...H._meta??{},gatewayClientId:Q}})}}return this.resourceRouteMap=G,{resources:Y}}listResourceTemplates(X,Y){if(!this.resourceTemplatesCache)this.resourceTemplatesCache=this.aggregateResourceTemplates();return this.resourceTemplatesCache}async aggregateResourceTemplates(){let X=new Set,Y=[];for(let[G,Q]of Object.entries(this.clients)){let J=await this.resolveClient(G),$=await this.fetchAllResourceTemplates(J);for(let Z of $){if(X.has(Z.uriTemplate)){console.warn(`GatewayClient: duplicate resource template "${Z.uriTemplate}" from client "${G}" \u2014 skipping`);continue}X.add(Z.uriTemplate),Y.push({...Z,_meta:{...Z._meta??{},gatewayClientId:G}})}}return{resourceTemplates:Y}}listPrompts(X,Y){if(!this.promptsCache)this.promptsCache=this.aggregatePrompts();return this.promptsCache}async aggregatePrompts(){let X=[];for(let[Y,G]of Object.entries(this.clients)){let Q=await this.resolveClient(Y),J=await this.fetchAllPrompts(Q),$=G.prompts,Z=$?new Set($):null;for(let W of J){if(Z&&!Z.has(W.name))continue;X.push({...W,name:this.namespace(Y,W.name),title:W.title??vI5(W.name),_meta:{...W._meta??{},gatewayClientId:Y}})}}return{prompts:X}}async callTool(X,Y,G){let[Q,J]=await this.resolveToolTarget(X.name);return(await this.resolveClient(Q)).callTool({...X,name:J},Y,G)}async readResource(X,Y){let G=await this.resolveResourceRoute(X.uri);return(await this.resolveClient(G)).readResource(X)}async getPrompt(X,Y){let[G,Q]=await this.resolvePromptTarget(X.name);return(await this.resolveClient(G)).getPrompt({...X,name:Q})}async resolveResourceRoute(X){let Y=this.resourceRouteMap.get(X);if(Y)return Y;if(this.resourcesCache=null,await this.listResources(),Y=this.resourceRouteMap.get(X),Y)return Y;throw Error(`GatewayClient: resource "${X}" not found in any upstream client`)}getServerCapabilities(){return{tools:{},resources:{},prompts:{}}}getInstructions(){return}refresh(){this.toolsCache=null,this.resourcesCache=null,this.resourceTemplatesCache=null,this.promptsCache=null}async close(){let X=[...this.resolvedClients.values()].map((Y)=>Y.then((G)=>G.close()).catch(()=>{}));await Promise.allSettled(X),await super.close()}}});var aT6=D(()=>{rT6()});var vA0;var oT6=D(()=>{aT6();oI1();vA0=class vA0 extends sj1{options;ctx;constructor(X,Y){let G=new Map(X.virtualMcp.connections.map((J)=>[J.connection_id,J])),Q={};for(let J of X.connections){let $=G.get(J.id);Q[J.id]={client:()=>Fr(J,Y,X.superUser??!1,X.mcpListCache),...$?.selected_tools!=null?{tools:$.selected_tools}:{},...$?.selected_resources!=null?{resources:$.selected_resources}:{},...$?.selected_prompts!=null?{prompts:$.selected_prompts}:{}}}super(Q,{clientInfo:{name:"virtual-mcp-passthrough",version:"1.0.0"},capabilities:{tasks:{list:{},cancel:{},requests:{tool:{call:{}}}}}});this.options=X;this.ctx=Y}async[Symbol.asyncDispose](){await this.close()}getInstructions(){return this.options.virtualMcp.metadata?.instructions??void 0}getConnectionTitleMap(){return new Map(this.options.connections.map((X)=>[X.id,X.title]))}}});function _I5(X,Y){if(X.connection_type!=="VIRTUAL")return!1;if(!Y||PB(Y))return!1;return X.id===Y}async function sT6(X,Y,G=!1){let Q=X.id,J=await Y.storage.virtualMcps.findById(Q);if(!J)throw Error(`Virtual MCP not found: ${Q}`);return QM(J,Y,"passthrough",G)}async function QM(X,Y,G,Q=!1,J){let $=X.connections.map((H)=>H.connection_id),K={connections:(await Y.tracer.startActiveSpan("mesh.virtual_mcp.load_connections",{attributes:{"virtual_mcp.id":X.id??"decopilot","virtual_mcp.connection_count":$.length}},async(H)=>{try{let U=await Promise.all($.map((B)=>Y.storage.connections.findById(B)));return H.setStatus({code:_A0.SpanStatusCode.OK}),U}catch(U){throw H.setStatus({code:_A0.SpanStatusCode.ERROR,message:U.message}),H.recordException(U),U}finally{H.end()}})).filter((H)=>H!==null&&H.status==="active"&&!_I5(H,X.id)),virtualMcp:X,superUser:Q,mcpListCache:nG()??void 0,listTimeoutMs:J?.listTimeoutMs};return new vA0(K,Y)}var _A0;var CG1=D(()=>{ZX();ZH();oT6();_A0=X1(b0(),1)});async function FW(X,Y,G=!1){if(X.connection_type==="VIRTUAL")return sT6(X,Y,G);return nT6(X,Y,G)}var HP0=D(()=>{tT6();CG1()});function ej1(X){return(Y)=>{if(Y instanceof N4&&Y.code===A4.MethodNotFound)return X;throw Y}}var eT6=D(()=>{uY()});function fA0(X,Y,G){let Q=Fr(X,Y,G,nG()??void 0),J=Tz(Q,{name:"mcp-mesh-enhanced",version:"1.0.0"},{capabilities:fI5,toolCallTimeoutMs:Iq});return J.server.setRequestHandler(ZE,async()=>{return await Q.listResources().catch(ej1({resources:[]}))}),J.server.setRequestHandler($E,async()=>{return await Q.listResourceTemplates().catch(ej1({resourceTemplates:[]}))}),J.server.setRequestHandler(WE,async()=>{return await Q.listPrompts().catch(ej1({prompts:[]}))}),J}var fI5;var XI6=D(()=>{ZX();uY();oI1();ZH();eT6();fI5={tools:{},resources:{},prompts:{}}});var hr=D(()=>{HP0();XI6()});var bI5,yI5,hI5,xI5,bA0;var YI6=D(()=>{eX1();sB6();GW();QN6();ZN6();Q41();hV();WN6();ZX();F0();y0();LD();ZH();hr();Zi();qD();hN0();bI5=[{name:/^(COLLECTION_REGISTRY_APP_LIST|REGISTRY_ITEM_LIST)$/,inputSchema:F.object({})}],yI5={LLM:hT1,LLMS:hT1,ASSISTANTS:oB6,MCP:JN6,OBJECT_STORAGE:nI,WORKFLOW:DO0,WORKFLOW_EXECUTION:UJ6,AI_GATEWAY_BILLING:$N6,EVENT_BUS:CT1,TRIGGER:vT1,REGISTRY:bI5,BRAND:yT1},hI5=cF.extend({binding:F.union([F.array(F.object({}).passthrough()),F.object({}).passthrough(),F.string()]).optional(),include_virtual:F.boolean().optional().describe("Whether to include VIRTUAL connections in the results. Defaults to false."),slug:F.string().optional().describe("Filter by connection slug. Matches against app_name, or a slug derived from connection_url or title.")}),xI5=jD(PZ),bA0=l1({name:"COLLECTION_CONNECTIONS_LIST",description:"List all connections in the organization with filtering, sorting, and pagination",annotations:{title:"List Connections",readOnlyHint:!0,destructiveHint:!1,idempotentHint:!0,openWorldHint:!1},inputSchema:hI5,outputSchema:xI5,handler:async(X,Y)=>{await Y.access.check();let G=s1(Y),Q=X.binding?typeof X.binding==="string"?(()=>{let B=yI5[X.binding.toUpperCase()];if(!B)throw Error(`Unknown binding: ${X.binding}`);return B})():X.binding:void 0,J=Q?jq1(Q):void 0,$=!!J,Z=X.limit??100,W=X.offset??0,{items:K,totalCount:H}=await Y.storage.connections.list(G.id,{includeVirtual:X.include_virtual??!1,slug:X.slug,where:X.where,orderBy:X.orderBy,limit:$?void 0:Z,offset:$?void 0:W});if(J){let B=nG(),N=JX.SELF(G.id);await Promise.all(K.map(async(O)=>{if(O.tools!==null)return;let z=O.id===N?async()=>{let{listManagementTools:E}=await Promise.resolve().then(() => (xr(),XV1));return E(Y)}:async()=>{let E=await FW(O,Y,!0);try{return(await E.listTools()).tools}finally{await E.close().catch(()=>{})}},w=await sP("tools",O.id,z,B);if(w!==null)O.tools=w}))}if(BF()){let B=N3(),N=JX.DEV_ASSETS(G.id);if(!K.some((O)=>O.id===N)){let O=Ji(G.id,B);if(!X.slug||V51(O)===X.slug)K.unshift(O)}}if($){let B=(await Promise.all(K.map(async(w)=>{if(!w.tools||w.tools.length===0)return null;return J.isImplementedBy(w.tools.map((P)=>({name:P.name,inputSchema:P.inputSchema,outputSchema:P.outputSchema})))?w:null}))).filter((w)=>w!==null),N=B.length,O=B.slice(W,W+Z),z=W+Z<N;return{items:O,totalCount:N,hasMore:z}}let U=W+Z<H;return{items:K,totalCount:H,hasMore:U}}})});var gI5,yA0;var GI6=D(()=>{GW();ZX();y0();LD();ZH();hr();Zi();qD();gI5=g51(PZ),yA0=l1({name:"COLLECTION_CONNECTIONS_GET",description:"Get a connection's configuration, tools list, and status by ID.",annotations:{title:"Get Connection",readOnlyHint:!0,destructiveHint:!1,idempotentHint:!0,openWorldHint:!1},_meta:{ui:{visibility:["app"]}},inputSchema:x51,outputSchema:gI5,handler:async(X,Y)=>{let G=s1(Y);if(await Y.access.check(),BF()&&ZD1(X.id,G.id))return{item:Ji(G.id,N3())};let Q=await Y.storage.connections.findById(X.id);if(!Q||Q.organization_id!==G.id)return{item:null};if(Q.tools===null){let J=JX.SELF(G.id),$=Q.id===J?async()=>{let{listManagementTools:W}=await Promise.resolve().then(() => (xr(),XV1));return W(Y)}:async()=>{let W=await FW(Q,Y,!0);try{return(await W.listTools()).tools}finally{await W.close().catch(()=>{})}},Z=await sP("tools",Q.id,$,nG(),(W)=>Y.pendingRevalidations.push(W));if(Z!==null)Q.tools=Z}return{item:Q}}})});function QI6(X,Y,G){if(Y.some((Q)=>Q!=="*"&&Q.startsWith("SELF::"))&&X.SELF===void 0)X.SELF={value:`${G}_self`}}async function mI5(X,Y,G,Q){for(let $ of Y){if($==="*")continue;let[Z]=KN6($),W=xT1(Z,X);if(W===void 0||W===null)throw Error(`Scope references key "${Z}" but it's not present in state`)}let J=HN6(X,Y);for(let $ of J){if($.endsWith("_self"))continue;let Z=await Q.storage.connections.findById($);if(!Z||Z.organization_id!==G)throw Error(`Referenced connection not found: ${$}`);try{await Q.access.check($)}catch(W){throw Error(`Access denied to referenced connection: ${$}. ${W.message}`)}}}var uI5,lI5,hA0;var JI6=D(()=>{KL0();hr();GM();F0();y0();ZH();b51();qD();uI5=F.object({id:F.string().describe("ID of the connection to update"),data:$61.describe("Partial connection data to update")}),lI5=F.object({item:PZ.describe("The updated connection entity")});hA0=l1({name:"COLLECTION_CONNECTIONS_UPDATE",description:"Update a connection's configuration. Re-fetches tools from the server on URL change.",annotations:{title:"Update Connection",readOnlyHint:!1,destructiveHint:!0,idempotentHint:!0,openWorldHint:!1},inputSchema:uI5,outputSchema:lI5,handler:async(X,Y)=>{B0(Y);let G=s1(Y);await Y.access.check();let Q=$6(Y);if(!Q)throw Error("User ID required to update connection");let{id:J,data:$}=X,Z=await Y.storage.connections.findById(J);if(!Z||Z.organization_id!==G.id)throw Error("Connection not found in organization");let W=$.connection_type??Z.connection_type,K=$.connection_url??Z.connection_url;if(W==="VIRTUAL"){let E=Kj(K);if(!E)throw Error("VIRTUAL connection requires connection_url in format: virtual://$virtual_mcp_id");let P=await Y.storage.virtualMcps.findById(E);if(!P)throw Error(`Virtual MCP not found: ${E}`);if(P.organization_id!==G.id)throw Error("Virtual MCP does not belong to the current organization");K=Hj(E)}let H=$.configuration_state??Z.configuration_state??{},U=$.configuration_scopes??Z.configuration_scopes??[];if($.configuration_state!==void 0||$.configuration_scopes!==void 0){if($.configuration_state!==void 0)H=$.configuration_state??{};else if(H===null||H===void 0)H={};if($.configuration_scopes!==void 0)U=$.configuration_scopes??[];if(U.length>0){let E=H;QI6(E,U,G.id),await mI5(E,U,G.id,Y)}}let B=$.connection_token??Z.connection_token;if(!B)try{let P=await new G$(Y.db,Y.vault).get(J);if(P?.accessToken)B=P.accessToken}catch{}let N=await CP({id:Z.id,title:$.title??Z.title,connection_type:W,connection_url:K,connection_token:B,connection_headers:$.connection_headers??Z.connection_headers}).catch(()=>null),O=N?.tools?.length?N.tools:null;if($.configuration_scopes===void 0&&N?.scopes?.length)U=N.scopes;QI6(H,U,G.id);let z={...$,connection_url:K,tools:null,configuration_state:H,configuration_scopes:U,updated_by:Q},w=await Y.storage.connections.update(J,z);if(O)nG()?.set("tools",J,O).catch(()=>{});if(($.configuration_state!==void 0||$.configuration_scopes!==void 0)&&H&&U)try{await(await FW(w,Y,!1)).callTool({name:"ON_MCP_CONFIGURATION",arguments:{state:H,scopes:U}})}catch(E){console.error("Failed to invoke ON_MCP_CONFIGURATION callback",E)}return{item:w}}})});var dI5,xA0;var ZI6=D(()=>{GW();F0();OY();y0();ZH();qD();dI5=u51.extend({force:F.boolean().optional().describe("If true, removes this connection from all agents that reference it before deleting")}),xA0=l1({name:"COLLECTION_CONNECTIONS_DELETE",description:"Permanently delete a connection. Set force=true to auto-remove from referencing Virtual MCPs.",annotations:{title:"Delete Connection",readOnlyHint:!1,destructiveHint:!0,idempotentHint:!0,openWorldHint:!1},inputSchema:dI5,outputSchema:l51(PZ),handler:async(X,Y)=>{B0(Y);let G=s1(Y);await Y.access.check();let Q=await Y.storage.connections.findById(X.id);if(!Q)throw Error(`Connection not found: ${X.id}`);if(Q.organization_id!==G.id)throw Error("Connection not found in organization");if(Q.metadata?.isFixed===!0)throw Error("This connection is a fixed system connection and cannot be deleted");let $=await Y.storage.virtualMcps.listByConnectionId(G.id,X.id);if($.length>0)if(X.force)await Y.storage.virtualMcps.removeConnectionReferences(X.id);else throw Error(JSON.stringify({code:"CONNECTION_IN_USE",agentNames:$.map((K)=>K.title)}));await Y.storage.connections.delete(X.id);let Z=await Y.storage.organizationSettings.get(G.id);if(Z?.registry_config){let{registries:K,blockedMcps:H}=Z.registry_config;if(X.id in K){let{[X.id]:U,...B}=K;await Y.storage.organizationSettings.upsert(G.id,{registry_config:{registries:B,blockedMcps:H}})}}nG()?.invalidate(X.id).catch(()=>{});let W=$6(Y);if(W)A6.capture({distinctId:W,event:"connection_deleted",groups:{organization:G.id},properties:{connection_id:Q.id,connection_type:Q.connection_type,app_name:Q.app_name??null,organization_id:G.id,forced:X.force??!1}});return{item:Q}}})});var gA0;var $I6=D(()=>{F0();y0();gA0=l1({name:"CONNECTION_TEST",description:"Test connection health and latency",annotations:{title:"Test Connection",readOnlyHint:!0,destructiveHint:!1,idempotentHint:!0,openWorldHint:!0},inputSchema:F.object({id:F.string()}),outputSchema:F.object({id:F.string(),healthy:F.boolean(),latencyMs:F.number()}),handler:async(X,Y)=>{let G=s1(Y);await Y.access.check();let Q=await Y.storage.connections.findById(X.id);if(!Q||Q.organization_id!==G.id)throw Error("Connection not found");let J=await Y.storage.connections.testConnection(X.id);return{id:X.id,...J}}})});var WI6=D(()=>{vB6();YI6();GI6();JI6();ZI6();$I6()});function KI6(X){if(X===null||X===void 0)return"NULL";if(typeof X==="number")return String(X);if(typeof X==="boolean")return X?"TRUE":"FALSE";if(typeof X==="string")return`'${X.replace(/'/g,"''")}'`;if(X instanceof Date)return`'${X.toISOString()}'`;return`'${JSON.stringify(X).replace(/'/g,"''")}'`}function pI5(X,Y){let G=X;for(let J=Y.length;J>=1;J--){let $=`$${J}`;if(G.includes($))G=G.replaceAll($,KI6(Y[J-1]))}let Q=[];for(let J=0;J<G.length;J++)if(G[J]==="?")Q.push(J);for(let J=Math.min(Q.length,Y.length)-1;J>=0;J--){let $=Q[J],Z=KI6(Y[J]);G=G.slice(0,$)+Z+G.slice($+1)}return G}function HI6(X){return X.replace(/-/g,"_")}function tI5(X){return`app_${HI6(X)}`}function rI5(X){return`app_role_${HI6(X)}`}function aI5(X){if(X instanceof Error){let Y=X.message.toLowerCase(),G=X.code;return G==="3F000"||G==="42704"||G==="22023"||Y.includes("schema")&&Y.includes("does not exist")||Y.includes("role")&&Y.includes("does not exist")}return!1}async function oI5(X,Y,G){if(await p1`CREATE SCHEMA IF NOT EXISTS ${p1.id(Y)}`.execute(X),!(await p1`
1951
+ ${Y}:`]}}function aA6({id:X,model:Y,created:G}){return{id:X!=null?X:void 0,modelId:Y!=null?Y:void 0,timestamp:G!=null?new Date(G*1000):void 0}}function oA6(X){switch(X){case"stop":return"stop";case"length":return"length";case"content_filter":return"content-filter";case"function_call":case"tool_calls":return"tool-calls";default:return"other"}}function gA5(X){return xA5.some((Y)=>X.startsWith(Y))}function XT6(X,Y,G){if(X==null)return{};let Q={};if(X.image_tokens!=null){let J=Math.floor(X.image_tokens/G),$=X.image_tokens-J*(G-1);Q.imageTokens=Y===G-1?$:J}if(X.text_tokens!=null){let J=Math.floor(X.text_tokens/G),$=X.text_tokens-J*(G-1);Q.textTokens=Y===G-1?$:J}return Q}async function lA5(X){if(!X)return;if(X.type==="url")return qP0(X.url);let Y=X.data instanceof Uint8Array?X.data:WG(X.data);return new Blob([Y],{type:X.mediaType})}function YT6(X){var Y,G,Q,J;if(X==null)return{inputTokens:{total:void 0,noCache:void 0,cacheRead:void 0,cacheWrite:void 0},outputTokens:{total:void 0,text:void 0,reasoning:void 0},raw:void 0};let{input_tokens:$,output_tokens:Z}=X,W=(G=(Y=X.input_tokens_details)==null?void 0:Y.cached_tokens)!=null?G:0,K=(J=(Q=X.output_tokens_details)==null?void 0:Q.reasoning_tokens)!=null?J:0;return{inputTokens:{total:$,noCache:$-W,cacheRead:W,cacheWrite:void 0},outputTokens:{total:Z,text:Z-K,reasoning:K},raw:X}}function ST5(X){return JSON.stringify(X===void 0?{}:X)}function GT6(X,Y){if(!Y)return!1;return Y.some((G)=>X.startsWith(G))}async function kT5({prompt:X,toolNameMapping:Y,systemMessageMode:G,providerOptionsName:Q,fileIdPrefixes:J,store:$,hasConversation:Z=!1,hasLocalShellTool:W=!1,hasShellTool:K=!1,hasApplyPatchTool:H=!1,customProviderToolNames:U}){var B,N,O,z,w,E,P,A,V,M,j,R,C,_,v,y,x;let i=[],t=[],b=new Set;for(let{role:m,content:e}of X)switch(m){case"system":{switch(G){case"system":{i.push({role:"system",content:e});break}case"developer":{i.push({role:"developer",content:e});break}case"remove":{t.push({type:"other",message:"system messages are removed for this model"});break}default:throw Error(`Unsupported system message mode: ${G}`)}break}case"user":{i.push({role:"user",content:e.map((s,N1)=>{var w1,B1,D1;switch(s.type){case"text":return{type:"input_text",text:s.text};case"file":if(s.mediaType.startsWith("image/")){let k1=s.mediaType==="image/*"?"image/jpeg":s.mediaType;return{type:"input_image",...s.data instanceof URL?{image_url:s.data.toString()}:typeof s.data==="string"&&GT6(s.data,J)?{file_id:s.data}:{image_url:`data:${k1};base64,${mJ(s.data)}`},detail:(B1=(w1=s.providerOptions)==null?void 0:w1[Q])==null?void 0:B1.imageDetail}}else if(s.mediaType==="application/pdf"){if(s.data instanceof URL)return{type:"input_file",file_url:s.data.toString()};return{type:"input_file",...typeof s.data==="string"&&GT6(s.data,J)?{file_id:s.data}:{filename:(D1=s.filename)!=null?D1:`part-${N1}.pdf`,file_data:`data:application/pdf;base64,${mJ(s.data)}`}}}else throw new E9({functionality:`file part media type ${s.mediaType}`})}})});break}case"assistant":{let s={};for(let N1 of e)switch(N1.type){case"text":{let w1=(B=N1.providerOptions)==null?void 0:B[Q],B1=w1==null?void 0:w1.itemId,D1=w1==null?void 0:w1.phase;if(Z&&B1!=null)break;if($&&B1!=null){i.push({type:"item_reference",id:B1});break}i.push({role:"assistant",content:[{type:"output_text",text:N1.text}],id:B1,...D1!=null&&{phase:D1}});break}case"tool-call":{let w1=(E=(O=(N=N1.providerOptions)==null?void 0:N[Q])==null?void 0:O.itemId)!=null?E:(w=(z=N1.providerMetadata)==null?void 0:z[Q])==null?void 0:w.itemId;if(Z&&w1!=null)break;let B1=Y.toProviderToolName(N1.toolName);if(B1==="tool_search"){if($&&w1!=null){i.push({type:"item_reference",id:w1});break}let D1=typeof N1.input==="string"?await IP0({text:N1.input,schema:FA0}):await N8({value:N1.input,schema:FA0}),k1=D1.call_id!=null?"client":"server";i.push({type:"tool_search_call",id:w1!=null?w1:N1.toolCallId,execution:k1,call_id:(P=D1.call_id)!=null?P:null,status:"completed",arguments:D1.arguments});break}if(N1.providerExecuted){if($&&w1!=null)i.push({type:"item_reference",id:w1});break}if($&&w1!=null){i.push({type:"item_reference",id:w1});break}if(W&&B1==="local_shell"){let D1=await N8({value:N1.input,schema:NT6});i.push({type:"local_shell_call",call_id:N1.toolCallId,id:w1,action:{type:"exec",command:D1.action.command,timeout_ms:D1.action.timeoutMs,user:D1.action.user,working_directory:D1.action.workingDirectory,env:D1.action.env}});break}if(K&&B1==="shell"){let D1=await N8({value:N1.input,schema:zT6});i.push({type:"shell_call",call_id:N1.toolCallId,id:w1,status:"completed",action:{commands:D1.action.commands,timeout_ms:D1.action.timeoutMs,max_output_length:D1.action.maxOutputLength}});break}if(H&&B1==="apply_patch"){let D1=await N8({value:N1.input,schema:HT6});i.push({type:"apply_patch_call",call_id:D1.callId,id:w1,status:"completed",operation:D1.operation});break}if(U==null?void 0:U.has(B1)){i.push({type:"custom_tool_call",call_id:N1.toolCallId,name:B1,input:typeof N1.input==="string"?N1.input:JSON.stringify(N1.input),id:w1});break}i.push({type:"function_call",call_id:N1.toolCallId,name:B1,arguments:ST5(N1.input),id:w1});break}case"tool-result":{if(N1.output.type==="execution-denied"||N1.output.type==="json"&&typeof N1.output.value==="object"&&N1.output.value!=null&&"type"in N1.output.value&&N1.output.value.type==="execution-denied")break;if(Z)break;let w1=Y.toProviderToolName(N1.toolName);if(w1==="tool_search"){let B1=(M=(V=(A=N1.providerOptions)==null?void 0:A[Q])==null?void 0:V.itemId)!=null?M:N1.toolCallId;if($)i.push({type:"item_reference",id:B1});else if(N1.output.type==="json"){let D1=await N8({value:N1.output.value,schema:UA0});i.push({type:"tool_search_output",id:B1,execution:"server",call_id:null,status:"completed",tools:D1.tools})}break}if(K&&w1==="shell"){if(N1.output.type==="json"){let B1=await N8({value:N1.output.value,schema:HA0});i.push({type:"shell_call_output",call_id:N1.toolCallId,output:B1.output.map((D1)=>({stdout:D1.stdout,stderr:D1.stderr,outcome:D1.outcome.type==="timeout"?{type:"timeout"}:{type:"exit",exit_code:D1.outcome.exitCode}}))})}break}if($){let B1=(C=(R=(j=N1.providerOptions)==null?void 0:j[Q])==null?void 0:R.itemId)!=null?C:N1.toolCallId;i.push({type:"item_reference",id:B1})}else t.push({type:"other",message:`Results for OpenAI tool ${N1.toolName} are not sent to the API when store is false`});break}case"reasoning":{let w1=await S9({provider:Q,providerOptions:N1.providerOptions,schema:CT5}),B1=w1==null?void 0:w1.itemId;if(Z&&B1!=null)break;if(B1!=null){let D1=s[B1];if($){if(D1===void 0)i.push({type:"item_reference",id:B1}),s[B1]={type:"reasoning",id:B1,summary:[]}}else{let k1=[];if(N1.text.length>0)k1.push({type:"summary_text",text:N1.text});else if(D1!==void 0)t.push({type:"other",message:`Cannot append empty reasoning part to existing reasoning sequence. Skipping reasoning part: ${JSON.stringify(N1)}.`});if(D1===void 0)s[B1]={type:"reasoning",id:B1,encrypted_content:w1==null?void 0:w1.reasoningEncryptedContent,summary:k1},i.push(s[B1]);else if(D1.summary.push(...k1),(w1==null?void 0:w1.reasoningEncryptedContent)!=null)D1.encrypted_content=w1.reasoningEncryptedContent}}else{let D1=w1==null?void 0:w1.reasoningEncryptedContent;if(D1!=null){let k1=[];if(N1.text.length>0)k1.push({type:"summary_text",text:N1.text});i.push({type:"reasoning",encrypted_content:D1,summary:k1})}else t.push({type:"other",message:`Non-OpenAI reasoning parts are not supported. Skipping reasoning part: ${JSON.stringify(N1)}.`})}break}}break}case"tool":{for(let s of e){if(s.type==="tool-approval-response"){let D1=s;if(b.has(D1.approvalId))continue;if(b.add(D1.approvalId),$)i.push({type:"item_reference",id:D1.approvalId});i.push({type:"mcp_approval_response",approval_request_id:D1.approvalId,approve:D1.approved});continue}let N1=s.output;if(N1.type==="execution-denied"){if((v=(_=N1.providerOptions)==null?void 0:_.openai)==null?void 0:v.approvalId)continue}let w1=Y.toProviderToolName(s.toolName);if(w1==="tool_search"&&N1.type==="json"){let D1=await N8({value:N1.value,schema:UA0});i.push({type:"tool_search_output",execution:"client",call_id:s.toolCallId,status:"completed",tools:D1.tools});continue}if(W&&w1==="local_shell"&&N1.type==="json"){let D1=await N8({value:N1.value,schema:OT6});i.push({type:"local_shell_call_output",call_id:s.toolCallId,output:D1.output});continue}if(K&&w1==="shell"&&N1.type==="json"){let D1=await N8({value:N1.value,schema:HA0});i.push({type:"shell_call_output",call_id:s.toolCallId,output:D1.output.map((k1)=>({stdout:k1.stdout,stderr:k1.stderr,outcome:k1.outcome.type==="timeout"?{type:"timeout"}:{type:"exit",exit_code:k1.outcome.exitCode}}))});continue}if(H&&s.toolName==="apply_patch"&&N1.type==="json"){let D1=await N8({value:N1.value,schema:FT6});i.push({type:"apply_patch_call_output",call_id:s.toolCallId,status:D1.status,output:D1.output});continue}if(U==null?void 0:U.has(w1)){let D1;switch(N1.type){case"text":case"error-text":D1=N1.value;break;case"execution-denied":D1=(y=N1.reason)!=null?y:"Tool execution denied.";break;case"json":case"error-json":D1=JSON.stringify(N1.value);break;case"content":D1=N1.value.map((k1)=>{var o1;switch(k1.type){case"text":return{type:"input_text",text:k1.text};case"image-data":return{type:"input_image",image_url:`data:${k1.mediaType};base64,${k1.data}`};case"image-url":return{type:"input_image",image_url:k1.url};case"file-data":return{type:"input_file",filename:(o1=k1.filename)!=null?o1:"data",file_data:`data:${k1.mediaType};base64,${k1.data}`};case"file-url":return{type:"input_file",file_url:k1.url};default:t.push({type:"other",message:`unsupported custom tool content part type: ${k1.type}`});return}}).filter(c2);break;default:D1=""}i.push({type:"custom_tool_call_output",call_id:s.toolCallId,output:D1});continue}let B1;switch(N1.type){case"text":case"error-text":B1=N1.value;break;case"execution-denied":B1=(x=N1.reason)!=null?x:"Tool execution denied.";break;case"json":case"error-json":B1=JSON.stringify(N1.value);break;case"content":B1=N1.value.map((D1)=>{var k1;switch(D1.type){case"text":return{type:"input_text",text:D1.text};case"image-data":return{type:"input_image",image_url:`data:${D1.mediaType};base64,${D1.data}`};case"image-url":return{type:"input_image",image_url:D1.url};case"file-data":return{type:"input_file",filename:(k1=D1.filename)!=null?k1:"data",file_data:`data:${D1.mediaType};base64,${D1.data}`};case"file-url":return{type:"input_file",file_url:D1.url};default:{t.push({type:"other",message:`unsupported tool content part type: ${D1.type}`});return}}}).filter(c2);break}i.push({type:"function_call_output",call_id:s.toolCallId,output:B1})}break}default:throw Error(`Unsupported role: ${m}`)}if(!$&&i.some((m)=>("type"in m)&&m.type==="reasoning"&&m.encrypted_content==null))t.push({type:"other",message:"Reasoning parts without encrypted content are not supported when store is false. Skipping reasoning parts."}),i=i.filter((m)=>!("type"in m)||m.type!=="reasoning"||m.encrypted_content!=null);return{input:i,warnings:t}}function KA0({finishReason:X,hasFunctionCall:Y}){switch(X){case void 0:case null:return Y?"tool-calls":"stop";case"max_output_tokens":return"length";case"content_filter":return"content-filter";default:return Y?"tool-calls":"other"}}async function bT5({tools:X,toolChoice:Y,toolNameMapping:G,customProviderToolNames:Q}){var J,$;X=(X==null?void 0:X.length)?X:void 0;let Z=[];if(X==null)return{tools:void 0,toolChoice:void 0,toolWarnings:Z};let W=[],K=Q!=null?Q:new Set;for(let U of X)switch(U.type){case"function":{let B=(J=U.providerOptions)==null?void 0:J.openai,N=B==null?void 0:B.deferLoading;W.push({type:"function",name:U.name,description:U.description,parameters:U.inputSchema,...U.strict!=null?{strict:U.strict}:{},...N!=null?{defer_loading:N}:{}});break}case"provider":{switch(U.id){case"openai.file_search":{let B=await N8({value:U.args,schema:eA5});W.push({type:"file_search",vector_store_ids:B.vectorStoreIds,max_num_results:B.maxNumResults,ranking_options:B.ranking?{ranker:B.ranking.ranker,score_threshold:B.ranking.scoreThreshold}:void 0,filters:B.filters});break}case"openai.local_shell":{W.push({type:"local_shell"});break}case"openai.shell":{let B=await N8({value:U.args,schema:HT5});W.push({type:"shell",...B.environment&&{environment:yT5(B.environment)}});break}case"openai.apply_patch":{W.push({type:"apply_patch"});break}case"openai.web_search_preview":{let B=await N8({value:U.args,schema:ET5});W.push({type:"web_search_preview",search_context_size:B.searchContextSize,user_location:B.userLocation});break}case"openai.web_search":{let B=await N8({value:U.args,schema:OT5});W.push({type:"web_search",filters:B.filters!=null?{allowed_domains:B.filters.allowedDomains}:void 0,external_web_access:B.externalWebAccess,search_context_size:B.searchContextSize,user_location:B.userLocation});break}case"openai.code_interpreter":{let B=await N8({value:U.args,schema:pA5});W.push({type:"code_interpreter",container:B.container==null?{type:"auto",file_ids:void 0}:typeof B.container==="string"?B.container:{type:"auto",file_ids:B.container.fileIds}});break}case"openai.image_generation":{let B=await N8({value:U.args,schema:GT5});W.push({type:"image_generation",background:B.background,input_fidelity:B.inputFidelity,input_image_mask:B.inputImageMask?{file_id:B.inputImageMask.fileId,image_url:B.inputImageMask.imageUrl}:void 0,model:B.model,moderation:B.moderation,partial_images:B.partialImages,quality:B.quality,output_compression:B.outputCompression,output_format:B.outputFormat,size:B.size});break}case"openai.mcp":{let B=await N8({value:U.args,schema:TT5}),N=(w)=>({tool_names:w.toolNames}),O=B.requireApproval,z=O==null?void 0:typeof O==="string"?O:O.never!=null?{never:N(O.never)}:void 0;W.push({type:"mcp",server_label:B.serverLabel,allowed_tools:Array.isArray(B.allowedTools)?B.allowedTools:B.allowedTools?{read_only:B.allowedTools.readOnly,tool_names:B.allowedTools.toolNames}:void 0,authorization:B.authorization,connector_id:B.connectorId,headers:B.headers,require_approval:z!=null?z:"never",server_description:B.serverDescription,server_url:B.serverUrl});break}case"openai.custom":{let B=await N8({value:U.args,schema:rA5});W.push({type:"custom",name:B.name,description:B.description,format:B.format}),K.add(B.name);break}case"openai.tool_search":{let B=await N8({value:U.args,schema:UT5});W.push({type:"tool_search",...B.execution!=null?{execution:B.execution}:{},...B.description!=null?{description:B.description}:{},...B.parameters!=null?{parameters:B.parameters}:{}});break}}break}default:Z.push({type:"unsupported",feature:`function tool ${U}`});break}if(Y==null)return{tools:W,toolChoice:void 0,toolWarnings:Z};let H=Y.type;switch(H){case"auto":case"none":case"required":return{tools:W,toolChoice:H,toolWarnings:Z};case"tool":{let U=($=G==null?void 0:G.toProviderToolName(Y.toolName))!=null?$:Y.toolName;return{tools:W,toolChoice:U==="code_interpreter"||U==="file_search"||U==="image_generation"||U==="web_search_preview"||U==="web_search"||U==="mcp"||U==="apply_patch"?{type:U}:K.has(U)?{type:"custom",name:U}:{type:"function",name:U},toolWarnings:Z}}default:throw new E9({functionality:`tool choice type: ${H}`})}}function yT5(X){if(X.type==="containerReference")return{type:"container_reference",container_id:X.containerId};if(X.type==="containerAuto"){let G=X;return{type:"container_auto",file_ids:G.fileIds,memory_limit:G.memoryLimit,network_policy:G.networkPolicy==null?void 0:G.networkPolicy.type==="disabled"?{type:"disabled"}:{type:"allowlist",allowed_domains:G.networkPolicy.allowedDomains,domain_secrets:G.networkPolicy.domainSecrets},skills:hT5(G.skills)}}return{type:"local",skills:X.skills}}function hT5(X){return X==null?void 0:X.map((Y)=>Y.type==="skillReference"?{type:"skill_reference",skill_id:Y.skillId,version:Y.version}:{type:"inline",name:Y.name,description:Y.description,source:{type:"base64",media_type:Y.source.mediaType,data:Y.source.data}})}function JT6(X){var Y,G;let Q={};for(let J of X){if(J.role!=="assistant")continue;for(let $ of J.content){if($.type!=="tool-call")continue;let Z=(G=(Y=$.providerOptions)==null?void 0:Y.openai)==null?void 0:G.approvalRequestId;if(Z!=null)Q[Z]=$.toolCallId}}return Q}function gT5(X){return X.type==="response.output_text.delta"}function uT5(X){return X.type==="response.output_item.done"}function lT5(X){return X.type==="response.completed"||X.type==="response.incomplete"}function mT5(X){return X.type==="response.failed"}function dT5(X){return X.type==="response.created"}function cT5(X){return X.type==="response.function_call_arguments.delta"}function iT5(X){return X.type==="response.custom_tool_call_input.delta"}function pT5(X){return X.type==="response.image_generation_call.partial_image"}function nT5(X){return X.type==="response.code_interpreter_call_code.delta"}function tT5(X){return X.type==="response.code_interpreter_call_code.done"}function rT5(X){return X.type==="response.apply_patch_call_operation_diff.delta"}function aT5(X){return X.type==="response.apply_patch_call_operation_diff.done"}function ZT6(X){return X.type==="response.output_item.added"}function oT5(X){return X.type==="response.output_text.annotation.added"}function sT5(X){return X.type==="error"}function $T6(X){var Y;if(X==null)return{};switch(X.type){case"search":return{action:{type:"search",query:(Y=X.query)!=null?Y:void 0},...X.sources!=null&&{sources:X.sources}};case"open_page":return{action:{type:"openPage",url:X.url}};case"find_in_page":return{action:{type:"findInPage",url:X.url,pattern:X.pattern}}}}function YM(X){return JSON.stringify(X).slice(1,-1)}function OA0(X={}){var Y,G;let Q=(Y=Sq(yN({settingValue:X.baseURL,environmentVariableName:"OPENAI_BASE_URL"})))!=null?Y:"https://api.openai.com/v1",J=(G=X.name)!=null?G:"openai",$=()=>_5({Authorization:`Bearer ${wr({apiKey:X.apiKey,environmentVariableName:"OPENAI_API_KEY",description:"OpenAI"})}`,"OpenAI-Organization":X.organization,"OpenAI-Project":X.project,...X.headers},`ai-sdk/openai/${JI5}`),Z=(w)=>new SA5(w,{provider:`${J}.chat`,url:({path:E})=>`${Q}${E}`,headers:$,fetch:X.fetch}),W=(w)=>new _A5(w,{provider:`${J}.completion`,url:({path:E})=>`${Q}${E}`,headers:$,fetch:X.fetch}),K=(w)=>new yA5(w,{provider:`${J}.embedding`,url:({path:E})=>`${Q}${E}`,headers:$,fetch:X.fetch}),H=(w)=>new uA5(w,{provider:`${J}.image`,url:({path:E})=>`${Q}${E}`,headers:$,fetch:X.fetch}),U=(w)=>new QI5(w,{provider:`${J}.transcription`,url:({path:E})=>`${Q}${E}`,headers:$,fetch:X.fetch}),B=(w)=>new XI5(w,{provider:`${J}.speech`,url:({path:E})=>`${Q}${E}`,headers:$,fetch:X.fetch}),N=(w)=>{if(new.target)throw Error("The OpenAI model function cannot be called with the new keyword.");return O(w)},O=(w)=>{return new xT5(w,{provider:`${J}.responses`,url:({path:E})=>`${Q}${E}`,headers:$,fetch:X.fetch,fileIdPrefixes:["file-"]})},z=function(w){return N(w)};return z.specificationVersion="v3",z.languageModel=N,z.chat=Z,z.completion=W,z.responses=O,z.embedding=K,z.embeddingModel=K,z.textEmbedding=K,z.textEmbeddingModel=K,z.image=H,z.imageModel=H,z.transcription=U,z.transcriptionModel=U,z.speech=B,z.speechModel=B,z.tools=RT5,z}var NA0,NU,jA5,VA5,MA5,SA5=class{constructor(X,Y){this.specificationVersion="v3",this.supportedUrls={"image/*":[/^https?:\/\/.*$/]},this.modelId=X,this.config=Y}get provider(){return this.config.provider}async getArgs({prompt:X,maxOutputTokens:Y,temperature:G,topP:Q,topK:J,frequencyPenalty:$,presencePenalty:Z,stopSequences:W,responseFormat:K,seed:H,tools:U,toolChoice:B,providerOptions:N}){var O,z,w,E,P;let A=[],V=(O=await S9({provider:"openai",providerOptions:N,schema:MA5}))!=null?O:{},M=KT6(this.modelId),j=(z=V.forceReasoning)!=null?z:M.isReasoningModel;if(J!=null)A.push({type:"unsupported",feature:"topK"});let{messages:R,warnings:C}=IA5({prompt:X,systemMessageMode:(w=V.systemMessageMode)!=null?w:j?"developer":M.systemMessageMode});A.push(...C);let _=(E=V.strictJsonSchema)!=null?E:!0,v={model:this.modelId,logit_bias:V.logitBias,logprobs:V.logprobs===!0||typeof V.logprobs==="number"?!0:void 0,top_logprobs:typeof V.logprobs==="number"?V.logprobs:typeof V.logprobs==="boolean"?V.logprobs?0:void 0:void 0,user:V.user,parallel_tool_calls:V.parallelToolCalls,max_tokens:Y,temperature:G,top_p:Q,frequency_penalty:$,presence_penalty:Z,response_format:(K==null?void 0:K.type)==="json"?K.schema!=null?{type:"json_schema",json_schema:{schema:K.schema,strict:_,name:(P=K.name)!=null?P:"response",description:K.description}}:{type:"json_object"}:void 0,stop:W,seed:H,verbosity:V.textVerbosity,max_completion_tokens:V.maxCompletionTokens,store:V.store,metadata:V.metadata,prediction:V.prediction,reasoning_effort:V.reasoningEffort,service_tier:V.serviceTier,prompt_cache_key:V.promptCacheKey,prompt_cache_retention:V.promptCacheRetention,safety_identifier:V.safetyIdentifier,messages:R};if(j){if(V.reasoningEffort!=="none"||!M.supportsNonReasoningParameters){if(v.temperature!=null)v.temperature=void 0,A.push({type:"unsupported",feature:"temperature",details:"temperature is not supported for reasoning models"});if(v.top_p!=null)v.top_p=void 0,A.push({type:"unsupported",feature:"topP",details:"topP is not supported for reasoning models"});if(v.logprobs!=null)v.logprobs=void 0,A.push({type:"other",message:"logprobs is not supported for reasoning models"})}if(v.frequency_penalty!=null)v.frequency_penalty=void 0,A.push({type:"unsupported",feature:"frequencyPenalty",details:"frequencyPenalty is not supported for reasoning models"});if(v.presence_penalty!=null)v.presence_penalty=void 0,A.push({type:"unsupported",feature:"presencePenalty",details:"presencePenalty is not supported for reasoning models"});if(v.logit_bias!=null)v.logit_bias=void 0,A.push({type:"other",message:"logitBias is not supported for reasoning models"});if(v.top_logprobs!=null)v.top_logprobs=void 0,A.push({type:"other",message:"topLogprobs is not supported for reasoning models"});if(v.max_tokens!=null){if(v.max_completion_tokens==null)v.max_completion_tokens=v.max_tokens;v.max_tokens=void 0}}else if(this.modelId.startsWith("gpt-4o-search-preview")||this.modelId.startsWith("gpt-4o-mini-search-preview")){if(v.temperature!=null)v.temperature=void 0,A.push({type:"unsupported",feature:"temperature",details:"temperature is not supported for the search preview models and has been removed."})}if(V.serviceTier==="flex"&&!M.supportsFlexProcessing)A.push({type:"unsupported",feature:"serviceTier",details:"flex processing is only available for o3, o4-mini, and gpt-5 models"}),v.service_tier=void 0;if(V.serviceTier==="priority"&&!M.supportsPriorityProcessing)A.push({type:"unsupported",feature:"serviceTier",details:"priority processing is only available for supported models (gpt-4, gpt-5, gpt-5-mini, o3, o4-mini) and requires Enterprise access. gpt-5-nano is not supported"}),v.service_tier=void 0;let{tools:y,toolChoice:x,toolWarnings:i}=RA5({tools:U,toolChoice:B});return{args:{...v,tools:y,tool_choice:x},warnings:[...A,...i]}}async doGenerate(X){var Y,G,Q,J,$,Z,W;let{args:K,warnings:H}=await this.getArgs(X),{responseHeaders:U,value:B,rawValue:N}=await n8({url:this.config.url({path:"/chat/completions",modelId:this.modelId}),headers:S8(this.config.headers(),X.headers),body:K,failedResponseHandler:NU,successfulResponseHandler:u8(jA5),abortSignal:X.abortSignal,fetch:this.config.fetch}),O=B.choices[0],z=[],w=O.message.content;if(w!=null&&w.length>0)z.push({type:"text",text:w});for(let V of(Y=O.message.tool_calls)!=null?Y:[])z.push({type:"tool-call",toolCallId:(G=V.id)!=null?G:e4(),toolName:V.function.name,input:V.function.arguments});for(let V of(Q=O.message.annotations)!=null?Q:[])z.push({type:"source",sourceType:"url",id:e4(),url:V.url_citation.url,title:V.url_citation.title});let E=(J=B.usage)==null?void 0:J.completion_tokens_details,P=($=B.usage)==null?void 0:$.prompt_tokens_details,A={openai:{}};if((E==null?void 0:E.accepted_prediction_tokens)!=null)A.openai.acceptedPredictionTokens=E==null?void 0:E.accepted_prediction_tokens;if((E==null?void 0:E.rejected_prediction_tokens)!=null)A.openai.rejectedPredictionTokens=E==null?void 0:E.rejected_prediction_tokens;if(((Z=O.logprobs)==null?void 0:Z.content)!=null)A.openai.logprobs=O.logprobs.content;return{content:z,finishReason:{unified:tA6(O.finish_reason),raw:(W=O.finish_reason)!=null?W:void 0},usage:nA6(B.usage),request:{body:K},response:{...WA0(B),headers:U,body:N},warnings:H,providerMetadata:A}}async doStream(X){let{args:Y,warnings:G}=await this.getArgs(X),Q={...Y,stream:!0,stream_options:{include_usage:!0}},{responseHeaders:J,value:$}=await n8({url:this.config.url({path:"/chat/completions",modelId:this.modelId}),headers:S8(this.config.headers(),X.headers),body:Q,failedResponseHandler:NU,successfulResponseHandler:HH(VA5),abortSignal:X.abortSignal,fetch:this.config.fetch}),Z=[],W={unified:"other",raw:void 0},K=void 0,H=!1,U=!1,B={openai:{}};return{stream:$.pipeThrough(new TransformStream({start(N){N.enqueue({type:"stream-start",warnings:G})},transform(N,O){var z,w,E,P,A,V,M,j,R,C,_,v,y,x,i,t,b;if(X.includeRawChunks)O.enqueue({type:"raw",rawValue:N.rawValue});if(!N.success){W={unified:"error",raw:void 0},O.enqueue({type:"error",error:N.error});return}let m=N.value;if("error"in m){W={unified:"error",raw:void 0},O.enqueue({type:"error",error:m.error});return}if(!H){let N1=WA0(m);if(Object.values(N1).some(Boolean))H=!0,O.enqueue({type:"response-metadata",...WA0(m)})}if(m.usage!=null){if(K=m.usage,((z=m.usage.completion_tokens_details)==null?void 0:z.accepted_prediction_tokens)!=null)B.openai.acceptedPredictionTokens=(w=m.usage.completion_tokens_details)==null?void 0:w.accepted_prediction_tokens;if(((E=m.usage.completion_tokens_details)==null?void 0:E.rejected_prediction_tokens)!=null)B.openai.rejectedPredictionTokens=(P=m.usage.completion_tokens_details)==null?void 0:P.rejected_prediction_tokens}let e=m.choices[0];if((e==null?void 0:e.finish_reason)!=null)W={unified:tA6(e.finish_reason),raw:e.finish_reason};if(((A=e==null?void 0:e.logprobs)==null?void 0:A.content)!=null)B.openai.logprobs=e.logprobs.content;if((e==null?void 0:e.delta)==null)return;let s=e.delta;if(s.content!=null){if(!U)O.enqueue({type:"text-start",id:"0"}),U=!0;O.enqueue({type:"text-delta",id:"0",delta:s.content})}if(s.tool_calls!=null)for(let N1 of s.tool_calls){let w1=N1.index;if(Z[w1]==null){if(N1.type!=null&&N1.type!=="function")throw new Nr({data:N1,message:"Expected 'function' type."});if(N1.id==null)throw new Nr({data:N1,message:"Expected 'id' to be a string."});if(((V=N1.function)==null?void 0:V.name)==null)throw new Nr({data:N1,message:"Expected 'function.name' to be a string."});O.enqueue({type:"tool-input-start",id:N1.id,toolName:N1.function.name}),Z[w1]={id:N1.id,type:"function",function:{name:N1.function.name,arguments:(M=N1.function.arguments)!=null?M:""},hasFinished:!1};let D1=Z[w1];if(((j=D1.function)==null?void 0:j.name)!=null&&((R=D1.function)==null?void 0:R.arguments)!=null){if(D1.function.arguments.length>0)O.enqueue({type:"tool-input-delta",id:D1.id,delta:D1.function.arguments});if(jP0(D1.function.arguments))O.enqueue({type:"tool-input-end",id:D1.id}),O.enqueue({type:"tool-call",toolCallId:(C=D1.id)!=null?C:e4(),toolName:D1.function.name,input:D1.function.arguments}),D1.hasFinished=!0}continue}let B1=Z[w1];if(B1.hasFinished)continue;if(((_=N1.function)==null?void 0:_.arguments)!=null)B1.function.arguments+=(y=(v=N1.function)==null?void 0:v.arguments)!=null?y:"";if(O.enqueue({type:"tool-input-delta",id:B1.id,delta:(x=N1.function.arguments)!=null?x:""}),((i=B1.function)==null?void 0:i.name)!=null&&((t=B1.function)==null?void 0:t.arguments)!=null&&jP0(B1.function.arguments))O.enqueue({type:"tool-input-end",id:B1.id}),O.enqueue({type:"tool-call",toolCallId:(b=B1.id)!=null?b:e4(),toolName:B1.function.name,input:B1.function.arguments}),B1.hasFinished=!0}if(s.annotations!=null)for(let N1 of s.annotations)O.enqueue({type:"source",sourceType:"url",id:e4(),url:N1.url_citation.url,title:N1.url_citation.title})},flush(N){if(U)N.enqueue({type:"text-end",id:"0"});N.enqueue({type:"finish",finishReason:W,usage:nA6(K),...B!=null?{providerMetadata:B}:{}})}})),request:{body:Q},response:{headers:J}}}},CA5,vA5,sA6,_A5=class{constructor(X,Y){this.specificationVersion="v3",this.supportedUrls={},this.modelId=X,this.config=Y}get providerOptionsName(){return this.config.provider.split(".")[0].trim()}get provider(){return this.config.provider}async getArgs({prompt:X,maxOutputTokens:Y,temperature:G,topP:Q,topK:J,frequencyPenalty:$,presencePenalty:Z,stopSequences:W,responseFormat:K,tools:H,toolChoice:U,seed:B,providerOptions:N}){let O=[],z={...await S9({provider:"openai",providerOptions:N,schema:sA6}),...await S9({provider:this.providerOptionsName,providerOptions:N,schema:sA6})};if(J!=null)O.push({type:"unsupported",feature:"topK"});if(H==null?void 0:H.length)O.push({type:"unsupported",feature:"tools"});if(U!=null)O.push({type:"unsupported",feature:"toolChoice"});if(K!=null&&K.type!=="text")O.push({type:"unsupported",feature:"responseFormat",details:"JSON response format is not supported."});let{prompt:w,stopSequences:E}=kA5({prompt:X}),P=[...E!=null?E:[],...W!=null?W:[]];return{args:{model:this.modelId,echo:z.echo,logit_bias:z.logitBias,logprobs:(z==null?void 0:z.logprobs)===!0?0:(z==null?void 0:z.logprobs)===!1?void 0:z==null?void 0:z.logprobs,suffix:z.suffix,user:z.user,max_tokens:Y,temperature:G,top_p:Q,frequency_penalty:$,presence_penalty:Z,seed:B,prompt:w,stop:P.length>0?P:void 0},warnings:O}}async doGenerate(X){var Y;let{args:G,warnings:Q}=await this.getArgs(X),{responseHeaders:J,value:$,rawValue:Z}=await n8({url:this.config.url({path:"/completions",modelId:this.modelId}),headers:S8(this.config.headers(),X.headers),body:G,failedResponseHandler:NU,successfulResponseHandler:u8(CA5),abortSignal:X.abortSignal,fetch:this.config.fetch}),W=$.choices[0],K={openai:{}};if(W.logprobs!=null)K.openai.logprobs=W.logprobs;return{content:[{type:"text",text:W.text}],usage:rA6($.usage),finishReason:{unified:oA6(W.finish_reason),raw:(Y=W.finish_reason)!=null?Y:void 0},request:{body:G},response:{...aA6($),headers:J,body:Z},providerMetadata:K,warnings:Q}}async doStream(X){let{args:Y,warnings:G}=await this.getArgs(X),Q={...Y,stream:!0,stream_options:{include_usage:!0}},{responseHeaders:J,value:$}=await n8({url:this.config.url({path:"/completions",modelId:this.modelId}),headers:S8(this.config.headers(),X.headers),body:Q,failedResponseHandler:NU,successfulResponseHandler:HH(vA5),abortSignal:X.abortSignal,fetch:this.config.fetch}),Z={unified:"other",raw:void 0},W={openai:{}},K=void 0,H=!0;return{stream:$.pipeThrough(new TransformStream({start(U){U.enqueue({type:"stream-start",warnings:G})},transform(U,B){if(X.includeRawChunks)B.enqueue({type:"raw",rawValue:U.rawValue});if(!U.success){Z={unified:"error",raw:void 0},B.enqueue({type:"error",error:U.error});return}let N=U.value;if("error"in N){Z={unified:"error",raw:void 0},B.enqueue({type:"error",error:N.error});return}if(H)H=!1,B.enqueue({type:"response-metadata",...aA6(N)}),B.enqueue({type:"text-start",id:"0"});if(N.usage!=null)K=N.usage;let O=N.choices[0];if((O==null?void 0:O.finish_reason)!=null)Z={unified:oA6(O.finish_reason),raw:O.finish_reason};if((O==null?void 0:O.logprobs)!=null)W.openai.logprobs=O.logprobs;if((O==null?void 0:O.text)!=null&&O.text.length>0)B.enqueue({type:"text-delta",id:"0",delta:O.text})},flush(U){if(!H)U.enqueue({type:"text-end",id:"0"});U.enqueue({type:"finish",finishReason:Z,providerMetadata:W,usage:rA6(K)})}})),request:{body:Q},response:{headers:J}}}},fA5,bA5,yA5=class{constructor(X,Y){this.specificationVersion="v3",this.maxEmbeddingsPerCall=2048,this.supportsParallelCalls=!0,this.modelId=X,this.config=Y}get provider(){return this.config.provider}async doEmbed({values:X,headers:Y,abortSignal:G,providerOptions:Q}){var J;if(X.length>this.maxEmbeddingsPerCall)throw new Or({provider:this.provider,modelId:this.modelId,maxEmbeddingsPerCall:this.maxEmbeddingsPerCall,values:X});let $=(J=await S9({provider:"openai",providerOptions:Q,schema:fA5}))!=null?J:{},{responseHeaders:Z,value:W,rawValue:K}=await n8({url:this.config.url({path:"/embeddings",modelId:this.modelId}),headers:S8(this.config.headers(),Y),body:{model:this.modelId,input:X,encoding_format:"float",dimensions:$.dimensions,user:$.user},failedResponseHandler:NU,successfulResponseHandler:u8(bA5),abortSignal:G,fetch:this.config.fetch});return{warnings:[],embeddings:W.data.map((H)=>H.embedding),usage:W.usage?{tokens:W.usage.prompt_tokens}:void 0,response:{headers:Z,body:K}}}},eA6,hA5,xA5,uA5=class{constructor(X,Y){this.modelId=X,this.config=Y,this.specificationVersion="v3"}get maxImagesPerCall(){var X;return(X=hA5[this.modelId])!=null?X:1}get provider(){return this.config.provider}async doGenerate({prompt:X,files:Y,mask:G,n:Q,size:J,aspectRatio:$,seed:Z,providerOptions:W,headers:K,abortSignal:H}){var U,B,N,O,z,w,E,P,A,V,M;let j=[];if($!=null)j.push({type:"unsupported",feature:"aspectRatio",details:"This model does not support aspect ratio. Use `size` instead."});if(Z!=null)j.push({type:"unsupported",feature:"seed"});let R=(N=(B=(U=this.config._internal)==null?void 0:U.currentDate)==null?void 0:B.call(U))!=null?N:new Date;if(Y!=null){let{value:v,responseHeaders:y}=await Wj1({url:this.config.url({path:"/images/edits",modelId:this.modelId}),headers:S8(this.config.headers(),K),formData:bE6({model:this.modelId,prompt:X,image:await Promise.all(Y.map((x)=>x.type==="file"?new Blob([x.data instanceof Uint8Array?new Blob([x.data],{type:x.mediaType}):new Blob([WG(x.data)],{type:x.mediaType})],{type:x.mediaType}):qP0(x.url))),mask:G!=null?await lA5(G):void 0,n:Q,size:J,...(O=W.openai)!=null?O:{}}),failedResponseHandler:NU,successfulResponseHandler:u8(eA6),abortSignal:H,fetch:this.config.fetch});return{images:v.data.map((x)=>x.b64_json),warnings:j,usage:v.usage!=null?{inputTokens:(z=v.usage.input_tokens)!=null?z:void 0,outputTokens:(w=v.usage.output_tokens)!=null?w:void 0,totalTokens:(E=v.usage.total_tokens)!=null?E:void 0}:void 0,response:{timestamp:R,modelId:this.modelId,headers:y},providerMetadata:{openai:{images:v.data.map((x,i)=>{var t,b,m,e,s,N1;return{...x.revised_prompt?{revisedPrompt:x.revised_prompt}:{},created:(t=v.created)!=null?t:void 0,size:(b=v.size)!=null?b:void 0,quality:(m=v.quality)!=null?m:void 0,background:(e=v.background)!=null?e:void 0,outputFormat:(s=v.output_format)!=null?s:void 0,...XT6((N1=v.usage)==null?void 0:N1.input_tokens_details,i,v.data.length)}})}}}}let{value:C,responseHeaders:_}=await n8({url:this.config.url({path:"/images/generations",modelId:this.modelId}),headers:S8(this.config.headers(),K),body:{model:this.modelId,prompt:X,n:Q,size:J,...(P=W.openai)!=null?P:{},...!gA5(this.modelId)?{response_format:"b64_json"}:{}},failedResponseHandler:NU,successfulResponseHandler:u8(eA6),abortSignal:H,fetch:this.config.fetch});return{images:C.data.map((v)=>v.b64_json),warnings:j,usage:C.usage!=null?{inputTokens:(A=C.usage.input_tokens)!=null?A:void 0,outputTokens:(V=C.usage.output_tokens)!=null?V:void 0,totalTokens:(M=C.usage.total_tokens)!=null?M:void 0}:void 0,response:{timestamp:R,modelId:this.modelId,headers:_},providerMetadata:{openai:{images:C.data.map((v,y)=>{var x,i,t,b,m,e;return{...v.revised_prompt?{revisedPrompt:v.revised_prompt}:{},created:(x=C.created)!=null?x:void 0,size:(i=C.size)!=null?i:void 0,quality:(t=C.quality)!=null?t:void 0,background:(b=C.background)!=null?b:void 0,outputFormat:(m=C.output_format)!=null?m:void 0,...XT6((e=C.usage)==null?void 0:e.input_tokens_details,y,C.data.length)}})}}}}},HT6,FT6,fX7,mA5,dA5,cA5,iA5,pA5,nA5,tA5=(X={})=>{return nA5(X)},rA5,aA5,oA5,sA5=(X)=>oA5(X),UT6,BT6,eA5,XT5,YT5,GT5,QT5,JT5,ZT5,$T5=(X={})=>{return ZT5(X)},NT6,OT6,WT5,zT6,HA0,KT5,HT5,FT5,UT5,FA0,UA0,BT5,NT5=(X={})=>BT5(X),OT5,zT5,DT5,wT5,LT5=(X={})=>wT5(X),ET5,PT5,qT5,AT5,BA0,TT5,IT5,jT5,VT5,MT5=(X)=>VT5(X),RT5,CT5,PG1,vT5,_T5,DT6=20,fT5,FY7,QT6,xT5=class{constructor(X,Y){this.specificationVersion="v3",this.supportedUrls={"image/*":[/^https?:\/\/.*$/],"application/pdf":[/^https?:\/\/.*$/]},this.modelId=X,this.config=Y}get provider(){return this.config.provider}async getArgs({maxOutputTokens:X,temperature:Y,stopSequences:G,topP:Q,topK:J,presencePenalty:$,frequencyPenalty:Z,seed:W,prompt:K,providerOptions:H,tools:U,toolChoice:B,responseFormat:N}){var O,z,w,E,P,A,V,M,j;let R=[],C=KT6(this.modelId);if(J!=null)R.push({type:"unsupported",feature:"topK"});if(W!=null)R.push({type:"unsupported",feature:"seed"});if($!=null)R.push({type:"unsupported",feature:"presencePenalty"});if(Z!=null)R.push({type:"unsupported",feature:"frequencyPenalty"});if(G!=null)R.push({type:"unsupported",feature:"stopSequences"});let _=this.config.provider.includes("azure")?"azure":"openai",v=await S9({provider:_,providerOptions:H,schema:QT6});if(v==null&&_!=="openai")v=await S9({provider:"openai",providerOptions:H,schema:QT6});let y=(O=v==null?void 0:v.forceReasoning)!=null?O:C.isReasoningModel;if((v==null?void 0:v.conversation)&&(v==null?void 0:v.previousResponseId))R.push({type:"unsupported",feature:"conversation",details:"conversation and previousResponseId cannot be used together"});let x=Zj1({tools:U,providerToolNames:{"openai.code_interpreter":"code_interpreter","openai.file_search":"file_search","openai.image_generation":"image_generation","openai.local_shell":"local_shell","openai.shell":"shell","openai.web_search":"web_search","openai.web_search_preview":"web_search_preview","openai.mcp":"mcp","openai.apply_patch":"apply_patch","openai.tool_search":"tool_search"},resolveProviderToolName:(W0)=>W0.id==="openai.custom"?W0.args.name:void 0}),i=new Set,{tools:t,toolChoice:b,toolWarnings:m}=await bT5({tools:U,toolChoice:B,toolNameMapping:x,customProviderToolNames:i}),{input:e,warnings:s}=await kT5({prompt:K,toolNameMapping:x,systemMessageMode:(z=v==null?void 0:v.systemMessageMode)!=null?z:y?"developer":C.systemMessageMode,providerOptionsName:_,fileIdPrefixes:this.config.fileIdPrefixes,store:(w=v==null?void 0:v.store)!=null?w:!0,hasConversation:(v==null?void 0:v.conversation)!=null,hasLocalShellTool:D1("openai.local_shell"),hasShellTool:D1("openai.shell"),hasApplyPatchTool:D1("openai.apply_patch"),customProviderToolNames:i.size>0?i:void 0});R.push(...s);let N1=(E=v==null?void 0:v.strictJsonSchema)!=null?E:!0,w1=v==null?void 0:v.include;function B1(W0){if(w1==null)w1=[W0];else if(!w1.includes(W0))w1=[...w1,W0]}function D1(W0){return(U==null?void 0:U.find((a1)=>a1.type==="provider"&&a1.id===W0))!=null}let k1=typeof(v==null?void 0:v.logprobs)==="number"?v==null?void 0:v.logprobs:(v==null?void 0:v.logprobs)===!0?DT6:void 0;if(k1)B1("message.output_text.logprobs");let o1=(P=U==null?void 0:U.find((W0)=>W0.type==="provider"&&(W0.id==="openai.web_search"||W0.id==="openai.web_search_preview")))==null?void 0:P.name;if(o1)B1("web_search_call.action.sources");if(D1("openai.code_interpreter"))B1("code_interpreter_call.outputs");let m1=v==null?void 0:v.store;if(m1===!1&&y)B1("reasoning.encrypted_content");let h1={model:this.modelId,input:e,temperature:Y,top_p:Q,max_output_tokens:X,...((N==null?void 0:N.type)==="json"||(v==null?void 0:v.textVerbosity))&&{text:{...(N==null?void 0:N.type)==="json"&&{format:N.schema!=null?{type:"json_schema",strict:N1,name:(A=N.name)!=null?A:"response",description:N.description,schema:N.schema}:{type:"json_object"}},...(v==null?void 0:v.textVerbosity)&&{verbosity:v.textVerbosity}}},conversation:v==null?void 0:v.conversation,max_tool_calls:v==null?void 0:v.maxToolCalls,metadata:v==null?void 0:v.metadata,parallel_tool_calls:v==null?void 0:v.parallelToolCalls,previous_response_id:v==null?void 0:v.previousResponseId,store:m1,user:v==null?void 0:v.user,instructions:v==null?void 0:v.instructions,service_tier:v==null?void 0:v.serviceTier,include:w1,prompt_cache_key:v==null?void 0:v.promptCacheKey,prompt_cache_retention:v==null?void 0:v.promptCacheRetention,safety_identifier:v==null?void 0:v.safetyIdentifier,top_logprobs:k1,truncation:v==null?void 0:v.truncation,...y&&((v==null?void 0:v.reasoningEffort)!=null||(v==null?void 0:v.reasoningSummary)!=null)&&{reasoning:{...(v==null?void 0:v.reasoningEffort)!=null&&{effort:v.reasoningEffort},...(v==null?void 0:v.reasoningSummary)!=null&&{summary:v.reasoningSummary}}}};if(y){if(!((v==null?void 0:v.reasoningEffort)==="none"&&C.supportsNonReasoningParameters)){if(h1.temperature!=null)h1.temperature=void 0,R.push({type:"unsupported",feature:"temperature",details:"temperature is not supported for reasoning models"});if(h1.top_p!=null)h1.top_p=void 0,R.push({type:"unsupported",feature:"topP",details:"topP is not supported for reasoning models"})}}else{if((v==null?void 0:v.reasoningEffort)!=null)R.push({type:"unsupported",feature:"reasoningEffort",details:"reasoningEffort is not supported for non-reasoning models"});if((v==null?void 0:v.reasoningSummary)!=null)R.push({type:"unsupported",feature:"reasoningSummary",details:"reasoningSummary is not supported for non-reasoning models"})}if((v==null?void 0:v.serviceTier)==="flex"&&!C.supportsFlexProcessing)R.push({type:"unsupported",feature:"serviceTier",details:"flex processing is only available for o3, o4-mini, and gpt-5 models"}),delete h1.service_tier;if((v==null?void 0:v.serviceTier)==="priority"&&!C.supportsPriorityProcessing)R.push({type:"unsupported",feature:"serviceTier",details:"priority processing is only available for supported models (gpt-4, gpt-5, gpt-5-mini, o3, o4-mini) and requires Enterprise access. gpt-5-nano is not supported"}),delete h1.service_tier;let Y1=(j=(M=(V=U==null?void 0:U.find((W0)=>W0.type==="provider"&&W0.id==="openai.shell"))==null?void 0:V.args)==null?void 0:M.environment)==null?void 0:j.type,u1=Y1==="containerAuto"||Y1==="containerReference";return{webSearchToolName:o1,args:{...h1,tools:t,tool_choice:b},warnings:[...R,...m],store:m1,toolNameMapping:x,providerOptionsName:_,isShellProviderExecuted:u1}}async doGenerate(X){var Y,G,Q,J,$,Z,W,K,H,U,B,N,O,z,w,E,P,A,V,M,j,R,C,_,v,y,x,i;let{args:t,warnings:b,webSearchToolName:m,toolNameMapping:e,providerOptionsName:s,isShellProviderExecuted:N1}=await this.getArgs(X),w1=this.config.url({path:"/responses",modelId:this.modelId}),B1=JT6(X.prompt),{responseHeaders:D1,value:k1,rawValue:o1}=await n8({url:w1,headers:S8(this.config.headers(),X.headers),body:t,failedResponseHandler:NU,successfulResponseHandler:u8(_T5),abortSignal:X.abortSignal,fetch:this.config.fetch});if(k1.error)throw new g8({message:k1.error.message,url:w1,requestBodyValues:t,statusCode:400,responseHeaders:D1,responseBody:o1,isRetryable:!1});let m1=[],h1=[],Y1=!1,u1=[];for(let P1 of k1.output)switch(P1.type){case"reasoning":{if(P1.summary.length===0)P1.summary.push({type:"summary_text",text:""});for(let E1 of P1.summary)m1.push({type:"reasoning",text:E1.text,providerMetadata:{[s]:{itemId:P1.id,reasoningEncryptedContent:(Y=P1.encrypted_content)!=null?Y:null}}});break}case"image_generation_call":{m1.push({type:"tool-call",toolCallId:P1.id,toolName:e.toCustomToolName("image_generation"),input:"{}",providerExecuted:!0}),m1.push({type:"tool-result",toolCallId:P1.id,toolName:e.toCustomToolName("image_generation"),result:{result:P1.result}});break}case"tool_search_call":{let E1=(G=P1.call_id)!=null?G:P1.id,U1=P1.execution==="server";if(U1)u1.push(E1);m1.push({type:"tool-call",toolCallId:E1,toolName:e.toCustomToolName("tool_search"),input:JSON.stringify({arguments:P1.arguments,call_id:P1.call_id}),...U1?{providerExecuted:!0}:{},providerMetadata:{[s]:{itemId:P1.id}}});break}case"tool_search_output":{let E1=(J=(Q=P1.call_id)!=null?Q:u1.shift())!=null?J:P1.id;m1.push({type:"tool-result",toolCallId:E1,toolName:e.toCustomToolName("tool_search"),result:{tools:P1.tools},providerMetadata:{[s]:{itemId:P1.id}}});break}case"local_shell_call":{m1.push({type:"tool-call",toolCallId:P1.call_id,toolName:e.toCustomToolName("local_shell"),input:JSON.stringify({action:P1.action}),providerMetadata:{[s]:{itemId:P1.id}}});break}case"shell_call":{m1.push({type:"tool-call",toolCallId:P1.call_id,toolName:e.toCustomToolName("shell"),input:JSON.stringify({action:{commands:P1.action.commands}}),...N1&&{providerExecuted:!0},providerMetadata:{[s]:{itemId:P1.id}}});break}case"shell_call_output":{m1.push({type:"tool-result",toolCallId:P1.call_id,toolName:e.toCustomToolName("shell"),result:{output:P1.output.map((E1)=>({stdout:E1.stdout,stderr:E1.stderr,outcome:E1.outcome.type==="exit"?{type:"exit",exitCode:E1.outcome.exit_code}:{type:"timeout"}}))}});break}case"message":{for(let E1 of P1.content){if(((Z=($=X.providerOptions)==null?void 0:$[s])==null?void 0:Z.logprobs)&&E1.logprobs)h1.push(E1.logprobs);let U1={itemId:P1.id,...P1.phase!=null&&{phase:P1.phase},...E1.annotations.length>0&&{annotations:E1.annotations}};m1.push({type:"text",text:E1.text,providerMetadata:{[s]:U1}});for(let $1 of E1.annotations)if($1.type==="url_citation")m1.push({type:"source",sourceType:"url",id:(H=(K=(W=this.config).generateId)==null?void 0:K.call(W))!=null?H:e4(),url:$1.url,title:$1.title});else if($1.type==="file_citation")m1.push({type:"source",sourceType:"document",id:(N=(B=(U=this.config).generateId)==null?void 0:B.call(U))!=null?N:e4(),mediaType:"text/plain",title:$1.filename,filename:$1.filename,providerMetadata:{[s]:{type:$1.type,fileId:$1.file_id,index:$1.index}}});else if($1.type==="container_file_citation")m1.push({type:"source",sourceType:"document",id:(w=(z=(O=this.config).generateId)==null?void 0:z.call(O))!=null?w:e4(),mediaType:"text/plain",title:$1.filename,filename:$1.filename,providerMetadata:{[s]:{type:$1.type,fileId:$1.file_id,containerId:$1.container_id}}});else if($1.type==="file_path")m1.push({type:"source",sourceType:"document",id:(A=(P=(E=this.config).generateId)==null?void 0:P.call(E))!=null?A:e4(),mediaType:"application/octet-stream",title:$1.file_id,filename:$1.file_id,providerMetadata:{[s]:{type:$1.type,fileId:$1.file_id,index:$1.index}}})}break}case"function_call":{Y1=!0,m1.push({type:"tool-call",toolCallId:P1.call_id,toolName:P1.name,input:P1.arguments,providerMetadata:{[s]:{itemId:P1.id}}});break}case"custom_tool_call":{Y1=!0;let E1=e.toCustomToolName(P1.name);m1.push({type:"tool-call",toolCallId:P1.call_id,toolName:E1,input:JSON.stringify(P1.input),providerMetadata:{[s]:{itemId:P1.id}}});break}case"web_search_call":{m1.push({type:"tool-call",toolCallId:P1.id,toolName:e.toCustomToolName(m!=null?m:"web_search"),input:JSON.stringify({}),providerExecuted:!0}),m1.push({type:"tool-result",toolCallId:P1.id,toolName:e.toCustomToolName(m!=null?m:"web_search"),result:$T6(P1.action)});break}case"mcp_call":{let E1=P1.approval_request_id!=null?(V=B1[P1.approval_request_id])!=null?V:P1.id:P1.id,U1=`mcp.${P1.name}`;m1.push({type:"tool-call",toolCallId:E1,toolName:U1,input:P1.arguments,providerExecuted:!0,dynamic:!0}),m1.push({type:"tool-result",toolCallId:E1,toolName:U1,result:{type:"call",serverLabel:P1.server_label,name:P1.name,arguments:P1.arguments,...P1.output!=null?{output:P1.output}:{},...P1.error!=null?{error:P1.error}:{}},providerMetadata:{[s]:{itemId:P1.id}}});break}case"mcp_list_tools":break;case"mcp_approval_request":{let E1=(M=P1.approval_request_id)!=null?M:P1.id,U1=(C=(R=(j=this.config).generateId)==null?void 0:R.call(j))!=null?C:e4(),$1=`mcp.${P1.name}`;m1.push({type:"tool-call",toolCallId:U1,toolName:$1,input:P1.arguments,providerExecuted:!0,dynamic:!0}),m1.push({type:"tool-approval-request",approvalId:E1,toolCallId:U1});break}case"computer_call":{m1.push({type:"tool-call",toolCallId:P1.id,toolName:e.toCustomToolName("computer_use"),input:"",providerExecuted:!0}),m1.push({type:"tool-result",toolCallId:P1.id,toolName:e.toCustomToolName("computer_use"),result:{type:"computer_use_tool_result",status:P1.status||"completed"}});break}case"file_search_call":{m1.push({type:"tool-call",toolCallId:P1.id,toolName:e.toCustomToolName("file_search"),input:"{}",providerExecuted:!0}),m1.push({type:"tool-result",toolCallId:P1.id,toolName:e.toCustomToolName("file_search"),result:{queries:P1.queries,results:(v=(_=P1.results)==null?void 0:_.map((E1)=>({attributes:E1.attributes,fileId:E1.file_id,filename:E1.filename,score:E1.score,text:E1.text})))!=null?v:null}});break}case"code_interpreter_call":{m1.push({type:"tool-call",toolCallId:P1.id,toolName:e.toCustomToolName("code_interpreter"),input:JSON.stringify({code:P1.code,containerId:P1.container_id}),providerExecuted:!0}),m1.push({type:"tool-result",toolCallId:P1.id,toolName:e.toCustomToolName("code_interpreter"),result:{outputs:P1.outputs}});break}case"apply_patch_call":{m1.push({type:"tool-call",toolCallId:P1.call_id,toolName:e.toCustomToolName("apply_patch"),input:JSON.stringify({callId:P1.call_id,operation:P1.operation}),providerMetadata:{[s]:{itemId:P1.id}}});break}}let W0={[s]:{responseId:k1.id,...h1.length>0?{logprobs:h1}:{},...typeof k1.service_tier==="string"?{serviceTier:k1.service_tier}:{}}},a1=k1.usage;return{content:m1,finishReason:{unified:KA0({finishReason:(y=k1.incomplete_details)==null?void 0:y.reason,hasFunctionCall:Y1}),raw:(i=(x=k1.incomplete_details)==null?void 0:x.reason)!=null?i:void 0},usage:YT6(a1),request:{body:t},response:{id:k1.id,timestamp:new Date(k1.created_at*1000),modelId:k1.model,headers:D1,body:o1},providerMetadata:W0,warnings:b}}async doStream(X){let{args:Y,warnings:G,webSearchToolName:Q,toolNameMapping:J,store:$,providerOptionsName:Z,isShellProviderExecuted:W}=await this.getArgs(X),{responseHeaders:K,value:H}=await n8({url:this.config.url({path:"/responses",modelId:this.modelId}),headers:S8(this.config.headers(),X.headers),body:{...Y,stream:!0},failedResponseHandler:NU,successfulResponseHandler:HH(vT5),abortSignal:X.abortSignal,fetch:this.config.fetch}),U=this,B=JT6(X.prompt),N=new Map,O={unified:"other",raw:void 0},z=void 0,w=[],E=null,P={},A=[],V,M=!1,j={},R,C=[];return{stream:H.pipeThrough(new TransformStream({start(_){_.enqueue({type:"stream-start",warnings:G})},transform(_,v){var y,x,i,t,b,m,e,s,N1,w1,B1,D1,k1,o1,m1,h1,Y1,u1,W0,a1,P1,E1,U1,$1,V1,T1,i1,A1,b1,e1,Z0,z4,g0,U0,N0,v0,j0,T6;if(X.includeRawChunks)v.enqueue({type:"raw",rawValue:_.rawValue});if(!_.success){O={unified:"error",raw:void 0},v.enqueue({type:"error",error:_.error});return}let M1=_.value;if(ZT6(M1)){if(M1.item.type==="function_call")P[M1.output_index]={toolName:M1.item.name,toolCallId:M1.item.call_id},v.enqueue({type:"tool-input-start",id:M1.item.call_id,toolName:M1.item.name});else if(M1.item.type==="custom_tool_call"){let X0=J.toCustomToolName(M1.item.name);P[M1.output_index]={toolName:X0,toolCallId:M1.item.call_id},v.enqueue({type:"tool-input-start",id:M1.item.call_id,toolName:X0})}else if(M1.item.type==="web_search_call")P[M1.output_index]={toolName:J.toCustomToolName(Q!=null?Q:"web_search"),toolCallId:M1.item.id},v.enqueue({type:"tool-input-start",id:M1.item.id,toolName:J.toCustomToolName(Q!=null?Q:"web_search"),providerExecuted:!0}),v.enqueue({type:"tool-input-end",id:M1.item.id}),v.enqueue({type:"tool-call",toolCallId:M1.item.id,toolName:J.toCustomToolName(Q!=null?Q:"web_search"),input:JSON.stringify({}),providerExecuted:!0});else if(M1.item.type==="computer_call")P[M1.output_index]={toolName:J.toCustomToolName("computer_use"),toolCallId:M1.item.id},v.enqueue({type:"tool-input-start",id:M1.item.id,toolName:J.toCustomToolName("computer_use"),providerExecuted:!0});else if(M1.item.type==="code_interpreter_call")P[M1.output_index]={toolName:J.toCustomToolName("code_interpreter"),toolCallId:M1.item.id,codeInterpreter:{containerId:M1.item.container_id}},v.enqueue({type:"tool-input-start",id:M1.item.id,toolName:J.toCustomToolName("code_interpreter"),providerExecuted:!0}),v.enqueue({type:"tool-input-delta",id:M1.item.id,delta:`{"containerId":"${M1.item.container_id}","code":"`});else if(M1.item.type==="file_search_call")v.enqueue({type:"tool-call",toolCallId:M1.item.id,toolName:J.toCustomToolName("file_search"),input:"{}",providerExecuted:!0});else if(M1.item.type==="image_generation_call")v.enqueue({type:"tool-call",toolCallId:M1.item.id,toolName:J.toCustomToolName("image_generation"),input:"{}",providerExecuted:!0});else if(M1.item.type==="tool_search_call"){let X0=M1.item.id,r0=J.toCustomToolName("tool_search"),b4=M1.item.execution==="server";if(P[M1.output_index]={toolName:r0,toolCallId:X0,toolSearchExecution:(y=M1.item.execution)!=null?y:"server"},b4)v.enqueue({type:"tool-input-start",id:X0,toolName:r0,providerExecuted:!0})}else if(M1.item.type==="tool_search_output");else if(M1.item.type==="mcp_call"||M1.item.type==="mcp_list_tools"||M1.item.type==="mcp_approval_request");else if(M1.item.type==="apply_patch_call"){let{call_id:X0,operation:r0}=M1.item;if(P[M1.output_index]={toolName:J.toCustomToolName("apply_patch"),toolCallId:X0,applyPatch:{hasDiff:r0.type==="delete_file",endEmitted:r0.type==="delete_file"}},v.enqueue({type:"tool-input-start",id:X0,toolName:J.toCustomToolName("apply_patch")}),r0.type==="delete_file"){let b4=JSON.stringify({callId:X0,operation:r0});v.enqueue({type:"tool-input-delta",id:X0,delta:b4}),v.enqueue({type:"tool-input-end",id:X0})}else v.enqueue({type:"tool-input-delta",id:X0,delta:`{"callId":"${YM(X0)}","operation":{"type":"${YM(r0.type)}","path":"${YM(r0.path)}","diff":"`})}else if(M1.item.type==="shell_call")P[M1.output_index]={toolName:J.toCustomToolName("shell"),toolCallId:M1.item.call_id};else if(M1.item.type==="shell_call_output");else if(M1.item.type==="message")A.splice(0,A.length),V=(x=M1.item.phase)!=null?x:void 0,v.enqueue({type:"text-start",id:M1.item.id,providerMetadata:{[Z]:{itemId:M1.item.id,...M1.item.phase!=null&&{phase:M1.item.phase}}}});else if(ZT6(M1)&&M1.item.type==="reasoning")j[M1.item.id]={encryptedContent:M1.item.encrypted_content,summaryParts:{0:"active"}},v.enqueue({type:"reasoning-start",id:`${M1.item.id}:0`,providerMetadata:{[Z]:{itemId:M1.item.id,reasoningEncryptedContent:(i=M1.item.encrypted_content)!=null?i:null}}})}else if(uT5(M1)){if(M1.item.type==="message"){let X0=(t=M1.item.phase)!=null?t:V;V=void 0,v.enqueue({type:"text-end",id:M1.item.id,providerMetadata:{[Z]:{itemId:M1.item.id,...X0!=null&&{phase:X0},...A.length>0&&{annotations:A}}}})}else if(M1.item.type==="function_call")P[M1.output_index]=void 0,M=!0,v.enqueue({type:"tool-input-end",id:M1.item.call_id}),v.enqueue({type:"tool-call",toolCallId:M1.item.call_id,toolName:M1.item.name,input:M1.item.arguments,providerMetadata:{[Z]:{itemId:M1.item.id}}});else if(M1.item.type==="custom_tool_call"){P[M1.output_index]=void 0,M=!0;let X0=J.toCustomToolName(M1.item.name);v.enqueue({type:"tool-input-end",id:M1.item.call_id}),v.enqueue({type:"tool-call",toolCallId:M1.item.call_id,toolName:X0,input:JSON.stringify(M1.item.input),providerMetadata:{[Z]:{itemId:M1.item.id}}})}else if(M1.item.type==="web_search_call")P[M1.output_index]=void 0,v.enqueue({type:"tool-result",toolCallId:M1.item.id,toolName:J.toCustomToolName(Q!=null?Q:"web_search"),result:$T6(M1.item.action)});else if(M1.item.type==="computer_call")P[M1.output_index]=void 0,v.enqueue({type:"tool-input-end",id:M1.item.id}),v.enqueue({type:"tool-call",toolCallId:M1.item.id,toolName:J.toCustomToolName("computer_use"),input:"",providerExecuted:!0}),v.enqueue({type:"tool-result",toolCallId:M1.item.id,toolName:J.toCustomToolName("computer_use"),result:{type:"computer_use_tool_result",status:M1.item.status||"completed"}});else if(M1.item.type==="file_search_call")P[M1.output_index]=void 0,v.enqueue({type:"tool-result",toolCallId:M1.item.id,toolName:J.toCustomToolName("file_search"),result:{queries:M1.item.queries,results:(m=(b=M1.item.results)==null?void 0:b.map((X0)=>({attributes:X0.attributes,fileId:X0.file_id,filename:X0.filename,score:X0.score,text:X0.text})))!=null?m:null}});else if(M1.item.type==="code_interpreter_call")P[M1.output_index]=void 0,v.enqueue({type:"tool-result",toolCallId:M1.item.id,toolName:J.toCustomToolName("code_interpreter"),result:{outputs:M1.item.outputs}});else if(M1.item.type==="image_generation_call")v.enqueue({type:"tool-result",toolCallId:M1.item.id,toolName:J.toCustomToolName("image_generation"),result:{result:M1.item.result}});else if(M1.item.type==="tool_search_call"){let X0=P[M1.output_index],r0=M1.item.execution==="server";if(X0!=null){let b4=r0?X0.toolCallId:(e=M1.item.call_id)!=null?e:M1.item.id;if(r0)C.push(b4);else v.enqueue({type:"tool-input-start",id:b4,toolName:X0.toolName});v.enqueue({type:"tool-input-end",id:b4}),v.enqueue({type:"tool-call",toolCallId:b4,toolName:X0.toolName,input:JSON.stringify({arguments:M1.item.arguments,call_id:r0?null:b4}),...r0?{providerExecuted:!0}:{},providerMetadata:{[Z]:{itemId:M1.item.id}}})}P[M1.output_index]=void 0}else if(M1.item.type==="tool_search_output"){let X0=(N1=(s=M1.item.call_id)!=null?s:C.shift())!=null?N1:M1.item.id;v.enqueue({type:"tool-result",toolCallId:X0,toolName:J.toCustomToolName("tool_search"),result:{tools:M1.item.tools},providerMetadata:{[Z]:{itemId:M1.item.id}}})}else if(M1.item.type==="mcp_call"){P[M1.output_index]=void 0;let X0=(w1=M1.item.approval_request_id)!=null?w1:void 0,r0=X0!=null?(D1=(B1=N.get(X0))!=null?B1:B[X0])!=null?D1:M1.item.id:M1.item.id,b4=`mcp.${M1.item.name}`;v.enqueue({type:"tool-call",toolCallId:r0,toolName:b4,input:M1.item.arguments,providerExecuted:!0,dynamic:!0}),v.enqueue({type:"tool-result",toolCallId:r0,toolName:b4,result:{type:"call",serverLabel:M1.item.server_label,name:M1.item.name,arguments:M1.item.arguments,...M1.item.output!=null?{output:M1.item.output}:{},...M1.item.error!=null?{error:M1.item.error}:{}},providerMetadata:{[Z]:{itemId:M1.item.id}}})}else if(M1.item.type==="mcp_list_tools")P[M1.output_index]=void 0;else if(M1.item.type==="apply_patch_call"){let X0=P[M1.output_index];if((X0==null?void 0:X0.applyPatch)&&!X0.applyPatch.endEmitted&&M1.item.operation.type!=="delete_file"){if(!X0.applyPatch.hasDiff)v.enqueue({type:"tool-input-delta",id:X0.toolCallId,delta:YM(M1.item.operation.diff)});v.enqueue({type:"tool-input-delta",id:X0.toolCallId,delta:'"}}'}),v.enqueue({type:"tool-input-end",id:X0.toolCallId}),X0.applyPatch.endEmitted=!0}if(X0&&M1.item.status==="completed")v.enqueue({type:"tool-call",toolCallId:X0.toolCallId,toolName:J.toCustomToolName("apply_patch"),input:JSON.stringify({callId:M1.item.call_id,operation:M1.item.operation}),providerMetadata:{[Z]:{itemId:M1.item.id}}});P[M1.output_index]=void 0}else if(M1.item.type==="mcp_approval_request"){P[M1.output_index]=void 0;let X0=(m1=(o1=(k1=U.config).generateId)==null?void 0:o1.call(k1))!=null?m1:e4(),r0=(h1=M1.item.approval_request_id)!=null?h1:M1.item.id;N.set(r0,X0);let b4=`mcp.${M1.item.name}`;v.enqueue({type:"tool-call",toolCallId:X0,toolName:b4,input:M1.item.arguments,providerExecuted:!0,dynamic:!0}),v.enqueue({type:"tool-approval-request",approvalId:r0,toolCallId:X0})}else if(M1.item.type==="local_shell_call")P[M1.output_index]=void 0,v.enqueue({type:"tool-call",toolCallId:M1.item.call_id,toolName:J.toCustomToolName("local_shell"),input:JSON.stringify({action:{type:"exec",command:M1.item.action.command,timeoutMs:M1.item.action.timeout_ms,user:M1.item.action.user,workingDirectory:M1.item.action.working_directory,env:M1.item.action.env}}),providerMetadata:{[Z]:{itemId:M1.item.id}}});else if(M1.item.type==="shell_call")P[M1.output_index]=void 0,v.enqueue({type:"tool-call",toolCallId:M1.item.call_id,toolName:J.toCustomToolName("shell"),input:JSON.stringify({action:{commands:M1.item.action.commands}}),...W&&{providerExecuted:!0},providerMetadata:{[Z]:{itemId:M1.item.id}}});else if(M1.item.type==="shell_call_output")v.enqueue({type:"tool-result",toolCallId:M1.item.call_id,toolName:J.toCustomToolName("shell"),result:{output:M1.item.output.map((X0)=>({stdout:X0.stdout,stderr:X0.stderr,outcome:X0.outcome.type==="exit"?{type:"exit",exitCode:X0.outcome.exit_code}:{type:"timeout"}}))}});else if(M1.item.type==="reasoning"){let X0=j[M1.item.id],r0=Object.entries(X0.summaryParts).filter(([b4,I])=>I==="active"||I==="can-conclude").map(([b4])=>b4);for(let b4 of r0)v.enqueue({type:"reasoning-end",id:`${M1.item.id}:${b4}`,providerMetadata:{[Z]:{itemId:M1.item.id,reasoningEncryptedContent:(Y1=M1.item.encrypted_content)!=null?Y1:null}}});delete j[M1.item.id]}}else if(cT5(M1)){let X0=P[M1.output_index];if(X0!=null)v.enqueue({type:"tool-input-delta",id:X0.toolCallId,delta:M1.delta})}else if(iT5(M1)){let X0=P[M1.output_index];if(X0!=null)v.enqueue({type:"tool-input-delta",id:X0.toolCallId,delta:M1.delta})}else if(rT5(M1)){let X0=P[M1.output_index];if(X0==null?void 0:X0.applyPatch)v.enqueue({type:"tool-input-delta",id:X0.toolCallId,delta:YM(M1.delta)}),X0.applyPatch.hasDiff=!0}else if(aT5(M1)){let X0=P[M1.output_index];if((X0==null?void 0:X0.applyPatch)&&!X0.applyPatch.endEmitted){if(!X0.applyPatch.hasDiff)v.enqueue({type:"tool-input-delta",id:X0.toolCallId,delta:YM(M1.diff)}),X0.applyPatch.hasDiff=!0;v.enqueue({type:"tool-input-delta",id:X0.toolCallId,delta:'"}}'}),v.enqueue({type:"tool-input-end",id:X0.toolCallId}),X0.applyPatch.endEmitted=!0}}else if(pT5(M1))v.enqueue({type:"tool-result",toolCallId:M1.item_id,toolName:J.toCustomToolName("image_generation"),result:{result:M1.partial_image_b64},preliminary:!0});else if(nT5(M1)){let X0=P[M1.output_index];if(X0!=null)v.enqueue({type:"tool-input-delta",id:X0.toolCallId,delta:YM(M1.delta)})}else if(tT5(M1)){let X0=P[M1.output_index];if(X0!=null)v.enqueue({type:"tool-input-delta",id:X0.toolCallId,delta:'"}'}),v.enqueue({type:"tool-input-end",id:X0.toolCallId}),v.enqueue({type:"tool-call",toolCallId:X0.toolCallId,toolName:J.toCustomToolName("code_interpreter"),input:JSON.stringify({code:M1.code,containerId:X0.codeInterpreter.containerId}),providerExecuted:!0})}else if(dT5(M1))E=M1.response.id,v.enqueue({type:"response-metadata",id:M1.response.id,timestamp:new Date(M1.response.created_at*1000),modelId:M1.response.model});else if(gT5(M1)){if(v.enqueue({type:"text-delta",id:M1.item_id,delta:M1.delta}),((W0=(u1=X.providerOptions)==null?void 0:u1[Z])==null?void 0:W0.logprobs)&&M1.logprobs)w.push(M1.logprobs)}else if(M1.type==="response.reasoning_summary_part.added"){if(M1.summary_index>0){let X0=j[M1.item_id];X0.summaryParts[M1.summary_index]="active";for(let r0 of Object.keys(X0.summaryParts))if(X0.summaryParts[r0]==="can-conclude")v.enqueue({type:"reasoning-end",id:`${M1.item_id}:${r0}`,providerMetadata:{[Z]:{itemId:M1.item_id}}}),X0.summaryParts[r0]="concluded";v.enqueue({type:"reasoning-start",id:`${M1.item_id}:${M1.summary_index}`,providerMetadata:{[Z]:{itemId:M1.item_id,reasoningEncryptedContent:(P1=(a1=j[M1.item_id])==null?void 0:a1.encryptedContent)!=null?P1:null}}})}}else if(M1.type==="response.reasoning_summary_text.delta")v.enqueue({type:"reasoning-delta",id:`${M1.item_id}:${M1.summary_index}`,delta:M1.delta,providerMetadata:{[Z]:{itemId:M1.item_id}}});else if(M1.type==="response.reasoning_summary_part.done")if($)v.enqueue({type:"reasoning-end",id:`${M1.item_id}:${M1.summary_index}`,providerMetadata:{[Z]:{itemId:M1.item_id}}}),j[M1.item_id].summaryParts[M1.summary_index]="concluded";else j[M1.item_id].summaryParts[M1.summary_index]="can-conclude";else if(lT5(M1)){if(O={unified:KA0({finishReason:(E1=M1.response.incomplete_details)==null?void 0:E1.reason,hasFunctionCall:M}),raw:($1=(U1=M1.response.incomplete_details)==null?void 0:U1.reason)!=null?$1:void 0},z=M1.response.usage,typeof M1.response.service_tier==="string")R=M1.response.service_tier}else if(mT5(M1)){let X0=(V1=M1.response.incomplete_details)==null?void 0:V1.reason;O={unified:X0?KA0({finishReason:X0,hasFunctionCall:M}):"error",raw:X0!=null?X0:"error"},z=(T1=M1.response.usage)!=null?T1:void 0}else if(oT5(M1)){if(A.push(M1.annotation),M1.annotation.type==="url_citation")v.enqueue({type:"source",sourceType:"url",id:(b1=(A1=(i1=U.config).generateId)==null?void 0:A1.call(i1))!=null?b1:e4(),url:M1.annotation.url,title:M1.annotation.title});else if(M1.annotation.type==="file_citation")v.enqueue({type:"source",sourceType:"document",id:(z4=(Z0=(e1=U.config).generateId)==null?void 0:Z0.call(e1))!=null?z4:e4(),mediaType:"text/plain",title:M1.annotation.filename,filename:M1.annotation.filename,providerMetadata:{[Z]:{type:M1.annotation.type,fileId:M1.annotation.file_id,index:M1.annotation.index}}});else if(M1.annotation.type==="container_file_citation")v.enqueue({type:"source",sourceType:"document",id:(N0=(U0=(g0=U.config).generateId)==null?void 0:U0.call(g0))!=null?N0:e4(),mediaType:"text/plain",title:M1.annotation.filename,filename:M1.annotation.filename,providerMetadata:{[Z]:{type:M1.annotation.type,fileId:M1.annotation.file_id,containerId:M1.annotation.container_id}}});else if(M1.annotation.type==="file_path")v.enqueue({type:"source",sourceType:"document",id:(T6=(j0=(v0=U.config).generateId)==null?void 0:j0.call(v0))!=null?T6:e4(),mediaType:"application/octet-stream",title:M1.annotation.file_id,filename:M1.annotation.file_id,providerMetadata:{[Z]:{type:M1.annotation.type,fileId:M1.annotation.file_id,index:M1.annotation.index}}})}else if(sT5(M1))v.enqueue({type:"error",error:M1})},flush(_){let v={[Z]:{responseId:E,...w.length>0?{logprobs:w}:{},...R!==void 0?{serviceTier:R}:{}}};_.enqueue({type:"finish",finishReason:O,usage:YT6(z),providerMetadata:v})}})),request:{body:Y},response:{headers:K}}}},eT5,XI5=class{constructor(X,Y){this.modelId=X,this.config=Y,this.specificationVersion="v3"}get provider(){return this.config.provider}async getArgs({text:X,voice:Y="alloy",outputFormat:G="mp3",speed:Q,instructions:J,language:$,providerOptions:Z}){let W=[],K=await S9({provider:"openai",providerOptions:Z,schema:eT5}),H={model:this.modelId,input:X,voice:Y,response_format:"mp3",speed:Q,instructions:J};if(G)if(["mp3","opus","aac","flac","wav","pcm"].includes(G))H.response_format=G;else W.push({type:"unsupported",feature:"outputFormat",details:`Unsupported output format: ${G}. Using mp3 instead.`});if(K){let U={};for(let B in U){let N=U[B];if(N!==void 0)H[B]=N}}if($)W.push({type:"unsupported",feature:"language",details:`OpenAI speech models do not support language selection. Language parameter "${$}" was ignored.`});return{requestBody:H,warnings:W}}async doGenerate(X){var Y,G,Q;let J=(Q=(G=(Y=this.config._internal)==null?void 0:Y.currentDate)==null?void 0:G.call(Y))!=null?Q:new Date,{requestBody:$,warnings:Z}=await this.getArgs(X),{value:W,responseHeaders:K,rawValue:H}=await n8({url:this.config.url({path:"/audio/speech",modelId:this.modelId}),headers:S8(this.config.headers(),X.headers),body:$,failedResponseHandler:NU,successfulResponseHandler:rE6(),abortSignal:X.abortSignal,fetch:this.config.fetch});return{audio:W,warnings:Z,request:{body:JSON.stringify($)},response:{timestamp:J,modelId:this.modelId,headers:K,body:H}}}},YI5,GI5,WT6,QI5=class{constructor(X,Y){this.modelId=X,this.config=Y,this.specificationVersion="v3"}get provider(){return this.config.provider}async getArgs({audio:X,mediaType:Y,providerOptions:G}){let Q=[],J=await S9({provider:"openai",providerOptions:G,schema:GI5}),$=new FormData,Z=X instanceof Uint8Array?new Blob([X]):new Blob([WG(X)]);$.append("model",this.modelId);let W=mE6(Y);if($.append("file",new File([Z],"audio",{type:Y}),`audio.${W}`),J){let K={include:J.include,language:J.language,prompt:J.prompt,response_format:["gpt-4o-transcribe","gpt-4o-mini-transcribe"].includes(this.modelId)?"json":"verbose_json",temperature:J.temperature,timestamp_granularities:J.timestampGranularities};for(let[H,U]of Object.entries(K))if(U!=null)if(Array.isArray(U))for(let B of U)$.append(`${H}[]`,String(B));else $.append(H,String(U))}return{formData:$,warnings:Q}}async doGenerate(X){var Y,G,Q,J,$,Z,W,K;let H=(Q=(G=(Y=this.config._internal)==null?void 0:Y.currentDate)==null?void 0:G.call(Y))!=null?Q:new Date,{formData:U,warnings:B}=await this.getArgs(X),{value:N,responseHeaders:O,rawValue:z}=await Wj1({url:this.config.url({path:"/audio/transcriptions",modelId:this.modelId}),headers:S8(this.config.headers(),X.headers),formData:U,failedResponseHandler:NU,successfulResponseHandler:u8(YI5),abortSignal:X.abortSignal,fetch:this.config.fetch}),w=N.language!=null&&N.language in WT6?WT6[N.language]:void 0;return{text:N.text,segments:(W=(Z=(J=N.segments)==null?void 0:J.map((E)=>({text:E.text,startSecond:E.start,endSecond:E.end})))!=null?Z:($=N.words)==null?void 0:$.map((E)=>({text:E.word,startSecond:E.start,endSecond:E.end})))!=null?W:[],language:w,durationInSeconds:(K=N.duration)!=null?K:void 0,warnings:B,response:{timestamp:H,modelId:this.modelId,headers:O,body:z}}}},JI5="3.0.53",qY7;var wT6=D(()=>{M0();g4();M0();d0();M0();g4();M0();M0();d0();M0();d0();g4();M0();g4();d0();M0();M0();d0();g4();M0();M0();d0();M0();d0();M0();M0();d0();M0();d0();M0();d0();M0();d0();M0();d0();M0();d0();M0();d0();M0();d0();M0();d0();M0();d0();M0();d0();M0();d0();g4();M0();g4();M0();d0();M0();d0();M0();d0();g4();M0();M0();M0();d0();M0();M0();d0();M0();d0();NA0=F.object({error:F.object({message:F.string(),type:F.string().nullish(),param:F.any().nullish(),code:F.union([F.string(),F.number()]).nullish()})}),NU=qY({errorSchema:NA0,errorToMessage:(X)=>X.error.message});jA5=Q0(()=>n1(F.object({id:F.string().nullish(),created:F.number().nullish(),model:F.string().nullish(),choices:F.array(F.object({message:F.object({role:F.literal("assistant").nullish(),content:F.string().nullish(),tool_calls:F.array(F.object({id:F.string().nullish(),type:F.literal("function"),function:F.object({name:F.string(),arguments:F.string()})})).nullish(),annotations:F.array(F.object({type:F.literal("url_citation"),url_citation:F.object({start_index:F.number(),end_index:F.number(),url:F.string(),title:F.string()})})).nullish()}),index:F.number(),logprobs:F.object({content:F.array(F.object({token:F.string(),logprob:F.number(),top_logprobs:F.array(F.object({token:F.string(),logprob:F.number()}))})).nullish()}).nullish(),finish_reason:F.string().nullish()})),usage:F.object({prompt_tokens:F.number().nullish(),completion_tokens:F.number().nullish(),total_tokens:F.number().nullish(),prompt_tokens_details:F.object({cached_tokens:F.number().nullish()}).nullish(),completion_tokens_details:F.object({reasoning_tokens:F.number().nullish(),accepted_prediction_tokens:F.number().nullish(),rejected_prediction_tokens:F.number().nullish()}).nullish()}).nullish()}))),VA5=Q0(()=>n1(F.union([F.object({id:F.string().nullish(),created:F.number().nullish(),model:F.string().nullish(),choices:F.array(F.object({delta:F.object({role:F.enum(["assistant"]).nullish(),content:F.string().nullish(),tool_calls:F.array(F.object({index:F.number(),id:F.string().nullish(),type:F.literal("function").nullish(),function:F.object({name:F.string().nullish(),arguments:F.string().nullish()})})).nullish(),annotations:F.array(F.object({type:F.literal("url_citation"),url_citation:F.object({start_index:F.number(),end_index:F.number(),url:F.string(),title:F.string()})})).nullish()}).nullish(),logprobs:F.object({content:F.array(F.object({token:F.string(),logprob:F.number(),top_logprobs:F.array(F.object({token:F.string(),logprob:F.number()}))})).nullish()}).nullish(),finish_reason:F.string().nullish(),index:F.number()})),usage:F.object({prompt_tokens:F.number().nullish(),completion_tokens:F.number().nullish(),total_tokens:F.number().nullish(),prompt_tokens_details:F.object({cached_tokens:F.number().nullish()}).nullish(),completion_tokens_details:F.object({reasoning_tokens:F.number().nullish(),accepted_prediction_tokens:F.number().nullish(),rejected_prediction_tokens:F.number().nullish()}).nullish()}).nullish()}),NA0]))),MA5=Q0(()=>n1(F.object({logitBias:F.record(F.coerce.number(),F.number()).optional(),logprobs:F.union([F.boolean(),F.number()]).optional(),parallelToolCalls:F.boolean().optional(),user:F.string().optional(),reasoningEffort:F.enum(["none","minimal","low","medium","high","xhigh"]).optional(),maxCompletionTokens:F.number().optional(),store:F.boolean().optional(),metadata:F.record(F.string().max(64),F.string().max(512)).optional(),prediction:F.record(F.string(),F.any()).optional(),serviceTier:F.enum(["auto","flex","priority","default"]).optional(),strictJsonSchema:F.boolean().optional(),textVerbosity:F.enum(["low","medium","high"]).optional(),promptCacheKey:F.string().optional(),promptCacheRetention:F.enum(["in_memory","24h"]).optional(),safetyIdentifier:F.string().optional(),systemMessageMode:F.enum(["system","developer","remove"]).optional(),forceReasoning:F.boolean().optional()})));CA5=Q0(()=>n1(F.object({id:F.string().nullish(),created:F.number().nullish(),model:F.string().nullish(),choices:F.array(F.object({text:F.string(),finish_reason:F.string(),logprobs:F.object({tokens:F.array(F.string()),token_logprobs:F.array(F.number()),top_logprobs:F.array(F.record(F.string(),F.number())).nullish()}).nullish()})),usage:F.object({prompt_tokens:F.number(),completion_tokens:F.number(),total_tokens:F.number()}).nullish()}))),vA5=Q0(()=>n1(F.union([F.object({id:F.string().nullish(),created:F.number().nullish(),model:F.string().nullish(),choices:F.array(F.object({text:F.string(),finish_reason:F.string().nullish(),index:F.number(),logprobs:F.object({tokens:F.array(F.string()),token_logprobs:F.array(F.number()),top_logprobs:F.array(F.record(F.string(),F.number())).nullish()}).nullish()})),usage:F.object({prompt_tokens:F.number(),completion_tokens:F.number(),total_tokens:F.number()}).nullish()}),NA0]))),sA6=Q0(()=>n1(F.object({echo:F.boolean().optional(),logitBias:F.record(F.string(),F.number()).optional(),suffix:F.string().optional(),user:F.string().optional(),logprobs:F.union([F.boolean(),F.number()]).optional()}))),fA5=Q0(()=>n1(F.object({dimensions:F.number().optional(),user:F.string().optional()}))),bA5=Q0(()=>n1(F.object({data:F.array(F.object({embedding:F.array(F.number())})),usage:F.object({prompt_tokens:F.number()}).nullish()}))),eA6=Q0(()=>n1(F.object({created:F.number().nullish(),data:F.array(F.object({b64_json:F.string(),revised_prompt:F.string().nullish()})),background:F.string().nullish(),output_format:F.string().nullish(),size:F.string().nullish(),quality:F.string().nullish(),usage:F.object({input_tokens:F.number().nullish(),output_tokens:F.number().nullish(),total_tokens:F.number().nullish(),input_tokens_details:F.object({image_tokens:F.number().nullish(),text_tokens:F.number().nullish()}).nullish()}).nullish()}))),hA5={"dall-e-3":1,"dall-e-2":10,"gpt-image-1":10,"gpt-image-1-mini":10,"gpt-image-1.5":10,"chatgpt-image-latest":10},xA5=["chatgpt-image-","gpt-image-1-mini","gpt-image-1.5","gpt-image-1"];HT6=Q0(()=>n1(F.object({callId:F.string(),operation:F.discriminatedUnion("type",[F.object({type:F.literal("create_file"),path:F.string(),diff:F.string()}),F.object({type:F.literal("delete_file"),path:F.string()}),F.object({type:F.literal("update_file"),path:F.string(),diff:F.string()})])}))),FT6=Q0(()=>n1(F.object({status:F.enum(["completed","failed"]),output:F.string().optional()}))),fX7=Q0(()=>n1(F.object({}))),mA5=O8({id:"openai.apply_patch",inputSchema:HT6,outputSchema:FT6}),dA5=mA5,cA5=Q0(()=>n1(F.object({code:F.string().nullish(),containerId:F.string()}))),iA5=Q0(()=>n1(F.object({outputs:F.array(F.discriminatedUnion("type",[F.object({type:F.literal("logs"),logs:F.string()}),F.object({type:F.literal("image"),url:F.string()})])).nullish()}))),pA5=Q0(()=>n1(F.object({container:F.union([F.string(),F.object({fileIds:F.array(F.string()).optional()})]).optional()}))),nA5=O8({id:"openai.code_interpreter",inputSchema:cA5,outputSchema:iA5}),rA5=Q0(()=>n1(F.object({name:F.string(),description:F.string().optional(),format:F.union([F.object({type:F.literal("grammar"),syntax:F.enum(["regex","lark"]),definition:F.string()}),F.object({type:F.literal("text")})]).optional()}))),aA5=Q0(()=>n1(F.string())),oA5=l9({id:"openai.custom",inputSchema:aA5}),UT6=F.object({key:F.string(),type:F.enum(["eq","ne","gt","gte","lt","lte","in","nin"]),value:F.union([F.string(),F.number(),F.boolean(),F.array(F.string())])}),BT6=F.object({type:F.enum(["and","or"]),filters:F.array(F.union([UT6,F.lazy(()=>BT6)]))}),eA5=Q0(()=>n1(F.object({vectorStoreIds:F.array(F.string()),maxNumResults:F.number().optional(),ranking:F.object({ranker:F.string().optional(),scoreThreshold:F.number().optional()}).optional(),filters:F.union([UT6,BT6]).optional()}))),XT5=Q0(()=>n1(F.object({queries:F.array(F.string()),results:F.array(F.object({attributes:F.record(F.string(),F.unknown()),fileId:F.string(),filename:F.string(),score:F.number(),text:F.string()})).nullable()}))),YT5=O8({id:"openai.file_search",inputSchema:F.object({}),outputSchema:XT5}),GT5=Q0(()=>n1(F.object({background:F.enum(["auto","opaque","transparent"]).optional(),inputFidelity:F.enum(["low","high"]).optional(),inputImageMask:F.object({fileId:F.string().optional(),imageUrl:F.string().optional()}).optional(),model:F.string().optional(),moderation:F.enum(["auto"]).optional(),outputCompression:F.number().int().min(0).max(100).optional(),outputFormat:F.enum(["png","jpeg","webp"]).optional(),partialImages:F.number().int().min(0).max(3).optional(),quality:F.enum(["auto","low","medium","high"]).optional(),size:F.enum(["1024x1024","1024x1536","1536x1024","auto"]).optional()}).strict())),QT5=Q0(()=>n1(F.object({}))),JT5=Q0(()=>n1(F.object({result:F.string()}))),ZT5=O8({id:"openai.image_generation",inputSchema:QT5,outputSchema:JT5}),NT6=Q0(()=>n1(F.object({action:F.object({type:F.literal("exec"),command:F.array(F.string()),timeoutMs:F.number().optional(),user:F.string().optional(),workingDirectory:F.string().optional(),env:F.record(F.string(),F.string()).optional()})}))),OT6=Q0(()=>n1(F.object({output:F.string()}))),WT5=O8({id:"openai.local_shell",inputSchema:NT6,outputSchema:OT6}),zT6=Q0(()=>n1(F.object({action:F.object({commands:F.array(F.string()),timeoutMs:F.number().optional(),maxOutputLength:F.number().optional()})}))),HA0=Q0(()=>n1(F.object({output:F.array(F.object({stdout:F.string(),stderr:F.string(),outcome:F.discriminatedUnion("type",[F.object({type:F.literal("timeout")}),F.object({type:F.literal("exit"),exitCode:F.number()})])}))}))),KT5=F.array(F.discriminatedUnion("type",[F.object({type:F.literal("skillReference"),skillId:F.string(),version:F.string().optional()}),F.object({type:F.literal("inline"),name:F.string(),description:F.string(),source:F.object({type:F.literal("base64"),mediaType:F.literal("application/zip"),data:F.string()})})])).optional(),HT5=Q0(()=>n1(F.object({environment:F.union([F.object({type:F.literal("containerAuto"),fileIds:F.array(F.string()).optional(),memoryLimit:F.enum(["1g","4g","16g","64g"]).optional(),networkPolicy:F.discriminatedUnion("type",[F.object({type:F.literal("disabled")}),F.object({type:F.literal("allowlist"),allowedDomains:F.array(F.string()),domainSecrets:F.array(F.object({domain:F.string(),name:F.string(),value:F.string()})).optional()})]).optional(),skills:KT5}),F.object({type:F.literal("containerReference"),containerId:F.string()}),F.object({type:F.literal("local").optional(),skills:F.array(F.object({name:F.string(),description:F.string(),path:F.string()})).optional()})]).optional()}))),FT5=O8({id:"openai.shell",inputSchema:zT6,outputSchema:HA0}),UT5=Q0(()=>n1(F.object({execution:F.enum(["server","client"]).optional(),description:F.string().optional(),parameters:F.record(F.string(),F.unknown()).optional()}))),FA0=Q0(()=>n1(F.object({arguments:F.unknown().optional(),call_id:F.string().nullish()}))),UA0=Q0(()=>n1(F.object({tools:F.array(F.record(F.string(),F.unknown()))}))),BT5=O8({id:"openai.tool_search",inputSchema:FA0,outputSchema:UA0}),OT5=Q0(()=>n1(F.object({externalWebAccess:F.boolean().optional(),filters:F.object({allowedDomains:F.array(F.string()).optional()}).optional(),searchContextSize:F.enum(["low","medium","high"]).optional(),userLocation:F.object({type:F.literal("approximate"),country:F.string().optional(),city:F.string().optional(),region:F.string().optional(),timezone:F.string().optional()}).optional()}))),zT5=Q0(()=>n1(F.object({}))),DT5=Q0(()=>n1(F.object({action:F.discriminatedUnion("type",[F.object({type:F.literal("search"),query:F.string().optional()}),F.object({type:F.literal("openPage"),url:F.string().nullish()}),F.object({type:F.literal("findInPage"),url:F.string().nullish(),pattern:F.string().nullish()})]).optional(),sources:F.array(F.discriminatedUnion("type",[F.object({type:F.literal("url"),url:F.string()}),F.object({type:F.literal("api"),name:F.string()})])).optional()}))),wT5=O8({id:"openai.web_search",inputSchema:zT5,outputSchema:DT5}),ET5=Q0(()=>n1(F.object({searchContextSize:F.enum(["low","medium","high"]).optional(),userLocation:F.object({type:F.literal("approximate"),country:F.string().optional(),city:F.string().optional(),region:F.string().optional(),timezone:F.string().optional()}).optional()}))),PT5=Q0(()=>n1(F.object({}))),qT5=Q0(()=>n1(F.object({action:F.discriminatedUnion("type",[F.object({type:F.literal("search"),query:F.string().optional()}),F.object({type:F.literal("openPage"),url:F.string().nullish()}),F.object({type:F.literal("findInPage"),url:F.string().nullish(),pattern:F.string().nullish()})]).optional()}))),AT5=O8({id:"openai.web_search_preview",inputSchema:PT5,outputSchema:qT5}),BA0=F.lazy(()=>F.union([F.string(),F.number(),F.boolean(),F.null(),F.array(BA0),F.record(F.string(),BA0)])),TT5=Q0(()=>n1(F.object({serverLabel:F.string(),allowedTools:F.union([F.array(F.string()),F.object({readOnly:F.boolean().optional(),toolNames:F.array(F.string()).optional()})]).optional(),authorization:F.string().optional(),connectorId:F.string().optional(),headers:F.record(F.string(),F.string()).optional(),requireApproval:F.union([F.enum(["always","never"]),F.object({never:F.object({toolNames:F.array(F.string()).optional()}).optional()})]).optional(),serverDescription:F.string().optional(),serverUrl:F.string().optional()}).refine((X)=>X.serverUrl!=null||X.connectorId!=null,"One of serverUrl or connectorId must be provided."))),IT5=Q0(()=>n1(F.object({}))),jT5=Q0(()=>n1(F.object({type:F.literal("call"),serverLabel:F.string(),name:F.string(),arguments:F.string(),output:F.string().nullish(),error:F.union([F.string(),BA0]).optional()}))),VT5=O8({id:"openai.mcp",inputSchema:IT5,outputSchema:jT5}),RT5={applyPatch:dA5,customTool:sA5,codeInterpreter:tA5,fileSearch:YT5,imageGeneration:$T5,localShell:WT5,shell:FT5,webSearchPreview:AT5,webSearch:LT5,mcp:MT5,toolSearch:NT5};CT5=F.object({itemId:F.string().nullish(),reasoningEncryptedContent:F.string().nullish()});PG1=F.lazy(()=>F.union([F.string(),F.number(),F.boolean(),F.null(),F.array(PG1),F.record(F.string(),PG1.optional())])),vT5=Q0(()=>n1(F.union([F.object({type:F.literal("response.output_text.delta"),item_id:F.string(),delta:F.string(),logprobs:F.array(F.object({token:F.string(),logprob:F.number(),top_logprobs:F.array(F.object({token:F.string(),logprob:F.number()}))})).nullish()}),F.object({type:F.enum(["response.completed","response.incomplete"]),response:F.object({incomplete_details:F.object({reason:F.string()}).nullish(),usage:F.object({input_tokens:F.number(),input_tokens_details:F.object({cached_tokens:F.number().nullish()}).nullish(),output_tokens:F.number(),output_tokens_details:F.object({reasoning_tokens:F.number().nullish()}).nullish()}),service_tier:F.string().nullish()})}),F.object({type:F.literal("response.failed"),response:F.object({error:F.object({code:F.string().nullish(),message:F.string()}).nullish(),incomplete_details:F.object({reason:F.string()}).nullish(),usage:F.object({input_tokens:F.number(),input_tokens_details:F.object({cached_tokens:F.number().nullish()}).nullish(),output_tokens:F.number(),output_tokens_details:F.object({reasoning_tokens:F.number().nullish()}).nullish()}).nullish(),service_tier:F.string().nullish()})}),F.object({type:F.literal("response.created"),response:F.object({id:F.string(),created_at:F.number(),model:F.string(),service_tier:F.string().nullish()})}),F.object({type:F.literal("response.output_item.added"),output_index:F.number(),item:F.discriminatedUnion("type",[F.object({type:F.literal("message"),id:F.string(),phase:F.enum(["commentary","final_answer"]).nullish()}),F.object({type:F.literal("reasoning"),id:F.string(),encrypted_content:F.string().nullish()}),F.object({type:F.literal("function_call"),id:F.string(),call_id:F.string(),name:F.string(),arguments:F.string()}),F.object({type:F.literal("web_search_call"),id:F.string(),status:F.string()}),F.object({type:F.literal("computer_call"),id:F.string(),status:F.string()}),F.object({type:F.literal("file_search_call"),id:F.string()}),F.object({type:F.literal("image_generation_call"),id:F.string()}),F.object({type:F.literal("code_interpreter_call"),id:F.string(),container_id:F.string(),code:F.string().nullable(),outputs:F.array(F.discriminatedUnion("type",[F.object({type:F.literal("logs"),logs:F.string()}),F.object({type:F.literal("image"),url:F.string()})])).nullable(),status:F.string()}),F.object({type:F.literal("mcp_call"),id:F.string(),status:F.string(),approval_request_id:F.string().nullish()}),F.object({type:F.literal("mcp_list_tools"),id:F.string()}),F.object({type:F.literal("mcp_approval_request"),id:F.string()}),F.object({type:F.literal("apply_patch_call"),id:F.string(),call_id:F.string(),status:F.enum(["in_progress","completed"]),operation:F.discriminatedUnion("type",[F.object({type:F.literal("create_file"),path:F.string(),diff:F.string()}),F.object({type:F.literal("delete_file"),path:F.string()}),F.object({type:F.literal("update_file"),path:F.string(),diff:F.string()})])}),F.object({type:F.literal("custom_tool_call"),id:F.string(),call_id:F.string(),name:F.string(),input:F.string()}),F.object({type:F.literal("shell_call"),id:F.string(),call_id:F.string(),status:F.enum(["in_progress","completed","incomplete"]),action:F.object({commands:F.array(F.string())})}),F.object({type:F.literal("shell_call_output"),id:F.string(),call_id:F.string(),status:F.enum(["in_progress","completed","incomplete"]),output:F.array(F.object({stdout:F.string(),stderr:F.string(),outcome:F.discriminatedUnion("type",[F.object({type:F.literal("timeout")}),F.object({type:F.literal("exit"),exit_code:F.number()})])}))}),F.object({type:F.literal("tool_search_call"),id:F.string(),execution:F.enum(["server","client"]),call_id:F.string().nullable(),status:F.enum(["in_progress","completed","incomplete"]),arguments:F.unknown()}),F.object({type:F.literal("tool_search_output"),id:F.string(),execution:F.enum(["server","client"]),call_id:F.string().nullable(),status:F.enum(["in_progress","completed","incomplete"]),tools:F.array(F.record(F.string(),PG1.optional()))})])}),F.object({type:F.literal("response.output_item.done"),output_index:F.number(),item:F.discriminatedUnion("type",[F.object({type:F.literal("message"),id:F.string(),phase:F.enum(["commentary","final_answer"]).nullish()}),F.object({type:F.literal("reasoning"),id:F.string(),encrypted_content:F.string().nullish()}),F.object({type:F.literal("function_call"),id:F.string(),call_id:F.string(),name:F.string(),arguments:F.string(),status:F.literal("completed")}),F.object({type:F.literal("custom_tool_call"),id:F.string(),call_id:F.string(),name:F.string(),input:F.string(),status:F.literal("completed")}),F.object({type:F.literal("code_interpreter_call"),id:F.string(),code:F.string().nullable(),container_id:F.string(),outputs:F.array(F.discriminatedUnion("type",[F.object({type:F.literal("logs"),logs:F.string()}),F.object({type:F.literal("image"),url:F.string()})])).nullable()}),F.object({type:F.literal("image_generation_call"),id:F.string(),result:F.string()}),F.object({type:F.literal("web_search_call"),id:F.string(),status:F.string(),action:F.discriminatedUnion("type",[F.object({type:F.literal("search"),query:F.string().nullish(),sources:F.array(F.discriminatedUnion("type",[F.object({type:F.literal("url"),url:F.string()}),F.object({type:F.literal("api"),name:F.string()})])).nullish()}),F.object({type:F.literal("open_page"),url:F.string().nullish()}),F.object({type:F.literal("find_in_page"),url:F.string().nullish(),pattern:F.string().nullish()})]).nullish()}),F.object({type:F.literal("file_search_call"),id:F.string(),queries:F.array(F.string()),results:F.array(F.object({attributes:F.record(F.string(),F.union([F.string(),F.number(),F.boolean()])),file_id:F.string(),filename:F.string(),score:F.number(),text:F.string()})).nullish()}),F.object({type:F.literal("local_shell_call"),id:F.string(),call_id:F.string(),action:F.object({type:F.literal("exec"),command:F.array(F.string()),timeout_ms:F.number().optional(),user:F.string().optional(),working_directory:F.string().optional(),env:F.record(F.string(),F.string()).optional()})}),F.object({type:F.literal("computer_call"),id:F.string(),status:F.literal("completed")}),F.object({type:F.literal("mcp_call"),id:F.string(),status:F.string(),arguments:F.string(),name:F.string(),server_label:F.string(),output:F.string().nullish(),error:F.union([F.string(),F.object({type:F.string().optional(),code:F.union([F.number(),F.string()]).optional(),message:F.string().optional()}).loose()]).nullish(),approval_request_id:F.string().nullish()}),F.object({type:F.literal("mcp_list_tools"),id:F.string(),server_label:F.string(),tools:F.array(F.object({name:F.string(),description:F.string().optional(),input_schema:F.any(),annotations:F.record(F.string(),F.unknown()).optional()})),error:F.union([F.string(),F.object({type:F.string().optional(),code:F.union([F.number(),F.string()]).optional(),message:F.string().optional()}).loose()]).optional()}),F.object({type:F.literal("mcp_approval_request"),id:F.string(),server_label:F.string(),name:F.string(),arguments:F.string(),approval_request_id:F.string().optional()}),F.object({type:F.literal("apply_patch_call"),id:F.string(),call_id:F.string(),status:F.enum(["in_progress","completed"]),operation:F.discriminatedUnion("type",[F.object({type:F.literal("create_file"),path:F.string(),diff:F.string()}),F.object({type:F.literal("delete_file"),path:F.string()}),F.object({type:F.literal("update_file"),path:F.string(),diff:F.string()})])}),F.object({type:F.literal("shell_call"),id:F.string(),call_id:F.string(),status:F.enum(["in_progress","completed","incomplete"]),action:F.object({commands:F.array(F.string())})}),F.object({type:F.literal("shell_call_output"),id:F.string(),call_id:F.string(),status:F.enum(["in_progress","completed","incomplete"]),output:F.array(F.object({stdout:F.string(),stderr:F.string(),outcome:F.discriminatedUnion("type",[F.object({type:F.literal("timeout")}),F.object({type:F.literal("exit"),exit_code:F.number()})])}))}),F.object({type:F.literal("tool_search_call"),id:F.string(),execution:F.enum(["server","client"]),call_id:F.string().nullable(),status:F.enum(["in_progress","completed","incomplete"]),arguments:F.unknown()}),F.object({type:F.literal("tool_search_output"),id:F.string(),execution:F.enum(["server","client"]),call_id:F.string().nullable(),status:F.enum(["in_progress","completed","incomplete"]),tools:F.array(F.record(F.string(),PG1.optional()))})])}),F.object({type:F.literal("response.function_call_arguments.delta"),item_id:F.string(),output_index:F.number(),delta:F.string()}),F.object({type:F.literal("response.custom_tool_call_input.delta"),item_id:F.string(),output_index:F.number(),delta:F.string()}),F.object({type:F.literal("response.image_generation_call.partial_image"),item_id:F.string(),output_index:F.number(),partial_image_b64:F.string()}),F.object({type:F.literal("response.code_interpreter_call_code.delta"),item_id:F.string(),output_index:F.number(),delta:F.string()}),F.object({type:F.literal("response.code_interpreter_call_code.done"),item_id:F.string(),output_index:F.number(),code:F.string()}),F.object({type:F.literal("response.output_text.annotation.added"),annotation:F.discriminatedUnion("type",[F.object({type:F.literal("url_citation"),start_index:F.number(),end_index:F.number(),url:F.string(),title:F.string()}),F.object({type:F.literal("file_citation"),file_id:F.string(),filename:F.string(),index:F.number()}),F.object({type:F.literal("container_file_citation"),container_id:F.string(),file_id:F.string(),filename:F.string(),start_index:F.number(),end_index:F.number()}),F.object({type:F.literal("file_path"),file_id:F.string(),index:F.number()})])}),F.object({type:F.literal("response.reasoning_summary_part.added"),item_id:F.string(),summary_index:F.number()}),F.object({type:F.literal("response.reasoning_summary_text.delta"),item_id:F.string(),summary_index:F.number(),delta:F.string()}),F.object({type:F.literal("response.reasoning_summary_part.done"),item_id:F.string(),summary_index:F.number()}),F.object({type:F.literal("response.apply_patch_call_operation_diff.delta"),item_id:F.string(),output_index:F.number(),delta:F.string(),obfuscation:F.string().nullish()}),F.object({type:F.literal("response.apply_patch_call_operation_diff.done"),item_id:F.string(),output_index:F.number(),diff:F.string()}),F.object({type:F.literal("error"),sequence_number:F.number(),error:F.object({type:F.string(),code:F.string(),message:F.string(),param:F.string().nullish()})}),F.object({type:F.string()}).loose().transform((X)=>({type:"unknown_chunk",message:X.type}))]))),_T5=Q0(()=>n1(F.object({id:F.string().optional(),created_at:F.number().optional(),error:F.object({message:F.string(),type:F.string(),param:F.string().nullish(),code:F.string()}).nullish(),model:F.string().optional(),output:F.array(F.discriminatedUnion("type",[F.object({type:F.literal("message"),role:F.literal("assistant"),id:F.string(),phase:F.enum(["commentary","final_answer"]).nullish(),content:F.array(F.object({type:F.literal("output_text"),text:F.string(),logprobs:F.array(F.object({token:F.string(),logprob:F.number(),top_logprobs:F.array(F.object({token:F.string(),logprob:F.number()}))})).nullish(),annotations:F.array(F.discriminatedUnion("type",[F.object({type:F.literal("url_citation"),start_index:F.number(),end_index:F.number(),url:F.string(),title:F.string()}),F.object({type:F.literal("file_citation"),file_id:F.string(),filename:F.string(),index:F.number()}),F.object({type:F.literal("container_file_citation"),container_id:F.string(),file_id:F.string(),filename:F.string(),start_index:F.number(),end_index:F.number()}),F.object({type:F.literal("file_path"),file_id:F.string(),index:F.number()})]))}))}),F.object({type:F.literal("web_search_call"),id:F.string(),status:F.string(),action:F.discriminatedUnion("type",[F.object({type:F.literal("search"),query:F.string().nullish(),sources:F.array(F.discriminatedUnion("type",[F.object({type:F.literal("url"),url:F.string()}),F.object({type:F.literal("api"),name:F.string()})])).nullish()}),F.object({type:F.literal("open_page"),url:F.string().nullish()}),F.object({type:F.literal("find_in_page"),url:F.string().nullish(),pattern:F.string().nullish()})]).nullish()}),F.object({type:F.literal("file_search_call"),id:F.string(),queries:F.array(F.string()),results:F.array(F.object({attributes:F.record(F.string(),F.union([F.string(),F.number(),F.boolean()])),file_id:F.string(),filename:F.string(),score:F.number(),text:F.string()})).nullish()}),F.object({type:F.literal("code_interpreter_call"),id:F.string(),code:F.string().nullable(),container_id:F.string(),outputs:F.array(F.discriminatedUnion("type",[F.object({type:F.literal("logs"),logs:F.string()}),F.object({type:F.literal("image"),url:F.string()})])).nullable()}),F.object({type:F.literal("image_generation_call"),id:F.string(),result:F.string()}),F.object({type:F.literal("local_shell_call"),id:F.string(),call_id:F.string(),action:F.object({type:F.literal("exec"),command:F.array(F.string()),timeout_ms:F.number().optional(),user:F.string().optional(),working_directory:F.string().optional(),env:F.record(F.string(),F.string()).optional()})}),F.object({type:F.literal("function_call"),call_id:F.string(),name:F.string(),arguments:F.string(),id:F.string()}),F.object({type:F.literal("custom_tool_call"),call_id:F.string(),name:F.string(),input:F.string(),id:F.string()}),F.object({type:F.literal("computer_call"),id:F.string(),status:F.string().optional()}),F.object({type:F.literal("reasoning"),id:F.string(),encrypted_content:F.string().nullish(),summary:F.array(F.object({type:F.literal("summary_text"),text:F.string()}))}),F.object({type:F.literal("mcp_call"),id:F.string(),status:F.string(),arguments:F.string(),name:F.string(),server_label:F.string(),output:F.string().nullish(),error:F.union([F.string(),F.object({type:F.string().optional(),code:F.union([F.number(),F.string()]).optional(),message:F.string().optional()}).loose()]).nullish(),approval_request_id:F.string().nullish()}),F.object({type:F.literal("mcp_list_tools"),id:F.string(),server_label:F.string(),tools:F.array(F.object({name:F.string(),description:F.string().optional(),input_schema:F.any(),annotations:F.record(F.string(),F.unknown()).optional()})),error:F.union([F.string(),F.object({type:F.string().optional(),code:F.union([F.number(),F.string()]).optional(),message:F.string().optional()}).loose()]).optional()}),F.object({type:F.literal("mcp_approval_request"),id:F.string(),server_label:F.string(),name:F.string(),arguments:F.string(),approval_request_id:F.string().optional()}),F.object({type:F.literal("apply_patch_call"),id:F.string(),call_id:F.string(),status:F.enum(["in_progress","completed"]),operation:F.discriminatedUnion("type",[F.object({type:F.literal("create_file"),path:F.string(),diff:F.string()}),F.object({type:F.literal("delete_file"),path:F.string()}),F.object({type:F.literal("update_file"),path:F.string(),diff:F.string()})])}),F.object({type:F.literal("shell_call"),id:F.string(),call_id:F.string(),status:F.enum(["in_progress","completed","incomplete"]),action:F.object({commands:F.array(F.string())})}),F.object({type:F.literal("shell_call_output"),id:F.string(),call_id:F.string(),status:F.enum(["in_progress","completed","incomplete"]),output:F.array(F.object({stdout:F.string(),stderr:F.string(),outcome:F.discriminatedUnion("type",[F.object({type:F.literal("timeout")}),F.object({type:F.literal("exit"),exit_code:F.number()})])}))}),F.object({type:F.literal("tool_search_call"),id:F.string(),execution:F.enum(["server","client"]),call_id:F.string().nullable(),status:F.enum(["in_progress","completed","incomplete"]),arguments:F.unknown()}),F.object({type:F.literal("tool_search_output"),id:F.string(),execution:F.enum(["server","client"]),call_id:F.string().nullable(),status:F.enum(["in_progress","completed","incomplete"]),tools:F.array(F.record(F.string(),PG1.optional()))})])).optional(),service_tier:F.string().nullish(),incomplete_details:F.object({reason:F.string()}).nullish(),usage:F.object({input_tokens:F.number(),input_tokens_details:F.object({cached_tokens:F.number().nullish()}).nullish(),output_tokens:F.number(),output_tokens_details:F.object({reasoning_tokens:F.number().nullish()}).nullish()}).optional()}))),fT5=["o1","o1-2024-12-17","o3","o3-2025-04-16","o3-mini","o3-mini-2025-01-31","o4-mini","o4-mini-2025-04-16","gpt-5","gpt-5-2025-08-07","gpt-5-codex","gpt-5-mini","gpt-5-mini-2025-08-07","gpt-5-nano","gpt-5-nano-2025-08-07","gpt-5-pro","gpt-5-pro-2025-10-06","gpt-5.1","gpt-5.1-chat-latest","gpt-5.1-codex-mini","gpt-5.1-codex","gpt-5.1-codex-max","gpt-5.2","gpt-5.2-chat-latest","gpt-5.2-pro","gpt-5.2-codex","gpt-5.3-chat-latest","gpt-5.3-codex","gpt-5.4","gpt-5.4-2026-03-05","gpt-5.4-mini","gpt-5.4-mini-2026-03-17","gpt-5.4-nano","gpt-5.4-nano-2026-03-17","gpt-5.4-pro","gpt-5.4-pro-2026-03-05"],FY7=["gpt-4.1","gpt-4.1-2025-04-14","gpt-4.1-mini","gpt-4.1-mini-2025-04-14","gpt-4.1-nano","gpt-4.1-nano-2025-04-14","gpt-4o","gpt-4o-2024-05-13","gpt-4o-2024-08-06","gpt-4o-2024-11-20","gpt-4o-audio-preview","gpt-4o-audio-preview-2024-12-17","gpt-4o-search-preview","gpt-4o-search-preview-2025-03-11","gpt-4o-mini-search-preview","gpt-4o-mini-search-preview-2025-03-11","gpt-4o-mini","gpt-4o-mini-2024-07-18","gpt-3.5-turbo-0125","gpt-3.5-turbo","gpt-3.5-turbo-1106","gpt-5-chat-latest",...fT5],QT6=Q0(()=>n1(F.object({conversation:F.string().nullish(),include:F.array(F.enum(["reasoning.encrypted_content","file_search_call.results","message.output_text.logprobs"])).nullish(),instructions:F.string().nullish(),logprobs:F.union([F.boolean(),F.number().min(1).max(DT6)]).optional(),maxToolCalls:F.number().nullish(),metadata:F.any().nullish(),parallelToolCalls:F.boolean().nullish(),previousResponseId:F.string().nullish(),promptCacheKey:F.string().nullish(),promptCacheRetention:F.enum(["in_memory","24h"]).nullish(),reasoningEffort:F.string().nullish(),reasoningSummary:F.string().nullish(),safetyIdentifier:F.string().nullish(),serviceTier:F.enum(["auto","flex","priority","default"]).nullish(),store:F.boolean().nullish(),strictJsonSchema:F.boolean().nullish(),textVerbosity:F.enum(["low","medium","high"]).nullish(),truncation:F.enum(["auto","disabled"]).nullish(),user:F.string().nullish(),systemMessageMode:F.enum(["system","developer","remove"]).optional(),forceReasoning:F.boolean().optional()})));eT5=Q0(()=>n1(F.object({instructions:F.string().nullish(),speed:F.number().min(0.25).max(4).default(1).nullish()}))),YI5=Q0(()=>n1(F.object({text:F.string(),language:F.string().nullish(),duration:F.number().nullish(),words:F.array(F.object({word:F.string(),start:F.number(),end:F.number()})).nullish(),segments:F.array(F.object({id:F.number(),seek:F.number(),start:F.number(),end:F.number(),text:F.string(),tokens:F.array(F.number()),temperature:F.number(),avg_logprob:F.number(),compression_ratio:F.number(),no_speech_prob:F.number()})).nullish()}))),GI5=Q0(()=>n1(F.object({include:F.array(F.string()).optional(),language:F.string().optional(),prompt:F.string().optional(),temperature:F.number().min(0).max(1).default(0).optional(),timestampGranularities:F.array(F.enum(["word","segment"])).default(["segment"]).optional()}))),WT6={afrikaans:"af",arabic:"ar",armenian:"hy",azerbaijani:"az",belarusian:"be",bosnian:"bs",bulgarian:"bg",catalan:"ca",chinese:"zh",croatian:"hr",czech:"cs",danish:"da",dutch:"nl",english:"en",estonian:"et",finnish:"fi",french:"fr",galician:"gl",german:"de",greek:"el",hebrew:"he",hindi:"hi",hungarian:"hu",icelandic:"is",indonesian:"id",italian:"it",japanese:"ja",kannada:"kn",kazakh:"kk",korean:"ko",latvian:"lv",lithuanian:"lt",macedonian:"mk",malay:"ms",marathi:"mr",maori:"mi",nepali:"ne",norwegian:"no",persian:"fa",polish:"pl",portuguese:"pt",romanian:"ro",russian:"ru",serbian:"sr",slovak:"sk",slovenian:"sl",spanish:"es",swahili:"sw",swedish:"sv",tagalog:"tl",tamil:"ta",thai:"th",turkish:"tr",ukrainian:"uk",urdu:"ur",vietnamese:"vi",welsh:"cy"};qY7=OA0()});function ZI5(X){let Y=JSON.parse(X);if(!Y.baseUrl||typeof Y.baseUrl!=="string")throw Error("Invalid OpenAI-compatible credential: missing baseUrl field");let G=Y.baseUrl.replace(/\/+$/,"");if(!G.endsWith("/v1"))G+="/v1";return{baseUrl:G,apiKey:Y.apiKey??""}}var $I5="https://assets.decocache.com/decocms/d138aa7e-5b8c-4821-9e64-6aff40df2cdc/ChatGPT_logo.svg",LT6;var ET6=D(()=>{wT6();LT6={info:{id:"openai-compatible",name:"OpenAI Compatible",description:"Custom OpenAI-compatible endpoint",logo:$I5},supportedMethods:["api-key"],create(X){let{baseUrl:Y,apiKey:G}=ZI5(X),Q=OA0({baseURL:Y,apiKey:G||"not-needed",name:"openai-compatible"}),J=Object.assign((...$)=>Q.chat(...$),Q,{languageModel:Q.chat});return{info:this.info,aiSdk:J,async listModels(){let $={};if(G)$.Authorization=`Bearer ${G}`;let Z=await fetch(`${Y}/models`,{headers:$,signal:AbortSignal.timeout(15000)});if(!Z.ok)throw Error(`OpenAI-compatible listModels failed: ${Z.status}`);return(await Z.json()).data.map((K)=>({providerId:"openai-compatible",modelId:K.id,title:K.id,description:K.owned_by?`Owned by ${K.owned_by}`:null,logo:null,capabilities:[],limits:null,costs:null}))}}}}});function tQ(){let X=h4();return{...X.aiGatewayEnabled&&{deco:T51},...X.localMode&&{"claude-code":hq0,codex:YA0},anthropic:Bq6,google:iA6,openrouter:zq1,"openai-compatible":LT6}}var Kw=D(()=>{Nq6();xj1();ij1();pA6();ET6();_N0();bN0();e5()});function WI5(X){return X.includes("/")?X.split("/").slice(1).join("/"):X}function KI5(X){let Y=X.supported_parameters.includes("tools"),G=X.supported_parameters.includes("reasoning");return{providerId:"openrouter",modelId:WI5(X.id),title:X.name,description:X.description||null,logo:null,capabilities:[...new Set([...X.architecture.input_modalities.map((Q)=>Q==="image"?"vision":Q),...X.architecture.output_modalities,...Y?["tools"]:[],...G?["reasoning"]:[]])],limits:{contextWindow:X.context_length,maxOutputTokens:X.top_provider.max_completion_tokens||null},costs:{input:X.pricing.prompt,output:X.pricing.completion}}}function qT6(X){let Y=new Map;for(let G of X){let Q={description:G.description,capabilities:G.capabilities,limits:G.limits,costs:G.costs};Y.set(G.modelId,Q);let J=G.modelId.replace(/\./g,"-");if(J!==G.modelId)Y.set(J,Q)}return Y}async function HI5(X){if(X){let Y=await X.get(PT6,"openrouter");if(Y)return qT6(Y)}try{let Y=await fetch("https://openrouter.ai/api/v1/models",{signal:AbortSignal.timeout(1e4)});if(!Y.ok)return new Map;let{data:G}=await Y.json(),Q=G.map(KI5);if(X)await X.set(PT6,"openrouter",Q);return qT6(Q)}catch{return new Map}}function FI5(X){let Y=X.replace(/\./g,"-"),G=X.replace(/-\d{8}$/,""),Q=G.replace(/\./g,"-");return[...new Set([X,Y,G,Q])]}function UI5(X){return X.providerId==="anthropic"||X.modelId.startsWith("anthropic/")}function TT6(X,Y){if(UI5(Y)&&X.includes("vision")&&!X.includes("file"))return[...X,"file"];return X}function BI5(X,Y){return X.map((G)=>{let J=FI5(G.modelId).map((W)=>Y.get(W)).find(Boolean),$=G.capabilities.length?G.capabilities:J?.capabilities??[],Z=TT6($,G);if(!J)return Z===$?G:{...G,capabilities:Z};return{...G,description:G.description??J.description??null,capabilities:Z,limits:G.limits??J.limits??null,costs:G.costs??J.costs??null}})}class zA0{storage;cache;constructor(X,Y){this.storage=X;this.cache=Y}async activate(X,Y){let{keyInfo:G,apiKey:Q}=await this.storage.resolve(X,Y),J=tQ()[G.providerId];if(!J)throw Error(`Unknown provider: ${G.providerId}`);return J.create(Q)}async listModels(X,Y){let{keyInfo:G,apiKey:Q}=await this.storage.resolve(X,Y),J=G.providerId,$=tQ()[J];if(!$)throw Error(`Unknown provider: ${J}`);if(this.cache){let B=await this.cache.get(Y,J);if(B)return AT6(B,$,Q)}let W=await $.create(Q).listModels(),K=new Set,H=W.filter((B)=>{if(B.deprecated)return!1;if(K.has(B.modelId))return!1;return K.add(B.modelId),!0});if(J!=="openrouter"){let B=await HI5(this.cache);H=BI5(H,B)}else H=H.map((B)=>({...B,capabilities:TT6(B.capabilities,B)}));let U=H.map((B)=>({...B,providerId:J}));if(this.cache)await this.cache.set(Y,J,U);return AT6(U,$,Q)}}function AT6(X,Y,G){let J=Y.create(G).asyncResearch;if(!J)return X;return X.map(($)=>J.canHandle($.modelId)?{...$,asyncResearch:!0}:$)}var PT6="_global";var IT6=D(()=>{Kw()});function nj1(X,Y){return{get:(G)=>X.get(Y,G),put:(G,Q,J)=>X.put(Y,G,Q,J),list:(G)=>X.list(Y,G),delete:(G)=>X.delete(Y,G),head:(G)=>X.head(Y,G),presignedGetUrl:(G,Q)=>X.presignedGetUrl(Y,G,Q),presignedPutUrl:(G,Q,J)=>X.presignedPutUrl(Y,G,Q,J)}}import{mkdir as NI5,readdir as OI5,readFile as jT6,stat as tj1,unlink as zI5,writeFile as DI5}from"fs/promises";import{createHmac as wI5}from"crypto";import{dirname as LI5,join as AG1}from"path";function DA0(X){let Y=X.replace(/[^a-zA-Z0-9_-]/g,"_");return AG1(EI5,Y)}function qG1(X,Y){return AG1(DA0(X),gd(Y))}class TG1{orgId;baseUrl;constructor(X,Y){this.orgId=X;this.baseUrl=Y}async get(X){let Y=qG1(this.orgId,X),G=await tj1(Y),Q=xL(X),J=await jT6(Y),$=eF1(Q);return{content:$?new TextDecoder().decode(J):Buffer.from(J).toString("base64"),contentType:Q,encoding:$?"utf-8":"base64",size:G.size,lastModified:G.mtime}}async put(X,Y,G){let Q=qG1(this.orgId,X);return await NI5(LI5(Q),{recursive:!0}),await DI5(Q,typeof Y==="string"?Buffer.from(Y,"utf-8"):Y),{key:X}}async list(X){let Y=X?.prefix?AG1(DA0(this.orgId),gd(X.prefix)):DA0(this.orgId),G;try{G=await OI5(Y,{withFileTypes:!0})}catch{return{objects:[],isTruncated:!1}}let Q=X?.maxKeys??1000,J=X?.prefix,$=G.filter((W)=>W.isFile());if(X?.delimiter){let W=[],K=G.filter((z)=>z.isDirectory());for(let z of K){let w=J?`${J}/${z.name}/`:`${z.name}/`;W.push(w)}W.sort();let H=Q,U=W.slice(0,H);H-=U.length;let B=$.slice(0,H),N=W.length+$.length;return{objects:await Promise.all(B.map(async(z)=>{let w=await tj1(AG1(Y,z.name));return{key:J?`${J}/${z.name}`:z.name,size:w.size,lastModified:w.mtime}})),isTruncated:N>Q,commonPrefixes:U.length>0?U:void 0}}return{objects:await Promise.all($.slice(0,Q).map(async(W)=>{let K=await tj1(AG1(Y,W.name));return{key:J?`${J}/${W.name}`:W.name,size:K.size,lastModified:K.mtime}})),isTruncated:$.length>Q}}async delete(X){await zI5(qG1(this.orgId,X))}async head(X){let Y=await tj1(qG1(this.orgId,X));return{contentType:xL(X),size:Y.size,lastModified:Y.mtime}}async presignedGetUrl(X){let Y=qG1(this.orgId,X),G=await jT6(Y),Q=xL(X),J=Buffer.from(G).toString("base64");return`data:${Q};base64,${J}`}async presignedPutUrl(X,Y=3600){if(!this.baseUrl)throw Error("baseUrl required for presigned PUT URLs in dev mode");let G=gd(X),Q=Math.floor(Date.now()/1000)+Y,J=h4().encryptionKey||"dev-secret",$=`${this.orgId}:${G}:${Q}:PUT`,Z=wI5("sha256",J).update($).digest("hex"),W=new URL(`/api/dev-assets/${this.orgId}/${G}`,this.baseUrl);return W.searchParams.set("expires",Q.toString()),W.searchParams.set("signature",Z),W.searchParams.set("method","PUT"),W.toString()}}var EI5="./data/assets";var wA0=D(()=>{A50();e5()});function PI5(X){if(!X)return;try{let Y=JSON.parse(X);if(typeof Y!=="object"||Y===null||Array.isArray(Y))return;let G={};for(let[Q,J]of Object.entries(Y))if(typeof J==="string")G[Q]=J;return Object.keys(G).length>0?G:void 0}catch{return}}function qI5(X,Y){for(let[G,Q]of Object.entries(Y)){let J=X[G];if(!J||J.length===0){let $=X["*"];if(!$||$.length===0)return!1;if($.includes("*"))continue;for(let Z of Q)if(!$.includes(Z))return!1;continue}if(J.includes("*"))continue;for(let $ of Q)if(!J.includes($))return!1}return!0}function EA0(X){let{auth:Y,headers:G,role:Q,permissions:J,userId:$}=X,Z=Y.api.hasPermission;return{hasPermission:async(W,K)=>{if(Q&&UP0.includes(Q))return!0;if(J)return qI5(J,W);if(!Z)return console.error("[Auth] hasPermission API not available"),!1;let H=K?.organizationId?{organizationId:K.organizationId}:{};try{if((await Z({headers:G,body:{permission:W,...H}}))?.success===!0)return!0;let B={};for(let O of Object.keys(W))B[O]=["*"];return(await Z({headers:G,body:{permission:B,...H}}))?.success===!0}catch(U){return console.error("[Auth] Permission check failed:",U),!1}},organization:{create:async(W)=>{return Y.api.createOrganization({headers:G,body:W})},update:async(W)=>{return Y.api.updateOrganization({headers:G,body:W})},delete:async(W)=>{await Y.api.deleteOrganization({headers:G,body:{organizationId:W}})},get:async(W)=>{return Y.api.getFullOrganization({headers:G,query:W?{organizationId:W}:void 0})},list:async(W)=>{return Y.api.listOrganizations({headers:G,query:W?{userId:W}:void 0})},addMember:async(W)=>{return Y.api.addMember({headers:G,body:W})},removeMember:async(W)=>{await Y.api.removeMember({headers:G,body:W})},listMembers:async(W)=>{return Y.api.listMembers({headers:G,query:W?{organizationId:W.organizationId,limit:W.limit,offset:W.offset}:void 0})},updateMemberRole:async(W)=>{return Y.api.updateMemberRole({headers:G,body:W})}},apiKey:{create:async(W)=>{return Y.api.createApiKey({body:{...W,userId:$}})},list:async()=>{return Y.api.listApiKeys({headers:G})},update:async(W)=>{return Y.api.updateApiKey({body:{...W,userId:$}})},delete:async(W)=>{await Y.api.deleteApiKey({headers:G,body:{keyId:W}})}}}}async function PA0(X,Y,G){if(UP0.includes(G))return;let Q=await X.selectFrom("organizationRole").select(["permission"]).where("organizationId","=",Y).where("role","=",G).executeTakeFirst();if(!Q?.permission)return;try{return JSON.parse(Q.permission)}catch{console.error(`[Auth] Failed to parse permissions for role: ${G}`);return}}async function AI5(X,Y,G,Q=MT6,J){let $=X.headers.get("Authorization");try{let Z=new Headers(X.headers);Z.set("X-MCP-Session-Auth","true");let W=await Q.measure("auth_get_mcp_session",()=>Y.api.getMcpSession({headers:Z}));if(W){let K=W.userId,H=X.headers.get("x-org-id"),U=X.headers.get("x-org-slug"),B=await Q.measure("auth_query_membership",()=>{let w=G.selectFrom("member").innerJoin("organization","organization.id","member.organizationId").select(["member.role","member.organizationId","organization.id as orgId","organization.slug as orgSlug","organization.name as orgName"]).where("member.userId","=",K);if(H)return w.where("organization.id","=",H).executeTakeFirst();if(U)return w.where("organization.slug","=",U).executeTakeFirst();return w.executeTakeFirst()}),N=B?.role,O=B?{id:B.orgId,slug:B.orgSlug,name:B.orgName}:void 0;if(B&&N)J?.set(K,B.organizationId,N);let z;if(B&&N)z=await Q.measure("auth_fetch_role_permissions",()=>PA0(G,B.organizationId,N));return{user:{id:K,role:N},role:N,permissions:z,organization:O}}}catch(Z){console.error("[Auth] OAuth session check failed:",Z)}if($?.startsWith("Bearer ")){let Z=$.replace("Bearer ","").trim();try{let W=await Q.measure("auth_verify_mesh_jwt",()=>yQ6(Z));if(W){let K,H=W.metadata?.organizationId;if(W.sub&&H){let N=J?.get(W.sub,H);if(N)K=N;else if(K=(await Q.measure("auth_query_membership",()=>G.selectFrom("member").select(["member.role"]).where("member.userId","=",W.sub).where("member.organizationId","=",H).executeTakeFirst()))?.role,K)J?.set(W.sub,H,K)}let U,B=W.metadata?.organizationId;if(B){let N=W.metadata?.organizationName,O=W.metadata?.organizationSlug;if(N||O)U={id:B,name:N,slug:O};else{let z=await Q.measure("auth_query_org_for_mesh_jwt",()=>G.selectFrom("organization").select(["id","slug","name"]).where("id","=",B).executeTakeFirst());U=z?{id:z.id,slug:z.slug,name:z.name}:{id:B}}}return{user:{id:W.sub,connectionId:W.metadata?.connectionId,role:K},role:K,permissions:W.permissions,organization:U}}}catch{}try{let W=await Q.measure("auth_verify_api_key",()=>Y.api.verifyApiKey({body:{key:Z}}));if(W?.valid&&W.key){let K=W.key.metadata?.organization,H=W.key.permissions,U,B=W.key.userId;if(B&&K?.id){let N=J?.get(B,K.id);if(N)U=N;else if(U=(await Q.measure("auth_query_membership",()=>G.selectFrom("member").select(["member.role"]).where("member.userId","=",B).where("member.organizationId","=",K.id).executeTakeFirst()))?.role,B&&U)J?.set(B,K.id,U)}return{apiKeyId:W.key.id,user:{id:W.key.userId,role:U},role:U,permissions:H,organization:K?{id:K.id,slug:K.slug,name:K.name}:void 0}}}catch(W){console.error("[Auth] API key check failed:",W)}}try{let Z=new Headers(X.headers);Z.delete("Authorization");let W=await Q.measure("auth_get_session",()=>Y.api.getSession({headers:Z}));if(W){let K,H,U=X.headers.get("x-org-id"),B=X.headers.get("x-org-slug");if(!U&&!B&&X.method.toUpperCase()==="GET")try{let N=new URL(X.url).searchParams;U=N.get("x-org-id"),B=N.get("x-org-slug")}catch{}if(U||B){let N=await Q.measure("auth_query_membership_from_header",()=>{let O=G.selectFrom("member").innerJoin("organization","organization.id","member.organizationId").select(["member.role","organization.id as orgId","organization.slug as orgSlug","organization.name as orgName"]).where("member.userId","=",W.user.id);if(U)O=O.where("organization.id","=",U);else if(B)O=O.where("organization.slug","=",B);return O.executeTakeFirst()});if(N)K={id:N.orgId,slug:N.orgSlug,name:N.orgName},H=N.role}else if(W.session.activeOrganizationId){let N=await Q.measure("auth_get_full_organization",()=>Y.api.getFullOrganization({headers:Z}).catch(()=>null));if(N)K={id:N.id,slug:N.slug,name:N.name},H=N.members?.find((z)=>z.userId===W.user.id)?.role;else K={id:W.session.activeOrganizationId,slug:"",name:""}}return{user:{id:W.user.id,email:W.user.email,emailVerified:!!W.user.emailVerified,name:W.user.name,image:W.user.image??void 0,role:H},role:H,organization:K}}}catch(Z){let W=Z;console.error("[Auth] Session check failed:",JSON.stringify({message:W.message,body:W.body,stack:W.stack},null,2))}return{user:void 0}}async function RT6(X){let Y=new CV(X.encryption.key),G=h4().clickhouseUrl,Q=!!G,J=Q?"clickhouse":"duckdb",$,Z;if(Q)$=new z71(G),Z=new z71(G);else{let{engine:w}=await iE0({basePath:PO()}),{engine:E}=await iE0({basePath:QT()});$=w,Z=E}let{resolve:W}=await import("path"),K=W(PO()),H=W(QT()),U=Q?(w)=>"monitoring_logs":(w)=>`read_ndjson('${K}/${w}/**/*.ndjson', auto_detect=true)`,B=process.env.USE_METRICS_ROLLUP!=="false",N=Q?(w)=>B?"monitoring_metrics_rollup_1m":"monitoring_metrics":(w)=>`read_ndjson('${H}/${w}/**/*.ndjson', auto_detect=true)`,O=new A71(X.db),z={connections:new M51(X.db,Y),organizationSettings:new pE0(X.db),monitoring:new OL0($,U,Z,N,J),virtualMcps:new R51(X.db),users:new JP0(X.db),tags:new QP0(X.db),virtualMcpPluginConfigs:new nE0(X.db),aiProviderKeys:new j51(X.db,Y),oauthPkceStates:new NP0(X.db),automations:gI1(X.db),triggerCallbackTokens:new D71(X.db),orgSsoConfig:new oE0(X.db,Y),orgSsoSessions:new sE0(X.db),registry:{items:new Wr(X.db),publishRequests:new Kr(X.db),publishApiKeys:new Hr(X.db),monitorRuns:new nI1(X.db),monitorResults:new tI1(X.db),monitorConnections:new rI1(X.db)},brandContext:new w71(X.db),organizationDomains:new ED(X.db)};return async(w,E)=>{let P=E?.timings??MT6,A=Br(),V=w?await X.observability.tracer.startActiveSpan("mesh.auth",async(m)=>{try{let e=await AI5(w,X.auth,X.db,P,X.memberRoleCache);return m.setStatus({code:LA0.SpanStatusCode.OK}),e}catch(e){throw m.setStatus({code:LA0.SpanStatusCode.ERROR,message:e.message}),m.recordException(e),e}finally{m.end()}}):{user:void 0},M=w?.headers.get("x-caller-id")??V.user?.connectionId??void 0,j=EA0({auth:X.auth,headers:w?.headers??new Headers,role:V.role,permissions:V.permissions,userId:V.user?.id}),R={user:V.user};if(V.apiKeyId)R.apiKey={id:V.apiKeyId,name:"",userId:""};let C=V.organization,_=w?h4().baseUrl??`${new URL(w.url).origin}`:N3(),v=new g2(X.auth,R.user?.id,void 0,j,V.role,"self",void 0,C?.id),y={...z,threads:new q71(O,C?.id)},x=new zA0(y.aiProviderKeys,X.modelListCache),i=ud(),t=!C?null:i?nj1(i,C.id):new TG1(C.id,_),b={timings:P,auth:R,connectionId:M,organization:C,storage:y,vault:Y,authInstance:X.auth,boundAuth:j,access:v,db:X.db,tracer:X.observability.tracer,meter:X.observability.meter,baseUrl:_,objectStorage:t,metadata:{requestId:crypto.randomUUID(),timestamp:new Date,wellKnownForwardableHeaders:Object.fromEntries(TI5.map((m)=>[m,w?.headers.get(m)??null]).filter(([m,e])=>e!==null)),userAgent:w?.headers.get("x-mesh-client")||w?.headers.get("User-Agent")||void 0,ipAddress:(w?.headers.get("CF-Connecting-IP")||w?.headers.get("X-Forwarded-For"))??void 0,properties:PI5(w?.headers.get("x-mesh-properties"))},eventBus:X.eventBus,aiProviders:x,createMCPProxy:async(m)=>{return await wL6(m,b)},invalidateMemberRole:X.memberRoleCache?(m,e)=>X.memberRoleCache.invalidate(m,e):void 0,getOrCreateClient:A,pendingRevalidations:[],firecrawlApiKey:h4().firecrawlApiKey};return b}}var LA0,VT6,OU,MT6,TI5;var IG1=D(()=>{fV();Dq1();e5();LD();xN0();gN0();DN6();rw6();a3();aw6();tE0();aE0();WL6();KL6();aI1();sI1();E71();Yj1();Gj1();yN0();IT6();XU1();wA0();LA0=X1(b0(),1);OU={set:(X)=>{VT6=X},create:async(X,Y)=>{return await VT6(X,Y)}},MT6={measure:async(X,Y)=>{return await Y()}},TI5=["x-hub-signature-256"]});async function ST6(X,Y,G){return(await Y.storage.connections.findById(X,G))?.connection_url??null}function II5(X){let Y=X.toLowerCase();return Y.includes("resource_metadata=")||Y.includes("invalid_token")||Y.includes("oauth")}async function kT6(X,Y={}){try{let G=await fetch(X,{method:"POST",headers:{...Y,"Content-Type":"application/json",Accept:"application/json, text/event-stream"},body:JSON.stringify({jsonrpc:"2.0",id:0,method:"initialize",params:{protocolVersion:"2025-06-18",capabilities:{},clientInfo:{name:"mcp-cms-proxy",version:"1.0.0"}}})});if(G.status===401){let Q=G.headers.get("WWW-Authenticate");if(Q){if(II5(Q))return Q}if(await jI5(X))return'Bearer realm="mcp"'}return null}catch{return null}}async function jI5(X){try{let Y=new URL(X),G=new URL("/.well-known/oauth-authorization-server",Y.origin),Q=await fetch(G.toString(),{method:"GET",headers:{Accept:"application/json"}});if(Q.ok){let J=await Q.json();if(J.authorization_endpoint||J.token_endpoint||J.issuer)return!0}return!1}catch{return!1}}async function fr(X){let G=new URL(X).pathname;if(G.endsWith("/"))G=G.slice(0,-1);let Q=new URL(X);Q.pathname=`${G}/.well-known/oauth-protected-resource`;let J=await fetch(Q.toString(),{method:"GET",headers:{Accept:"application/json"}});if(J.ok)return J;if(!qA0.includes(J.status))return J;let $=new URL(X);if($.pathname=`/.well-known/oauth-protected-resource${G}`,J=await fetch($.toString(),{method:"GET",headers:{Accept:"application/json"}}),!qA0.includes(J.status))return J;let Z=new URL(X);return Z.pathname="/.well-known/oauth-protected-resource",J=await fetch(Z.toString(),{method:"GET",headers:{Accept:"application/json"}}),J}async function VI5(X,Y){let G=await ST6(X,Y);if(!G)return null;let Q;try{Q=new URL(G).origin}catch{return null}try{let J=await fr(G);if(J.ok){let $=await J.json();if($.authorization_servers?.[0])return $.authorization_servers[0]}}catch{}return Q}async function CT6(X){let Y=X.get("meshContext");if(!Y)Y=await OU.create(X.req.raw),X.set("meshContext",Y);return Y}function vT6(X){return X?`/api/${X}`:""}async function _T6({error:X,reqUrl:Y,connectionId:G,connectionUrl:Q,headers:J,orgSlug:$}){let Z=X.message?.toLowerCase()??"";if(!(X.status===401||X.code===401||X.message?.includes("401")||Z.includes("unauthorized")||Z.includes("invalid_token")||Z.includes("api key required")||Z.includes("api-key required")))return null;if(Boolean(await kT6(Q,J))){let H=vT6($);return new Response(null,{status:401,headers:{"WWW-Authenticate":`Bearer realm="mcp",resource_metadata="${Y.origin}${H}/mcp/${G}/.well-known/oauth-protected-resource"`}})}return new Response(JSON.stringify({error:"unauthorized",message:"Authentication required but server does not support OAuth"}),{status:401,headers:{"Content-Type":"application/json"}})}async function VG1(X){let G=new URL(X).pathname;if(G.endsWith("/"))G=G.slice(0,-1);let Q=G!==""&&G!=="/",J=[];if(Q){let Z=new URL(X);Z.pathname=`/.well-known/oauth-authorization-server${G}`,J.push(Z);let W=new URL(X);W.pathname=`/.well-known/openid-configuration${G}`,J.push(W);let K=new URL(X);K.pathname=`${G}/.well-known/openid-configuration`,J.push(K)}else{let Z=new URL(X);Z.pathname="/.well-known/oauth-authorization-server",J.push(Z);let W=new URL(X);W.pathname="/.well-known/openid-configuration",J.push(W)}let $=null;for(let Z of J){if($=await fetch(Z.toString(),{method:"GET",headers:{Accept:"application/json"}}),$.ok)return $;if($.status!==404&&$.status!==401)return $}return $}var qA0,fT6=(X)=>{if(!(X.hostname==="localhost"||X.hostname.endsWith(".localhost")||X.hostname==="127.0.0.1"))X.protocol="https:";return X},jG1=async(X)=>{let Y=X.req.param("connectionId"),G=await CT6(X),Q=fT6(new URL(X.req.url)),J=X.req.param("org")??G.organization?.slug,$;if(J)if(G.organization?.id&&G.organization.slug===J)$=G.organization.id;else{let U=await G.db.selectFrom("organization").select("id").where("slug","=",J).executeTakeFirst();if(!U)return X.json({error:"Connection not found"},404);$=U.id}let Z=await ST6(Y,G,$);if(!Z)return X.json({error:"Connection not found"},404);let W=vT6(J),K=`${Q.origin}${W}/mcp/${Y}`,H=`${Q.origin}/oauth-proxy/${Y}`;try{let U=await fr(Z);if(!U.ok&&qA0.includes(U.status)){if(await kT6(Z))return new Response(JSON.stringify({resource:K,authorization_servers:[H],bearer_methods_supported:["header"],scopes_supported:["*"]}),{status:200,headers:{"Content-Type":"application/json"}});return new Response(U.body,{status:U.status,statusText:U.statusText,headers:{"Content-Type":"application/json"}})}if(!U.ok)return new Response(U.body,{status:U.status,statusText:U.statusText,headers:{"Content-Type":"application/json"}});let B=await U.json();if("issuer"in B&&!("resource"in B)&&(("authorization_endpoint"in B)||("token_endpoint"in B))){let z={resource:K,authorization_servers:[H],bearer_methods_supported:["header"],scopes_supported:"scopes_supported"in B&&Array.isArray(B.scopes_supported)&&B.scopes_supported.length>0?B.scopes_supported:["*"]};return new Response(JSON.stringify(z),{status:200,headers:{"Content-Type":"application/json"}})}let O={...B,resource:K,authorization_servers:[H]};return new Response(JSON.stringify(O),{status:U.status,statusText:U.statusText,headers:{"Content-Type":"application/json"}})}catch(U){let B=U;return console.error("[oauth-proxy] Failed to proxy OAuth protected resource metadata:",B),X.json({error:"Failed to proxy OAuth metadata",message:B.message},502)}},AA0=()=>{let X=new w6;return X.get("/.well-known/oauth-protected-resource/mcp/:connectionId",(Y)=>jG1(Y)),X.get("/mcp/:connectionId/.well-known/oauth-protected-resource",(Y)=>jG1(Y)),X},bT6=()=>{let X=new w6;return X.get("/mcp/:connectionId/.well-known/oauth-protected-resource",(Y)=>jG1(Y)),X},MI5=async(X)=>{let Y=X.req.param("connectionId"),G=await CT6(X),Q=await VI5(Y,G);if(!Q)return X.json({error:"Connection not found or no auth server"},404);try{let J=await VG1(Q);if(!J.ok)return new Response(J.body,{status:J.status,statusText:J.statusText,headers:{"Content-Type":"application/json"}});let $=await J.json(),W=`${fT6(new URL(X.req.url)).origin}/oauth-proxy/${Y}`,K={...$,authorization_endpoint:$.authorization_endpoint?`${W}/authorize`:void 0,token_endpoint:$.token_endpoint?`${W}/token`:void 0,registration_endpoint:$.registration_endpoint?`${W}/register`:void 0};return new Response(JSON.stringify(K),{status:200,headers:{"Content-Type":"application/json"}})}catch(J){let $=J;return console.error("[oauth-proxy] Failed to proxy auth server metadata:",$),X.json({error:"Failed to proxy auth server metadata",message:$.message},502)}},TA0=()=>{let X=new w6;return X.get("/.well-known/oauth-authorization-server/oauth-proxy/:connectionId",MI5),X},yT6;var MG1=D(()=>{jY();IG1();qA0=[404,401,406];yT6=new w6;yT6.route("/",AA0());yT6.route("/",TA0())});async function rj1(X){try{let Y;try{let Q=await fr(X);if(Q.ok)Y=(await Q.json()).authorization_servers?.[0]}catch{}if(!Y)Y=new URL(X).origin;let G=await VG1(Y);if(G.ok)return(await G.json()).token_endpoint??null;return null}catch{return null}}var IA0=D(()=>{MG1()});class G${db;vault;constructor(X,Y){this.db=X;this.vault=Y}async get(X){let Y=await this.db.selectFrom("downstream_tokens").selectAll().where("connectionId","=",X).executeTakeFirst();if(!Y)return null;return this.decryptToken(Y)}async upsert(X){let Y=new Date().toISOString(),G=await this.vault.encrypt(X.accessToken),Q=X.refreshToken?await this.vault.encrypt(X.refreshToken):null,J=X.clientSecret?await this.vault.encrypt(X.clientSecret):null;return await this.db.transaction().execute(async($)=>{let Z=await $.selectFrom("downstream_tokens").select(["id","createdAt"]).where("connectionId","=",X.connectionId).executeTakeFirst();if(Z)return await $.updateTable("downstream_tokens").set({accessToken:G,refreshToken:Q,scope:X.scope,expiresAt:X.expiresAt?.toISOString()??null,clientId:X.clientId,clientSecret:J,tokenEndpoint:X.tokenEndpoint,updatedAt:Y}).where("id","=",Z.id).execute(),{id:Z.id,connectionId:X.connectionId,accessToken:X.accessToken,refreshToken:X.refreshToken,scope:X.scope,expiresAt:X.expiresAt,createdAt:Z.createdAt,updatedAt:Y,clientId:X.clientId,clientSecret:X.clientSecret,tokenEndpoint:X.tokenEndpoint};let W=vX("dtok");return await $.insertInto("downstream_tokens").values({id:W,connectionId:X.connectionId,accessToken:G,refreshToken:Q,scope:X.scope,expiresAt:X.expiresAt?.toISOString()??null,clientId:X.clientId,clientSecret:J,tokenEndpoint:X.tokenEndpoint,createdAt:Y,updatedAt:Y}).execute(),{id:W,connectionId:X.connectionId,accessToken:X.accessToken,refreshToken:X.refreshToken,scope:X.scope,expiresAt:X.expiresAt,createdAt:Y,updatedAt:Y,clientId:X.clientId,clientSecret:X.clientSecret,tokenEndpoint:X.tokenEndpoint}})}async delete(X){await this.db.deleteFrom("downstream_tokens").where("connectionId","=",X).execute()}isExpired(X,Y=0){if(!X.expiresAt)return!1;let Q=(X.expiresAt instanceof Date?X.expiresAt:new Date(X.expiresAt)).getTime();if(Number.isNaN(Q))return!0;return Q-Y<Date.now()}async decryptToken(X){let Y=await this.vault.decrypt(X.accessToken),G=X.refreshToken?await this.vault.decrypt(X.refreshToken):null,Q=X.clientSecret?await this.vault.decrypt(X.clientSecret):null;return{id:X.id,connectionId:X.connectionId,accessToken:Y,refreshToken:G,scope:X.scope,expiresAt:X.expiresAt,createdAt:X.createdAt,updatedAt:X.updatedAt,clientId:X.clientId,clientSecret:Q,tokenEndpoint:X.tokenEndpoint}}}var GM=D(()=>{pK()});function RI5(X){if(!X)return;let Y={};for(let[G,Q]of Object.entries(X))if(Q&&typeof Q==="object"&&!Array.isArray(Q)&&"__binding"in Q){let{__binding:J,...$}=Q;Y[G]=$}else Y[G]=Q;return Y}async function VA0(X,Y,G){return Y.tracer.startActiveSpan("mesh.connection.build_headers",{attributes:{"connection.id":X.id}},async(Q)=>{try{let J=await SI5(X,Y,G);return Q.setStatus({code:jA0.SpanStatusCode.OK}),J}catch(J){throw Q.setStatus({code:jA0.SpanStatusCode.ERROR,message:J.message}),Q.recordException(J),J}finally{Q.end()}})}async function SI5(X,Y,G){let Q=X.id,J=WL0(X.configuration_state,X.configuration_scopes),$=Y.auth.user,Z=$?.id??Y.auth.apiKey?.userId??(G?X.created_by:void 0),[W,K]=Z?await bQ6({sub:Z,user:{id:Z,email:$?.email,name:$?.name,image:$?.image,role:$?.role},metadata:{state:RI5(X.configuration_state),meshUrl:Y.baseUrl,connectionId:Q,organizationId:Y.organization?.id,organizationName:Y.organization?.name,organizationSlug:Y.organization?.slug},permissions:J}).then((z)=>[z,null]).catch((z)=>[null,z]):[null,Error("User ID required to issue configuration token")];if(K)console.error("Failed to issue configuration token:",W);let H=Y.auth.user?.connectionId,U={...H?{"x-caller-id":H}:{},...Y.metadata.wellKnownForwardableHeaders??{},"x-request-id":Y.metadata.requestId},B=null,N=new G$(Y.db,Y.vault),O=await N.get(Q);if(O){let z=!!O.refreshToken&&!!O.tokenEndpoint;if(N.isExpired(O,z?300000:0))if(z){let E=O.tokenEndpoint;if(X.connection_url&&O.tokenEndpoint?.includes("/oauth-proxy/")){let A=await rj1(X.connection_url);if(A)E=A}let P=await YY1({...O,tokenEndpoint:E});if(P.success&&P.accessToken)await N.upsert({connectionId:Q,accessToken:P.accessToken,refreshToken:P.refreshToken??O.refreshToken,scope:P.scope??O.scope,expiresAt:P.expiresIn?new Date(Date.now()+P.expiresIn*1000):null,clientId:O.clientId,clientSecret:O.clientSecret,tokenEndpoint:E}),B=P.accessToken;else{if(P.permanent===!0)await N.delete(Q);console.error("[Proxy] token refresh failed",{connectionId:Q,status:P.status,errorCode:P.errorCode,permanent:P.permanent===!0,deleted:P.permanent===!0})}}else await N.delete(Q),console.warn(`[Proxy] Token expired for ${Q} with no refresh capability (refreshToken: ${!!O.refreshToken}, tokenEndpoint: ${!!O.tokenEndpoint})`);else B=O.accessToken}if(!B&&X.connection_token)B=X.connection_token;if(B)U.Authorization=`Bearer ${B}`;if(W)U["x-mesh-token"]=W;return U}var jA0;var hT6=D(()=>{KL0();fV();uT1();IA0();GM();jA0=X1(b0(),1)});function xT6(X){let Y=new f51({command:X.command,args:X.args,env:X.env,cwd:X.cwd,stderr:"pipe"}),G=X.name||X.id,Q="\x1B[2m",J="\x1B[0m";return Y.stderr?.on("data",($)=>{let Z=$.toString().trimEnd();if(Z)console.error(`${Z} \x1B[2m[${G}]\x1B[0m`)}),Y}var gT6=D(()=>{$O0()});var kI5="mcp.mesh",br;var uT6=D(()=>{ZH();aI1();Qi();br=class br extends ec{options;constructor(X,Y){super(X);this.options=Y}toolsListPromise=null;fetchToolsFromServer(){if(!this.toolsListPromise)this.toolsListPromise=new Promise((X)=>{let Y=`auth-tools-${Date.now()}`,G=this.innerTransport.onmessage;this.innerTransport.onmessage=(Q)=>{if("id"in Q&&Q.id===Y)if(this.innerTransport.onmessage=G,this.toolsListPromise=null,"result"in Q){let J=Q.result?.tools??null;X(J)}else X(null);else G?.(Q)},this.innerTransport.send({jsonrpc:"2.0",id:Y,method:"tools/list",params:{}}).catch(()=>{this.innerTransport.onmessage=G,this.toolsListPromise=null,X(null)})});return this.toolsListPromise}async ensureToolsMap(){let X=this.options.cache??nG(),Y=await sP("tools",this.options.connection.id,async()=>{let G=await this.fetchToolsFromServer();if(G===null)throw Error("Failed to fetch tools list");return G},X,(G)=>this.options.ctx.pendingRevalidations.push(G));if(!Y)return new Map;return new Map(Y.map((G)=>[G.name,G]))}async handleOutgoingMessage(X){if(!this.isRequest(X))return this.innerTransport.send(X);let Y=X;if(Y.method==="tools/call")await this.authorizeToolCall(Y),this.stripMetaFromArguments(Y);return this.innerTransport.send(X)}async authorizeToolCall(X){if(this.options.superUser)return;let G=X.params.name,{ctx:Q,connection:J}=this.options;if(await this.isPublicTool(G))return;if(!Q.auth.user?.id&&!Q.auth.apiKey?.id)throw Error("Authentication required. Please provide a valid OAuth token or API key.");let $=async()=>{return(await this.ensureToolsMap()).get(G)?._meta};await new g2(Q.authInstance,Q.auth.user?.id??Q.auth.apiKey?.userId,G,Q.boundAuth,Q.organization?.role??Q.auth.user?.role,J.id,$,Q.organization?.id).check(G)}async isPublicTool(X){if(X.startsWith("MESH_PUBLIC_"))return!0;let G=(await this.ensureToolsMap()).get(X);if(!G?._meta)return!1;return G._meta[kI5]?.public_tool===!0}stripMetaFromArguments(X){let Y=X.params;if(Y.arguments&&"_meta"in Y.arguments){let{_meta:G,...Q}=Y.arguments;Y.arguments=Q}}}});class MA0{patterns=[{type:"email",regex:/[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}/g},{type:"api_key",regex:/(?:api[_-]?key|token|secret|password|bearer)\s*[:=]\s*['"]?[\w-]{16,}['"]?/gi},{type:"jwt",regex:/eyJ[A-Za-z0-9-_]+\.eyJ[A-Za-z0-9-_]+\.[A-Za-z0-9-_.+/=]*/g},{type:"credit_card",regex:/\b\d{4}[- ]?\d{4}[- ]?\d{4}[- ]?\d{4}\b/g},{type:"ssn",regex:/\b\d{3}-\d{2}-\d{4}\b/g}];redact(X){if(X===null||X===void 0)return X;if(typeof X==="string")return this.redactString(X);if(Array.isArray(X))return X.map((Y)=>this.redact(Y));if(typeof X==="object"){let Y={};for(let[G,Q]of Object.entries(X)){let J=this.redactString(G);Y[J]=this.redact(Q)}return Y}return X}redactString(X){let Y=X;for(let G of this.patterns)Y=Y.replace(G.regex,`[REDACTED:${G.type}]`);return Y}}function SG1(X,Y){try{if(!X.organizationId)return;let G=RA0.redact(X.toolArguments??{}),Q=RA0.redact(X.result??{}),J=X.errorMessage?RA0.redactString(X.errorMessage):"";RG1.logs.getLogger("mesh.monitoring","1.0.0").emit({severityNumber:X.isError?RG1.SeverityNumber.ERROR:RG1.SeverityNumber.INFO,severityText:X.isError?"ERROR":"INFO",body:X.toolName,attributes:{[P9.TYPE]:X.type??to,[P9.ORGANIZATION_ID]:X.organizationId,[P9.CONNECTION_ID]:X.connectionId,[P9.CONNECTION_TITLE]:"",[P9.TOOL_NAME]:X.toolName,[P9.INPUT]:so(JSON.stringify(G)),[P9.OUTPUT]:so(JSON.stringify(Q)),[P9.IS_ERROR]:X.isError,[P9.ERROR_MESSAGE]:J,[P9.DURATION_MS]:X.duration,[P9.USER_ID]:X.userId||"",[P9.REQUEST_ID]:X.requestId,[P9.USER_AGENT]:X.userAgent||"",[P9.VIRTUAL_MCP_ID]:X.virtualMcpId||"",[P9.PROPERTIES]:X.properties?JSON.stringify(X.properties):""},context:Y})}catch{}}var RG1,RA0;var aj1=D(()=>{a3();Yp1();RG1=X1(sa(),1),RA0=new MA0});function SA0(X){let{ctx:Y,organizationId:G,connectionId:Q,toolName:J,durationMs:$,isError:Z}=X;if(!G||!Q||!J)return;let W={"tool.name":J,"organization.id":G,"connection.id":Q,status:Z?"error":"success","error.type":Z?X.errorType||"Error":""};Y.meter.createHistogram("tool.execution.duration",{description:"Duration of tool executions in milliseconds",unit:"ms"}).record($,W),Y.meter.createCounter("tool.execution.count",{description:"Number of tool executions"}).add(1,W)}function lT6(X){if(!X.isError)return;let Y=X.content;if(!Array.isArray(Y))return;for(let G of Y)if(G&&typeof G==="object"&&"type"in G&&G.type==="text"&&"text"in G&&typeof G.text==="string")return G.text;return}function mT6(X){if(!X)return;let Y=X._meta;if(!Y||typeof Y!=="object"||Array.isArray(Y))return;let G=Y.properties;if(!G||typeof G!=="object"||Array.isArray(G))return;let Q={};for(let[J,$]of Object.entries(G))if(typeof $==="string")Q[J]=$;return Object.keys(Q).length>0?Q:void 0}function dT6(X,Y){if(!X&&!Y)return;if(!X)return Y;if(!Y)return X;return{...Y,...X}}var cT6=D(()=>{ZX();aj1();a3()});var kG1,yr;var iT6=D(()=>{Qi();aj1();cT6();kG1=X1(b0(),1);yr=class yr extends ec{options;inflightRequests=new Map;requestContext;constructor(X,Y){super(X);this.options=Y;this.requestContext=kG1.context.active()}async handleOutgoingMessage(X){if(this.isRequest(X)){let Y=X;this.onRequestStart(Y)}return this.innerTransport.send(X)}handleIncomingMessage(X){if(this.isResponse(X)){let Y=X;this.onResponseEnd(Y)}this.onmessage?.(X)}onRequestStart(X){let{ctx:Y,connectionId:G}=this.options,Q,J;if(X.method==="tools/call"&&X.params){let Z=X.params;Q=Z.name,J=Z.arguments}let $;if(X.method==="tools/call"&&Q)$=Y.tracer.startSpan("mcp.proxy.callTool",{attributes:{"connection.id":G,"tool.name":Q,"request.id":Y.metadata.requestId,"jsonrpc.id":X.id,"jsonrpc.method":X.method}},this.requestContext);if(X.id!==null&&X.id!==void 0)this.inflightRequests.set(X.id,{startTime:Date.now(),method:X.method,toolName:Q,toolArguments:J,span:$})}onResponseEnd(X){if(X.id===null||X.id===void 0)return;let Y=this.inflightRequests.get(X.id);if(!Y)return;let{ctx:G,connectionId:Q}=this.options,{startTime:J,method:$,toolName:Z,toolArguments:W,span:K}=Y,H=Date.now()-J;if(this.inflightRequests.delete(X.id),$!=="tools/call"||!Z)return;let U=G.organization?.id??"",B="error"in X,N=B?X.error:X.result,O=B?{content:[{type:"text",text:X.error?.message||"Unknown error"}],isError:!0}:N;if(G.meter.createHistogram("connection.proxy.duration").record(H,{"connection.id":Q,"organization.id":U,"tool.name":Z,status:B?"error":"success"}),B)G.meter.createCounter("connection.proxy.errors").add(1,{"connection.id":Q,"organization.id":U,"tool.name":Z,error:X.error?.message});else G.meter.createCounter("connection.proxy.requests").add(1,{"connection.id":Q,"organization.id":U,"tool.name":Z,status:"success"});if(U)SA0({ctx:G,organizationId:U,connectionId:Q,toolName:Z,durationMs:H,isError:B,errorType:B?"RemoteError":""});if(K){if(B&&X.error)K.recordException(Error(X.error.message));let z=mT6(W),w=dT6(G.metadata.properties,z),E=kG1.trace.setSpan(kG1.context.active(),K);SG1({organizationId:G.organization?.id??"",connectionId:Q,toolName:Z,toolArguments:W,result:O,duration:H,isError:Boolean(B),errorMessage:lT6(O)||null,userId:G.auth.user?.id||G.auth.apiKey?.userId||null,requestId:G.metadata.requestId,userAgent:G.metadata.userAgent||null,virtualMcpId:this.options.virtualMcpId||null,properties:w||null},E),K.end()}}async close(){for(let X of this.inflightRequests.values())if(X.span)X.span.setAttributes({"transport.closed":!0}),X.span.end();return this.inflightRequests.clear(),super.close()}}});var pT6=D(()=>{Qi();uT6();iT6()});async function nT6(X,Y,G=!1){let Q=X.id,J=Y.connectionId&&Y.connectionId!==Q?Y.connectionId:void 0;switch(X.connection_type){case"STDIO":{if(!h4().localMode)throw Error("STDIO connections are only available in local mode (--local-mode).");let $=X.connection_headers;if(!qB($))throw Error("STDIO connection missing parameters");let Z=xT6({id:Q,name:X.title,command:$.command,args:$.args,env:$.envVars,cwd:$.cwd});return Z=Xi(Z,(W)=>new br(W,{ctx:Y,connection:X,superUser:G}),(W)=>new yr(W,{ctx:Y,connectionId:Q,virtualMcpId:J})),CI5(Z,Q)}case"HTTP":case"Websocket":{if(!X.connection_url)throw Error(`${X.connection_type} connection missing URL`);let $=await VA0(X,Y,G),Z=X.connection_headers;if(Z&&"headers"in Z)Object.assign($,Z.headers);let W=new EB(new URL(X.connection_url),{requestInit:{headers:$}});return W=Xi(W,(K)=>new br(K,{ctx:Y,connection:X,superUser:G}),(K)=>new yr(K,{ctx:Y,connectionId:Q,virtualMcpId:J})),Y.getOrCreateClient(W,Q)}case"SSE":{if(!X.connection_url)throw Error("SSE connection missing URL");let $=await VA0(X,Y,G),Z=X.connection_headers;if(Z&&"headers"in Z)Object.assign($,Z.headers);let W=new TD(new URL(X.connection_url),{requestInit:{headers:$}});return W=Xi(W,(K)=>new br(K,{ctx:Y,connection:X,superUser:G}),(K)=>new yr(K,{ctx:Y,connectionId:Q,virtualMcpId:J})),Y.getOrCreateClient(W,Q)}default:throw Error(`Unknown connection type: ${X.connection_type}`)}}var CI5;var tT6=D(()=>{e5();qD();_51();ac();hT6();Gj1();gT6();pT6();CI5=Br()});function oj1(X){return X.toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-|-$/g,"")}function kA0(X){if(X&&typeof X==="object"&&"gatewayClientId"in X&&typeof X.gatewayClientId==="string")return X.gatewayClientId;return}function CA0(X,Y){if(!Y)return X;let G=`${oj1(Y)}_`;return X.startsWith(G)?X.slice(G.length):X}function vI5(X){return X.split(/[-_]/).map((Y)=>Y?Y.charAt(0).toUpperCase()+Y.slice(1):Y).join(" ")}var sj1;var rT6=D(()=>{wB();sj1=class sj1 extends V7{clients;slugToKey=new Map;resolvedClients=new Map;toolsCache=null;resourcesCache=null;resourceTemplatesCache=null;promptsCache=null;resourceRouteMap=new Map;constructor(X,Y){super(Y?.clientInfo??{name:"gateway-client",version:"1.0.0"},{capabilities:Y?.capabilities});this.clients=X;for(let G of Object.keys(X)){let Q=oj1(G);if(this.slugToKey.has(Q))throw Error(`GatewayClient: duplicate slug "${Q}" from keys "${this.slugToKey.get(Q)}" and "${G}"`);this.slugToKey.set(Q,G)}}namespace(X,Y){return`${oj1(X)}_${Y}`}async resolveToolTarget(X){let Y=X.indexOf("_");if(Y!==-1){let Q=X.slice(0,Y),J=this.slugToKey.get(Q);if(J)return[J,X.slice(Y+1)]}let{tools:G}=await this.listTools();for(let Q of G){let J=kA0(Q._meta);if(!J)continue;if(CA0(Q.name,J)===X)return[J,X]}if(Y===-1)throw Error(`GatewayClient: could not resolve tool "${X}" \u2014 no namespace prefix and not found in any client`);throw Error(`GatewayClient: unknown namespace "${X.slice(0,Y)}" in "${X}" and not found by original name in any client`)}async resolvePromptTarget(X){let Y=X.indexOf("_");if(Y!==-1){let Q=X.slice(0,Y),J=this.slugToKey.get(Q);if(J)return[J,X.slice(Y+1)]}let{prompts:G}=await this.listPrompts();for(let Q of G){let J=kA0(Q._meta);if(!J)continue;if(CA0(Q.name,J)===X)return[J,X]}if(Y===-1)throw Error(`GatewayClient: could not resolve prompt "${X}" \u2014 no namespace prefix and not found in any client`);throw Error(`GatewayClient: unknown namespace "${X.slice(0,Y)}" in "${X}" and not found by original name in any client`)}resolveClient(X){let Y=this.resolvedClients.get(X);if(Y)return Y;let G=this.clients[X];if(!G)return Promise.reject(Error(`GatewayClient: unknown client key "${X}"`));let Q=G.client,$=(typeof Q==="function"?Promise.resolve(Q()):Promise.resolve(Q)).catch((Z)=>{throw this.resolvedClients.delete(X),Z});return this.resolvedClients.set(X,$),$}getResolvedClient(X){return this.resolveClient(X)}async fetchAllTools(X){let Y=[],G;do{let Q=await X.listTools(G?{cursor:G}:void 0);Y.push(...Q.tools),G=Q.nextCursor}while(G);return Y}async fetchAllResources(X){let Y=[],G;do{let Q=await X.listResources(G?{cursor:G}:void 0);Y.push(...Q.resources),G=Q.nextCursor}while(G);return Y}async fetchAllResourceTemplates(X){let Y=[],G;do{let Q=await X.listResourceTemplates(G?{cursor:G}:void 0);Y.push(...Q.resourceTemplates),G=Q.nextCursor}while(G);return Y}async fetchAllPrompts(X){let Y=[],G;do{let Q=await X.listPrompts(G?{cursor:G}:void 0);Y.push(...Q.prompts),G=Q.nextCursor}while(G);return Y}listTools(X,Y){if(!this.toolsCache)this.toolsCache=this.aggregateTools();return this.toolsCache}async aggregateTools(){let X=[];for(let[Y,G]of Object.entries(this.clients)){let Q=await this.resolveClient(Y),J=await this.fetchAllTools(Q),$=G.tools,Z=$?new Set($):null;for(let W of J){if(Z&&!Z.has(W.name))continue;X.push({...W,name:this.namespace(Y,W.name),_meta:{...W._meta??{},gatewayClientId:Y}})}}return{tools:X}}listResources(X,Y){if(!this.resourcesCache)this.resourcesCache=this.aggregateResources();return this.resourcesCache}async aggregateResources(){let X=new Set,Y=[],G=new Map;for(let[Q,J]of Object.entries(this.clients)){let $=await this.resolveClient(Q),Z=await this.fetchAllResources($),W=J.resources,K=W?new Set(W):null;for(let H of Z){if(K&&!K.has(H.uri)&&!(H.name&&K.has(H.name)))continue;if(X.has(H.uri)){console.warn(`GatewayClient: duplicate resource "${H.uri}" from client "${Q}" \u2014 skipping`);continue}X.add(H.uri),G.set(H.uri,Q),Y.push({...H,_meta:{...H._meta??{},gatewayClientId:Q}})}}return this.resourceRouteMap=G,{resources:Y}}listResourceTemplates(X,Y){if(!this.resourceTemplatesCache)this.resourceTemplatesCache=this.aggregateResourceTemplates();return this.resourceTemplatesCache}async aggregateResourceTemplates(){let X=new Set,Y=[];for(let[G,Q]of Object.entries(this.clients)){let J=await this.resolveClient(G),$=await this.fetchAllResourceTemplates(J);for(let Z of $){if(X.has(Z.uriTemplate)){console.warn(`GatewayClient: duplicate resource template "${Z.uriTemplate}" from client "${G}" \u2014 skipping`);continue}X.add(Z.uriTemplate),Y.push({...Z,_meta:{...Z._meta??{},gatewayClientId:G}})}}return{resourceTemplates:Y}}listPrompts(X,Y){if(!this.promptsCache)this.promptsCache=this.aggregatePrompts();return this.promptsCache}async aggregatePrompts(){let X=[];for(let[Y,G]of Object.entries(this.clients)){let Q=await this.resolveClient(Y),J=await this.fetchAllPrompts(Q),$=G.prompts,Z=$?new Set($):null;for(let W of J){if(Z&&!Z.has(W.name))continue;X.push({...W,name:this.namespace(Y,W.name),title:W.title??vI5(W.name),_meta:{...W._meta??{},gatewayClientId:Y}})}}return{prompts:X}}async callTool(X,Y,G){let[Q,J]=await this.resolveToolTarget(X.name);return(await this.resolveClient(Q)).callTool({...X,name:J},Y,G)}async readResource(X,Y){let G=await this.resolveResourceRoute(X.uri);return(await this.resolveClient(G)).readResource(X)}async getPrompt(X,Y){let[G,Q]=await this.resolvePromptTarget(X.name);return(await this.resolveClient(G)).getPrompt({...X,name:Q})}async resolveResourceRoute(X){let Y=this.resourceRouteMap.get(X);if(Y)return Y;if(this.resourcesCache=null,await this.listResources(),Y=this.resourceRouteMap.get(X),Y)return Y;throw Error(`GatewayClient: resource "${X}" not found in any upstream client`)}getServerCapabilities(){return{tools:{},resources:{},prompts:{}}}getInstructions(){return}refresh(){this.toolsCache=null,this.resourcesCache=null,this.resourceTemplatesCache=null,this.promptsCache=null}async close(){let X=[...this.resolvedClients.values()].map((Y)=>Y.then((G)=>G.close()).catch(()=>{}));await Promise.allSettled(X),await super.close()}}});var aT6=D(()=>{rT6()});var vA0;var oT6=D(()=>{aT6();oI1();vA0=class vA0 extends sj1{options;ctx;constructor(X,Y){let G=new Map(X.virtualMcp.connections.map((J)=>[J.connection_id,J])),Q={};for(let J of X.connections){let $=G.get(J.id);Q[J.id]={client:()=>Fr(J,Y,X.superUser??!1,X.mcpListCache),...$?.selected_tools!=null?{tools:$.selected_tools}:{},...$?.selected_resources!=null?{resources:$.selected_resources}:{},...$?.selected_prompts!=null?{prompts:$.selected_prompts}:{}}}super(Q,{clientInfo:{name:"virtual-mcp-passthrough",version:"1.0.0"},capabilities:{tasks:{list:{},cancel:{},requests:{tool:{call:{}}}}}});this.options=X;this.ctx=Y}async[Symbol.asyncDispose](){await this.close()}getInstructions(){return this.options.virtualMcp.metadata?.instructions??void 0}getConnectionTitleMap(){return new Map(this.options.connections.map((X)=>[X.id,X.title]))}}});function _I5(X,Y){if(X.connection_type!=="VIRTUAL")return!1;if(!Y||PB(Y))return!1;return X.id===Y}async function sT6(X,Y,G=!1){let Q=X.id,J=await Y.storage.virtualMcps.findById(Q);if(!J)throw Error(`Virtual MCP not found: ${Q}`);return QM(J,Y,"passthrough",G)}async function QM(X,Y,G,Q=!1,J){let $=X.connections.map((H)=>H.connection_id),K={connections:(await Y.tracer.startActiveSpan("mesh.virtual_mcp.load_connections",{attributes:{"virtual_mcp.id":X.id??"decopilot","virtual_mcp.connection_count":$.length}},async(H)=>{try{let U=await Promise.all($.map((B)=>Y.storage.connections.findById(B)));return H.setStatus({code:_A0.SpanStatusCode.OK}),U}catch(U){throw H.setStatus({code:_A0.SpanStatusCode.ERROR,message:U.message}),H.recordException(U),U}finally{H.end()}})).filter((H)=>H!==null&&H.status==="active"&&!_I5(H,X.id)),virtualMcp:X,superUser:Q,mcpListCache:nG()??void 0,listTimeoutMs:J?.listTimeoutMs};return new vA0(K,Y)}var _A0;var CG1=D(()=>{ZX();ZH();oT6();_A0=X1(b0(),1)});async function FW(X,Y,G=!1){if(X.connection_type==="VIRTUAL")return sT6(X,Y,G);return nT6(X,Y,G)}var HP0=D(()=>{tT6();CG1()});function ej1(X){return(Y)=>{if(Y instanceof N4&&Y.code===A4.MethodNotFound)return X;throw Y}}var eT6=D(()=>{uY()});function fA0(X,Y,G){let Q=Fr(X,Y,G,nG()??void 0),J=Tz(Q,{name:"mcp-mesh-enhanced",version:"1.0.0"},{capabilities:fI5,toolCallTimeoutMs:Iq});return J.server.setRequestHandler(ZE,async()=>{return await Q.listResources().catch(ej1({resources:[]}))}),J.server.setRequestHandler($E,async()=>{return await Q.listResourceTemplates().catch(ej1({resourceTemplates:[]}))}),J.server.setRequestHandler(WE,async()=>{return await Q.listPrompts().catch(ej1({prompts:[]}))}),J}var fI5;var XI6=D(()=>{ZX();uY();oI1();ZH();eT6();fI5={tools:{},resources:{},prompts:{}}});var hr=D(()=>{HP0();XI6()});var bI5,yI5,hI5,xI5,bA0;var YI6=D(()=>{eX1();sB6();GW();QN6();ZN6();Q41();hV();WN6();ZX();F0();y0();LD();ZH();hr();Zi();qD();hN0();bI5=[{name:/^(COLLECTION_REGISTRY_APP_LIST|REGISTRY_ITEM_LIST)$/,inputSchema:F.object({})}],yI5={LLM:hT1,LLMS:hT1,ASSISTANTS:oB6,MCP:JN6,OBJECT_STORAGE:nI,WORKFLOW:DO0,WORKFLOW_EXECUTION:UJ6,AI_GATEWAY_BILLING:$N6,EVENT_BUS:CT1,TRIGGER:vT1,REGISTRY:bI5,BRAND:yT1},hI5=cF.extend({binding:F.union([F.array(F.object({}).passthrough()),F.object({}).passthrough(),F.string()]).optional(),include_virtual:F.boolean().optional().describe("Whether to include VIRTUAL connections in the results. Defaults to false."),slug:F.string().optional().describe("Filter by connection slug. Matches against app_name, or a slug derived from connection_url or title.")}),xI5=jD(PZ),bA0=l1({name:"COLLECTION_CONNECTIONS_LIST",description:"List all connections in the organization with filtering, sorting, and pagination",annotations:{title:"List Connections",readOnlyHint:!0,destructiveHint:!1,idempotentHint:!0,openWorldHint:!1},inputSchema:hI5,outputSchema:xI5,handler:async(X,Y)=>{await Y.access.check();let G=s1(Y),Q=X.binding?typeof X.binding==="string"?(()=>{let B=yI5[X.binding.toUpperCase()];if(!B)throw Error(`Unknown binding: ${X.binding}`);return B})():X.binding:void 0,J=Q?jq1(Q):void 0,$=!!J,Z=X.limit??100,W=X.offset??0,{items:K,totalCount:H}=await Y.storage.connections.list(G.id,{includeVirtual:X.include_virtual??!1,slug:X.slug,where:X.where,orderBy:X.orderBy,limit:$?void 0:Z,offset:$?void 0:W});if(J){let B=nG(),N=JX.SELF(G.id);await Promise.all(K.map(async(O)=>{if(O.tools!==null)return;let z=O.id===N?async()=>{let{listManagementTools:E}=await Promise.resolve().then(() => (xr(),XV1));return E(Y)}:async()=>{let E=await FW(O,Y,!0);try{return(await E.listTools()).tools}finally{await E.close().catch(()=>{})}},w=await sP("tools",O.id,z,B);if(w!==null)O.tools=w}))}if(BF()){let B=N3(),N=JX.DEV_ASSETS(G.id);if(!K.some((O)=>O.id===N)){let O=Ji(G.id,B);if(!X.slug||V51(O)===X.slug)K.unshift(O)}}if($){let B=(await Promise.all(K.map(async(w)=>{if(!w.tools||w.tools.length===0)return null;return J.isImplementedBy(w.tools.map((P)=>({name:P.name,inputSchema:P.inputSchema,outputSchema:P.outputSchema})))?w:null}))).filter((w)=>w!==null),N=B.length,O=B.slice(W,W+Z),z=W+Z<N;return{items:O,totalCount:N,hasMore:z}}let U=W+Z<H;return{items:K,totalCount:H,hasMore:U}}})});var gI5,yA0;var GI6=D(()=>{GW();ZX();y0();LD();ZH();hr();Zi();qD();gI5=g51(PZ),yA0=l1({name:"COLLECTION_CONNECTIONS_GET",description:"Get a connection's configuration, tools list, and status by ID.",annotations:{title:"Get Connection",readOnlyHint:!0,destructiveHint:!1,idempotentHint:!0,openWorldHint:!1},_meta:{ui:{visibility:["app"]}},inputSchema:x51,outputSchema:gI5,handler:async(X,Y)=>{let G=s1(Y);if(await Y.access.check(),BF()&&ZD1(X.id,G.id))return{item:Ji(G.id,N3())};let Q=await Y.storage.connections.findById(X.id);if(!Q||Q.organization_id!==G.id)return{item:null};if(Q.tools===null){let J=JX.SELF(G.id),$=Q.id===J?async()=>{let{listManagementTools:W}=await Promise.resolve().then(() => (xr(),XV1));return W(Y)}:async()=>{let W=await FW(Q,Y,!0);try{return(await W.listTools()).tools}finally{await W.close().catch(()=>{})}},Z=await sP("tools",Q.id,$,nG(),(W)=>Y.pendingRevalidations.push(W));if(Z!==null)Q.tools=Z}return{item:Q}}})});function QI6(X,Y,G){if(Y.some((Q)=>Q!=="*"&&Q.startsWith("SELF::"))&&X.SELF===void 0)X.SELF={value:`${G}_self`}}async function mI5(X,Y,G,Q){for(let $ of Y){if($==="*")continue;let[Z]=KN6($),W=xT1(Z,X);if(W===void 0||W===null)throw Error(`Scope references key "${Z}" but it's not present in state`)}let J=HN6(X,Y);for(let $ of J){if($.endsWith("_self"))continue;let Z=await Q.storage.connections.findById($);if(!Z||Z.organization_id!==G)throw Error(`Referenced connection not found: ${$}`);try{await Q.access.check($)}catch(W){throw Error(`Access denied to referenced connection: ${$}. ${W.message}`)}}}var uI5,lI5,hA0;var JI6=D(()=>{KL0();hr();GM();F0();y0();ZH();b51();qD();uI5=F.object({id:F.string().describe("ID of the connection to update"),data:$61.describe("Partial connection data to update")}),lI5=F.object({item:PZ.describe("The updated connection entity")});hA0=l1({name:"COLLECTION_CONNECTIONS_UPDATE",description:"Update a connection's configuration. Re-fetches tools from the server on URL change.",annotations:{title:"Update Connection",readOnlyHint:!1,destructiveHint:!0,idempotentHint:!0,openWorldHint:!1},inputSchema:uI5,outputSchema:lI5,handler:async(X,Y)=>{B0(Y);let G=s1(Y);await Y.access.check();let Q=$6(Y);if(!Q)throw Error("User ID required to update connection");let{id:J,data:$}=X,Z=await Y.storage.connections.findById(J);if(!Z||Z.organization_id!==G.id)throw Error("Connection not found in organization");let W=$.connection_type??Z.connection_type,K=$.connection_url??Z.connection_url;if(W==="VIRTUAL"){let E=Kj(K);if(!E)throw Error("VIRTUAL connection requires connection_url in format: virtual://$virtual_mcp_id");let P=await Y.storage.virtualMcps.findById(E);if(!P)throw Error(`Virtual MCP not found: ${E}`);if(P.organization_id!==G.id)throw Error("Virtual MCP does not belong to the current organization");K=Hj(E)}let H=$.configuration_state??Z.configuration_state??{},U=$.configuration_scopes??Z.configuration_scopes??[];if($.configuration_state!==void 0||$.configuration_scopes!==void 0){if($.configuration_state!==void 0)H=$.configuration_state??{};else if(H===null||H===void 0)H={};if($.configuration_scopes!==void 0)U=$.configuration_scopes??[];if(U.length>0){let E=H;QI6(E,U,G.id),await mI5(E,U,G.id,Y)}}let B=$.connection_token??Z.connection_token;if(!B)try{let P=await new G$(Y.db,Y.vault).get(J);if(P?.accessToken)B=P.accessToken}catch{}let N=await CP({id:Z.id,title:$.title??Z.title,connection_type:W,connection_url:K,connection_token:B,connection_headers:$.connection_headers??Z.connection_headers}).catch(()=>null),O=N?.tools?.length?N.tools:null;if($.configuration_scopes===void 0&&N?.scopes?.length)U=N.scopes;QI6(H,U,G.id);let z={...$,connection_url:K,tools:null,configuration_state:H,configuration_scopes:U,updated_by:Q},w=await Y.storage.connections.update(J,z);if(O)nG()?.set("tools",J,O).catch(()=>{});if(($.configuration_state!==void 0||$.configuration_scopes!==void 0)&&H&&U)try{await(await FW(w,Y,!1)).callTool({name:"ON_MCP_CONFIGURATION",arguments:{state:H,scopes:U}})}catch(E){console.error("Failed to invoke ON_MCP_CONFIGURATION callback",E)}return{item:w}}})});var dI5,xA0;var ZI6=D(()=>{GW();F0();OY();y0();ZH();qD();dI5=u51.extend({force:F.boolean().optional().describe("If true, removes this connection from all agents that reference it before deleting")}),xA0=l1({name:"COLLECTION_CONNECTIONS_DELETE",description:"Permanently delete a connection. Set force=true to auto-remove from referencing Virtual MCPs.",annotations:{title:"Delete Connection",readOnlyHint:!1,destructiveHint:!0,idempotentHint:!0,openWorldHint:!1},inputSchema:dI5,outputSchema:l51(PZ),handler:async(X,Y)=>{B0(Y);let G=s1(Y);await Y.access.check();let Q=await Y.storage.connections.findById(X.id);if(!Q)throw Error(`Connection not found: ${X.id}`);if(Q.organization_id!==G.id)throw Error("Connection not found in organization");if(Q.metadata?.isFixed===!0)throw Error("This connection is a fixed system connection and cannot be deleted");let $=await Y.storage.virtualMcps.listByConnectionId(G.id,X.id);if($.length>0)if(X.force)await Y.storage.virtualMcps.removeConnectionReferences(X.id);else throw Error(JSON.stringify({code:"CONNECTION_IN_USE",agentNames:$.map((K)=>K.title)}));await Y.storage.connections.delete(X.id);let Z=await Y.storage.organizationSettings.get(G.id);if(Z?.registry_config){let{registries:K,blockedMcps:H}=Z.registry_config;if(X.id in K){let{[X.id]:U,...B}=K;await Y.storage.organizationSettings.upsert(G.id,{registry_config:{registries:B,blockedMcps:H}})}}nG()?.invalidate(X.id).catch(()=>{});let W=$6(Y);if(W)A6.capture({distinctId:W,event:"connection_deleted",groups:{organization:G.id},properties:{connection_id:Q.id,connection_type:Q.connection_type,app_name:Q.app_name??null,organization_id:G.id,forced:X.force??!1}});return{item:Q}}})});var gA0;var $I6=D(()=>{F0();y0();gA0=l1({name:"CONNECTION_TEST",description:"Test connection health and latency",annotations:{title:"Test Connection",readOnlyHint:!0,destructiveHint:!1,idempotentHint:!0,openWorldHint:!0},inputSchema:F.object({id:F.string()}),outputSchema:F.object({id:F.string(),healthy:F.boolean(),latencyMs:F.number()}),handler:async(X,Y)=>{let G=s1(Y);await Y.access.check();let Q=await Y.storage.connections.findById(X.id);if(!Q||Q.organization_id!==G.id)throw Error("Connection not found");let J=await Y.storage.connections.testConnection(X.id);return{id:X.id,...J}}})});var WI6=D(()=>{vB6();YI6();GI6();JI6();ZI6();$I6()});function KI6(X){if(X===null||X===void 0)return"NULL";if(typeof X==="number")return String(X);if(typeof X==="boolean")return X?"TRUE":"FALSE";if(typeof X==="string")return`'${X.replace(/'/g,"''")}'`;if(X instanceof Date)return`'${X.toISOString()}'`;return`'${JSON.stringify(X).replace(/'/g,"''")}'`}function pI5(X,Y){let G=X;for(let J=Y.length;J>=1;J--){let $=`$${J}`;if(G.includes($))G=G.replaceAll($,KI6(Y[J-1]))}let Q=[];for(let J=0;J<G.length;J++)if(G[J]==="?")Q.push(J);for(let J=Math.min(Q.length,Y.length)-1;J>=0;J--){let $=Q[J],Z=KI6(Y[J]);G=G.slice(0,$)+Z+G.slice($+1)}return G}function HI6(X){return X.replace(/-/g,"_")}function tI5(X){return`app_${HI6(X)}`}function rI5(X){return`app_role_${HI6(X)}`}function aI5(X){if(X instanceof Error){let Y=X.message.toLowerCase(),G=X.code;return G==="3F000"||G==="42704"||G==="22023"||Y.includes("schema")&&Y.includes("does not exist")||Y.includes("role")&&Y.includes("does not exist")}return!1}async function oI5(X,Y,G){if(await p1`CREATE SCHEMA IF NOT EXISTS ${p1.id(Y)}`.execute(X),!(await p1`
1952
1952
  SELECT EXISTS (SELECT 1 FROM pg_roles WHERE rolname = ${G}) as exists
1953
1953
  `.execute(X)).rows[0]?.exists)await p1`CREATE ROLE ${p1.id(G)} NOLOGIN`.execute(X);await p1`GRANT ${p1.id(G)} TO CURRENT_USER`.execute(X),await p1`GRANT USAGE, CREATE ON SCHEMA ${p1.id(Y)} TO ${p1.id(G)}`.execute(X),await p1`GRANT ALL ON ALL TABLES IN SCHEMA ${p1.id(Y)} TO ${p1.id(G)}`.execute(X),await p1`GRANT ALL ON ALL SEQUENCES IN SCHEMA ${p1.id(Y)} TO ${p1.id(G)}`.execute(X),await p1`ALTER DEFAULT PRIVILEGES IN SCHEMA ${p1.id(Y)} GRANT ALL ON TABLES TO ${p1.id(G)}`.execute(X),await p1`ALTER DEFAULT PRIVILEGES IN SCHEMA ${p1.id(Y)} GRANT ALL ON SEQUENCES TO ${p1.id(G)}`.execute(X),await p1`REVOKE ALL ON SCHEMA public FROM ${p1.id(G)}`.execute(X)}async function sI5(X,Y,G,Q){try{return await X.transaction().execute(async(J)=>{return await p1`SET LOCAL ROLE ${p1.id(G)}`.execute(J),await p1`SET LOCAL search_path TO ${p1.id(Y)}`.execute(J),await p1.raw(Q).execute(J)})}catch(J){if(aI5(J))return await oI5(X,Y,G),await X.transaction().execute(async($)=>{return await p1`SET LOCAL ROLE ${p1.id(G)}`.execute($),await p1`SET LOCAL search_path TO ${p1.id(Y)}`.execute($),await p1.raw(Q).execute($)});throw J}}var iI5,nI5,FI6;var UI6=D(()=>{$7();F0();y0();iI5=F.object({results:F.array(F.unknown()).optional(),success:F.boolean().optional()});nI5=F.object({sql:F.string().describe("The SQL query to run"),params:F.array(F.any()).describe("The parameters to pass to the SQL query").optional()});FI6=l1({name:"DATABASES_RUN_SQL",description:"Run a SQL query in a connection-scoped isolated schema. Supports SELECT, DDL, and DML.",annotations:{title:"Run SQL Query",readOnlyHint:!1,destructiveHint:!0,idempotentHint:!1,openWorldHint:!1},inputSchema:nI5,outputSchema:F.object({result:F.array(iI5)}),handler:async(X,Y)=>{B0(Y),await Y.access.check();let G=pI5(X.sql,X.params||[]);if(!Y.connectionId)throw Error("Connection context required for database access");console.warn("DATABASES_RUN_SQL invoked",{"tool.deprecation_probe":"DATABASES_RUN_SQL","connection.id":Y.connectionId,"organization.id":Y.organization?.id??null,"user.id":Y.auth.user?.id??null});let Q=tI5(Y.connectionId),J=rI5(Y.connectionId);return{result:[{results:(await sI5(Y.db,Q,J,G)).rows,success:!0}]}}})});var BI6,Xj5,NI6;var Hw=D(()=>{F0();eX1();BI6=F.object({connectionId:F.string().optional().describe("Filter subscriptions by connection ID (optional)")}),Xj5=F.object({id:F.string().describe("Subscription ID"),connectionId:F.string().describe("Subscriber connection ID"),eventType:F.string().describe("Event type pattern"),publisher:F.string().nullable().describe("Publisher connection filter (null = all publishers)"),filter:F.string().nullable().describe("JSONPath filter expression"),enabled:F.boolean().describe("Whether subscription is enabled"),createdAt:F.string().datetime().describe("Created timestamp (ISO 8601)"),updatedAt:F.string().datetime().describe("Updated timestamp (ISO 8601)")}),NI6=F.object({subscriptions:F.array(Xj5).describe("List of subscriptions")})});var uA0;var OI6=D(()=>{y0();Hw();uA0=l1({name:"EVENT_PUBLISH",description:`Publish an event. Supports immediate, scheduled (deliverAt), and recurring (cron) delivery.
1954
1954