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.
- package/dist/client/assets/{AlertCircle--wiBhyBy.js → AlertCircle-CcUtX5uM.js} +1 -1
- package/dist/client/assets/{ArrowNarrowLeft-DUEFTkCU.js → ArrowNarrowLeft-IKO0Pdme.js} +1 -1
- package/dist/client/assets/{ArrowUpRight-ByDFdIYO.js → ArrowUpRight-B9ER_pU4.js} +1 -1
- package/dist/client/assets/{Check-C936sYYN.js → Check-DVRpvrTF.js} +1 -1
- package/dist/client/assets/{CheckCircle-CIhRIzNe.js → CheckCircle-C1PuOF6d.js} +1 -1
- package/dist/client/assets/{ChevronDown-D9-4IfgQ.js → ChevronDown-BgtmJwU7.js} +1 -1
- package/dist/client/assets/{ChevronRight-DYzYB9o2.js → ChevronRight-BxsGpbIW.js} +1 -1
- package/dist/client/assets/{ChevronUp-DjhQ54oJ.js → ChevronUp-DvM1tvKw.js} +1 -1
- package/dist/client/assets/{Container-W30Qs4TE.js → Container-D_d73BfD.js} +1 -1
- package/dist/client/assets/{DotsVertical-BTQcMhn-.js → DotsVertical-CFsox5cs.js} +1 -1
- package/dist/client/assets/{LinkExternal01-BWQuO7gD.js → LinkExternal01-BFJlAOho.js} +1 -1
- package/dist/client/assets/{Lock01-CzswZlFM.js → Lock01-BDVFL4zm.js} +1 -1
- package/dist/client/assets/{Palette-BkIcRAuI.js → Palette-C4Za_YQg.js} +1 -1
- package/dist/client/assets/{Play-CX-s0F5M.js → Play-CG03drxN.js} +1 -1
- package/dist/client/assets/{Plus-CxH8Dky0.js → Plus-BMxmddO-.js} +1 -1
- package/dist/client/assets/{RefreshCcw01-DUZtukjI.js → RefreshCcw01-B_PJ5f1k.js} +1 -1
- package/dist/client/assets/{SearchMd-DJcqe9YA.js → SearchMd-BH72zEYs.js} +1 -1
- package/dist/client/assets/{Settings02-19U6Pasa.js → Settings02-Bvv_nn0Y.js} +1 -1
- package/dist/client/assets/{Shield01-C1y1P7P6.js → Shield01-B-3tcngo.js} +1 -1
- package/dist/client/assets/{Star01-Dl0-D7bS.js → Star01-Cdw_hElv.js} +1 -1
- package/dist/client/assets/{Sun-DZgB_ONP.js → Sun-ja3JE2c9.js} +1 -1
- package/dist/client/assets/{Tool01-zaCqe86u.js → Tool01-DK9-mVZw.js} +1 -1
- package/dist/client/assets/{Trash01-DKdnsDmj.js → Trash01-D676SGAl.js} +1 -1
- package/dist/client/assets/{User01-kuDW4DKu.js → User01-DGJlNaMw.js} +1 -1
- package/dist/client/assets/{Users03-DEpz3kvM.js → Users03-CRQrY9LZ.js} +1 -1
- package/dist/client/assets/{X-CXRgDFum.js → X-DZI_qdyG.js} +1 -1
- package/dist/client/assets/{XCircle-CGvUuorr.js → XCircle-BI7HQKdL.js} +1 -1
- package/dist/client/assets/{XClose-C4DzyMov.js → XClose-DQPB9QhN.js} +1 -1
- package/dist/client/assets/{Zap-Cl0ETvvt.js → Zap-Dd-DoFdM.js} +1 -1
- package/dist/client/assets/{ZapSquare-DKEusvEW.js → ZapSquare-DZh8af5t.js} +1 -1
- package/dist/client/assets/{accordion-fFsu-8K2.js → accordion-BqJi9w98.js} +1 -1
- package/dist/client/assets/{agent-icon-D59FxHod.js → agent-icon-BpIPT-PU.js} +1 -1
- package/dist/client/assets/{agents-list-C9eV3yHD.js → agents-list-C92sGcpj.js} +1 -1
- package/dist/client/assets/ai-providers-Bi9o279v.js +1 -0
- package/dist/client/assets/{alert-dialog-Bs4oM5xq.js → alert-dialog-DZnXWtkc.js} +1 -1
- package/dist/client/assets/{auth-catchall-D7pOW-4H.js → auth-catchall-BlSxNcbF.js} +1 -1
- package/dist/client/assets/{automation-list-row-DBnJAyuL.js → automation-list-row-BjkF6IP8.js} +1 -1
- package/dist/client/assets/{automations-CASAuVDl.js → automations-Dk44qwnk.js} +1 -1
- package/dist/client/assets/{avatar-ChukgIuT.js → avatar-EJ4rWeJV.js} +1 -1
- package/dist/client/assets/{badge-CYxiHq4p.js → badge-CMhkMPpc.js} +1 -1
- package/dist/client/assets/{brand-context-BUYExxZ2.js → brand-context-DHKafDne.js} +1 -1
- package/dist/client/assets/{card-CuKTvJk_.js → card-DfBr11OH.js} +1 -1
- package/dist/client/assets/{chat-context-Cmw2lxUK.js → chat-context-DfNQ7f-M.js} +1 -1
- package/dist/client/assets/{checkbox-B5zXb2Jo.js → checkbox-CsVxpSNu.js} +1 -1
- package/dist/client/assets/{collection-detail-D12l8837.js → collection-detail-D3z0bht4.js} +1 -1
- package/dist/client/assets/{collection-display-button-DUUEITxu.js → collection-display-button-CijPjsBx.js} +1 -1
- package/dist/client/assets/{collection-search-JYX4AEcX.js → collection-search-CUzZkask.js} +1 -1
- package/dist/client/assets/{collection-search-Clt8DXHN.js → collection-search-DDXROr4Y.js} +1 -1
- package/dist/client/assets/{collection-table-wrapper-ClYve0R8.js → collection-table-wrapper-BJIOgEuU.js} +1 -1
- package/dist/client/assets/{collection-tabs-lx0xcUeS.js → collection-tabs-Sh1c6Hp3.js} +1 -1
- package/dist/client/assets/{collections-BNOKPh2o.js → collections-B6H9755O.js} +1 -1
- package/dist/client/assets/{command-Dl-gUn28.js → command-CN0wol1M.js} +1 -1
- package/dist/client/assets/{connection-card-DpO7z97O.js → connection-card-t8q3avUo.js} +1 -1
- package/dist/client/assets/{connection-detail-AvrFqpFh.js → connection-detail-_U-y0yZK.js} +1 -1
- package/dist/client/assets/{connection-form-helpers-YsDtNQ7E.js → connection-form-helpers-CDqLkd8a.js} +1 -1
- package/dist/client/assets/{connections-BCRN-YI1.js → connections-B7soayai.js} +1 -1
- package/dist/client/assets/{constants-BGzIm0WX.js → constants-Hpdlytpy.js} +1 -1
- package/dist/client/assets/{constants-DfKy425l.js → constants-RvCh42kd.js} +1 -1
- package/dist/client/assets/{dialog-De2L-Mm9.js → dialog-sB-RNyMu.js} +1 -1
- package/dist/client/assets/{domain-settings-Dpd1_jlw.js → domain-settings-CfN0XeQj.js} +1 -1
- package/dist/client/assets/{drawer-14Rn9Zur.js → drawer-DdDu6FoS.js} +1 -1
- package/dist/client/assets/{dropdown-menu-B7VqWYeT.js → dropdown-menu-Ba10Ub1x.js} +1 -1
- package/dist/client/assets/{dynamic-plugin-layout-DiwAyewI.js → dynamic-plugin-layout-DXfaFfD-.js} +1 -1
- package/dist/client/assets/{empty-state-BAo1HEab.js → empty-state-4KQTPzu7.js} +1 -1
- package/dist/client/assets/{empty-state-DH5ZYu9E.js → empty-state-oHMUpnK0.js} +1 -1
- package/dist/client/assets/{extract-connection-data-Dn80NCk3.js → extract-connection-data-CLmSiyTB.js} +1 -1
- package/dist/client/assets/{features-n_p9V38c.js → features-gEXnGXJn.js} +1 -1
- package/dist/client/assets/{form-BpjQQfrk.js → form-C8F4itc9.js} +1 -1
- package/dist/client/assets/{general-Dq8oAlWK.js → general-YVhMnlrc.js} +1 -1
- package/dist/client/assets/{index-Cnr3iyKb.js → index-9WMiiDWH.js} +1 -1
- package/dist/client/assets/{index-DZ2mE-ID.js → index-A1kUSxVF.js} +1 -1
- package/dist/client/assets/{index-DuYWPwRk.js → index-B__IE7Zg.js} +1 -1
- package/dist/client/assets/{index-f--UpzBV.js → index-BfH23PIC.js} +1 -1
- package/dist/client/assets/{index-PaARzNIj.js → index-C8Jg2iKl.js} +1 -1
- package/dist/client/assets/{index-DeZ4lzZS.js → index-CPXgqgtn.js} +2 -2
- package/dist/client/assets/{index-xj-daVDj.js → index-CaFhVluQ.js} +1 -1
- package/dist/client/assets/{index-x86r1Bar.js → index-Ccbgu0mE.js} +1 -1
- package/dist/client/assets/{index-YoMTmLrM.js → index-CsYx-I3w.js} +1 -1
- package/dist/client/assets/{index-CsGGI0Nu.js → index-CzNtdOVE.js} +3 -3
- package/dist/client/assets/{index-Lha-Dz-p.js → index-DGIpb-N4.js} +1 -1
- package/dist/client/assets/{index-aqFN5mzK.js → index-RcpmOMcB.js} +1 -1
- package/dist/client/assets/{index-CzYFXCYm.js → index-SKdTLMdd.js} +1 -1
- package/dist/client/assets/{index-C3WwEpEf.js → index-Vpu4sPxo.js} +1 -1
- package/dist/client/assets/index-s5U-1Asm.js +1 -0
- package/dist/client/assets/{index-BGGN2eK9.js → index-vqBvbw9C.js} +1 -1
- package/dist/client/assets/{infiniteQueryObserver-B8wlRxFU.js → infiniteQueryObserver-BeoG5sU6.js} +1 -1
- package/dist/client/assets/{input-BbtZTtIz.js → input-BYLqJazY.js} +1 -1
- package/dist/client/assets/{integration-icon-CX-4HHYz.js → integration-icon-Btpdnlb-.js} +1 -1
- package/dist/client/assets/{label-B56NHqZu.js → label-wqfg1Psv.js} +1 -1
- package/dist/client/assets/{layout-DJRPSgl8.js → layout-CSZNypzG.js} +1 -1
- package/dist/client/assets/{lean-canvas-recruit-modal-jh6XZJ5m.js → lean-canvas-recruit-modal-aeSS5EN2.js} +1 -1
- package/dist/client/assets/{login-MOfMmqEE.js → login-eSx-pmqu.js} +1 -1
- package/dist/client/assets/{members-Bb0t0cOy.js → members-Dp2QRB1E.js} +1 -1
- package/dist/client/assets/{monaco-editor-B3eeVSHt.js → monaco-editor-Bp7vt54e.js} +1 -1
- package/dist/client/assets/{monitoring-stats-row-BOj9NNqP.js → monitoring-stats-row-CSfdCe-P.js} +1 -1
- package/dist/client/assets/{oauth-callback-Bpfn3wkA.js → oauth-callback-ChiIJvQB.js} +1 -1
- package/dist/client/assets/{oauth-callback-ai-provider-BzHKlMUG.js → oauth-callback-ai-provider-Uj96uOps.js} +1 -1
- package/dist/client/assets/{onboarding-BHY99bnn.js → onboarding-B_0dDnLd.js} +1 -1
- package/dist/client/assets/{org-layout-BA9WvOcB.js → org-layout-DokAgJ5h.js} +1 -1
- package/dist/client/assets/{org-plugin-layout-D8vjiGLz.js → org-plugin-layout-C98RwuLU.js} +1 -1
- package/dist/client/assets/{pair-CqzVS7FB.js → pair-DYA5r7ea.js} +1 -1
- package/dist/client/assets/{plugin-empty-state-peVJXJ6R.js → plugin-empty-state-j8s8XCj4.js} +1 -1
- package/dist/client/assets/{plugin-header-BzceyGQx.js → plugin-header-BufwzLmI.js} +1 -1
- package/dist/client/assets/{plugin-layout-gRiAtkqj.js → plugin-layout-BwLMjrn6.js} +1 -1
- package/dist/client/assets/{popover-BWJBmR0W.js → popover-BP8qYbWI.js} +1 -1
- package/dist/client/assets/{profile-3DZrk3WT.js → profile-BUq_8Y8L.js} +1 -1
- package/dist/client/assets/{project-app-view-DKEPlP9n.js → project-app-view-Xj3yVfXy.js} +1 -1
- package/dist/client/assets/registry-BLsA5AO_.js +2 -0
- package/dist/client/assets/{registry-layout-6idZqCIF.js → registry-layout-CZ27EJiP.js} +1 -1
- package/dist/client/assets/{required-auth-layout-C4TIYyDi.js → required-auth-layout-DxobDViQ.js} +1 -1
- package/dist/client/assets/{reset-password-CKXtWBt4.js → reset-password-BX31j3AV.js} +1 -1
- package/dist/client/assets/{roles-CR6ZAjq-.js → roles-dyH1CsHQ.js} +1 -1
- package/dist/client/assets/{scroll-area-CpFD8S3R.js → scroll-area-Bazrt5Q_.js} +1 -1
- package/dist/client/assets/{search-input-D2W6-i9v.js → search-input-CagM2rOd.js} +1 -1
- package/dist/client/assets/{select-CACnwoTF.js → select-DV6XTbu1.js} +1 -1
- package/dist/client/assets/{select-model-Cajziskt.js → select-model-q-6_EO7e.js} +1 -1
- package/dist/client/assets/{settings-layout-BNHNlQuI.js → settings-layout-ydozaX1z.js} +1 -1
- package/dist/client/assets/{settings-section-B79eSyxk.js → settings-section-BSSTyi59.js} +1 -1
- package/dist/client/assets/{shell-layout-D-2Zmpp8.js → shell-layout-CCBbSGMK.js} +1 -1
- package/dist/client/assets/{skeleton-j1f8Y-yp.js → skeleton-eJ5dvmO1.js} +1 -1
- package/dist/client/assets/{sso-B3TyJ2uc.js → sso-D3B4i8mi.js} +1 -1
- package/dist/client/assets/store-registry-BizfzILs.js +2 -0
- package/dist/client/assets/{store-CIHVOnJ4.js → store-tol-TExI.js} +1 -1
- package/dist/client/assets/{switch-Cym1wsqe.js → switch-B9P99cpo.js} +1 -1
- package/dist/client/assets/{table-DjvJngLq.js → table-BIJ38639.js} +1 -1
- package/dist/client/assets/{tabs-CcbG9N2e.js → tabs-C0vV7-ts.js} +1 -1
- package/dist/client/assets/{task-status-BhHFrQR1.js → task-status-nAuAdX3m.js} +1 -1
- package/dist/client/assets/{textarea-CxPy3ZTN.js → textarea-Dk5HQM76.js} +1 -1
- package/dist/client/assets/{toggle-group-CUoQjxXD.js → toggle-group-DiN3ciV3.js} +1 -1
- package/dist/client/assets/{tools-list-Cb8a_Lef.js → tools-list-NaHpnv5w.js} +1 -1
- package/dist/client/assets/{tooltip-CzbSAgXQ.js → tooltip-CCRvyunm.js} +1 -1
- package/dist/client/assets/{types-DxewxD-a.js → types-CsuD99pM.js} +1 -1
- package/dist/client/assets/{use-ai-providers-CHzON1wD.js → use-ai-providers-Dgd0mo29.js} +1 -1
- package/dist/client/assets/{use-collections-DSBDbO1N.js → use-collections-Ra-WueHq.js} +1 -1
- package/dist/client/assets/{use-connection-DbYn3h0U.js → use-connection-D6QJlUO9.js} +1 -1
- package/dist/client/assets/{use-copy-B8mhVwfc.js → use-copy-BHjujE3w.js} +1 -1
- package/dist/client/assets/{use-create-virtual-mcp-zuSOC404.js → use-create-virtual-mcp-BxdAiHU1.js} +1 -1
- package/dist/client/assets/{use-debounced-autosave-B3LX33uh.js → use-debounced-autosave-C7GmOCQZ.js} +1 -1
- package/dist/client/assets/{use-decopilot-events-C1f4EaaO.js → use-decopilot-events-DQouP0Xf.js} +1 -1
- package/dist/client/assets/{use-delete-connection-B7VdYPcM.js → use-delete-connection-1o_zv9iJ.js} +1 -1
- package/dist/client/assets/{use-infinite-scroll-61_2Ymdd.js → use-infinite-scroll-CBiQU4Ab.js} +1 -1
- package/dist/client/assets/{use-list-state-BX0wxNad.js → use-list-state-COPr6pvf.js} +1 -1
- package/dist/client/assets/{use-mcp-tools-LXbg-7b0.js → use-mcp-tools-DD1IUYEC.js} +1 -1
- package/dist/client/assets/{use-members-B7wVCVZJ.js → use-members-uqCUADFs.js} +1 -1
- package/dist/client/assets/{use-navigate-to-agent-mAuF_Olj.js → use-navigate-to-agent-DtcXsTmt.js} +1 -1
- package/dist/client/assets/{use-org-auth-client-CZ46-R8H.js → use-org-auth-client-lzEa1Nt5.js} +1 -1
- package/dist/client/assets/{use-org-sso-iwRxmcvL.js → use-org-sso-XYdJdNGD.js} +1 -1
- package/dist/client/assets/{use-organization-roles-BiL7w6Rf.js → use-organization-roles-DaSsDuIz.js} +1 -1
- package/dist/client/assets/{use-organization-settings-CgpGj7yV.js → use-organization-settings-DZQEi_vL.js} +1 -1
- package/dist/client/assets/{use-registry-connections-v6H0url5.js → use-registry-connections-BgfsM9PL.js} +1 -1
- package/dist/client/assets/{use-status-sounds-DWE_lKOw.js → use-status-sounds-BnOGH79m.js} +1 -1
- package/dist/client/assets/{use-tasks-DYLdIMjk.js → use-tasks-CP9EEDgQ.js} +1 -1
- package/dist/client/assets/{use-view-mode-Dj9H2B4i.js → use-view-mode-DBMTYwcB.js} +1 -1
- package/dist/client/assets/{use-virtual-mcp-DNHpowZu.js → use-virtual-mcp-BNrt8cOn.js} +1 -1
- package/dist/client/assets/useInfiniteQuery-m6hlUQnd.js +1 -0
- package/dist/client/assets/useSuspenseInfiniteQuery-BbuXOIpQ.js +1 -0
- package/dist/client/assets/{user-B6HmPP4N.js → user-O4Eqd0DY.js} +1 -1
- package/dist/client/assets/{view-mode-toggle-CWWQpnSB.js → view-mode-toggle-BDOZY65E.js} +1 -1
- package/dist/client/assets/{workflow-zflBzFOe.js → workflow-BiwnYTIB.js} +1 -1
- package/dist/client/assets/workflow-detail-CHrqPsdS.js +1 -0
- package/dist/client/index.html +1 -1
- package/dist/server/cli.js +2 -2
- package/dist/server/node_modules/ansi-styles/index.d.ts +236 -0
- package/dist/server/node_modules/ansi-styles/index.js +223 -0
- package/dist/server/node_modules/ansi-styles/license +9 -0
- package/dist/server/node_modules/ansi-styles/package.json +54 -0
- package/dist/server/node_modules/ansi-styles/readme.md +173 -0
- package/dist/server/node_modules/xtend/.jshintrc +30 -0
- package/dist/server/node_modules/xtend/LICENSE +20 -0
- package/dist/server/node_modules/xtend/README.md +32 -0
- package/dist/server/node_modules/xtend/immutable.js +19 -0
- package/dist/server/node_modules/xtend/mutable.js +17 -0
- package/dist/server/node_modules/xtend/package.json +55 -0
- package/dist/server/node_modules/xtend/test.js +103 -0
- package/dist/server/server.js +1 -1
- package/package.json +1 -1
- package/dist/client/assets/ai-providers-Dw3vAL7u.js +0 -1
- package/dist/client/assets/index-xIOMtHnW.js +0 -1
- package/dist/client/assets/registry-4PJ4DDSp.js +0 -2
- package/dist/client/assets/store-registry-DKNEpxY8.js +0 -2
- package/dist/client/assets/useInfiniteQuery-DsFcYHS7.js +0 -1
- package/dist/client/assets/useSuspenseInfiniteQuery-B4Xtg3B8.js +0 -1
- package/dist/client/assets/workflow-detail-BkYNroDK.js +0 -1
package/dist/server/cli.js
CHANGED
|
@@ -1643,7 +1643,7 @@ AS SELECT
|
|
|
1643
1643
|
FROM monitoring_metrics
|
|
1644
1644
|
GROUP BY organization_id, name, bucket, connection_id, tool_name, status
|
|
1645
1645
|
`}),console.log("[clickhouse-schema] monitoring_metrics_rollup_1m_mv view ready")}finally{await G.close()}}catch(Y){console.error("[clickhouse-schema] Failed to create rollup DDL (queries will fall back to raw table):",Y)}}async function iA1(X){let Y={...process.env},G=e$1(X,Y),Q=G.settings.encryptionKey;console.log(`[settings] ENCRYPTION_KEY = ${JSON.stringify(Q)} (${Q.length} chars)`);let{ensureServices:J}=await Promise.resolve().then(() => (l$1(),u$1)),{outputs:W,services:Z}=await J({home:G.settings.dataDir,externalDatabaseUrl:G.externalDatabaseUrl,externalNatsUrl:G.externalNatsUrl});if(!G.skipMigrations){let{migrateBetterAuth:K}=await Promise.resolve().then(() => (YW0(),Wg4));await K(W.databaseUrl);let{createDatabase:H}=await Promise.resolve().then(() => (GU(),Zg4)),{migrateToLatest:U}=await Promise.resolve().then(() => (Ns4(),Bs4)),B=H(W.databaseUrl);await U({keepOpen:!0,database:B,skipBetterAuth:!0})}if(G.settings.clickhouseUrl){let{ensureClickHouseRollup:K}=await Promise.resolve().then(() => z16);await K(G.settings.clickhouseUrl)}let $={...G.settings,databaseUrl:W.databaseUrl,natsUrls:W.natsUrls};return xt1($),{settings:$,services:Z.map((K)=>({name:K.name==="PostgreSQL"?"Postgres":K.name,port:K.port})),managedServiceNames:Z.filter((K)=>K.owner==="managed").map((K)=>K.name)}}var kN0=w(()=>{yt1();l9()});var tA1={};T0(tA1,{updateService:()=>Ga,toggleViewMode:()=>vN0,toggleVibeState:()=>fN0,toggleLogFlow:()=>_N0,subscribeCliState:()=>vX1,setVibe:()=>Ka5,setTuiConsoleIntercepted:()=>pA1,setServerUrl:()=>fX1,setMigrationsDone:()=>_X1,setEnv:()=>bX1,setDevMode:()=>Wa5,setDataDir:()=>$a5,isTuiConsoleIntercepted:()=>nA1,getCliState:()=>CX1,addLogEntry:()=>Zz});function PU(){for(let X of CN0)X()}function CX1(){return e9}function vX1(X){return CN0.add(X),()=>CN0.delete(X)}function Ga(X){e9={...e9,services:e9.services.map((Y)=>Y.name===X.name?X:Y)},PU()}function _X1(){e9={...e9,migrationsStatus:"done"},PU()}function fX1(X){e9={...e9,serverUrl:X},PU()}function bX1(X){e9={...e9,env:X},PU()}function Zz(X){let Y=[...e9.logs,X];e9={...e9,logs:Y.length>500?Y.slice(-500):Y},PU()}function Wa5(){e9={...e9,services:[...e9.services,{name:"Vite",status:"pending",port:0}]},PU()}function vN0(){e9={...e9,viewMode:e9.viewMode==="requests"?"config":"requests"},PU()}function _N0(){e9={...e9,logFlow:!e9.logFlow},PU()}function $a5(X){e9={...e9,dataDir:X},PU()}function Ka5(X){e9={...e9,vibe:X},PU()}function fN0(){e9={...e9,vibe:!e9.vibe},PU()}function pA1(X){O16=X}function nA1(){return O16}var e9,CN0,O16=!1;var Wz=w(()=>{e9={services:[{name:"Postgres",status:"pending",port:0},{name:"NATS",status:"pending",port:0}],migrationsStatus:"pending",serverUrl:null,env:null,logs:[],viewMode:"requests",logFlow:!1,vibe:!1,dataDir:null},CN0=new Set});import{createServer as D16}from"net";function Ha5(X){return new Promise((Y)=>{let G=D16();G.once("error",()=>Y(!1)),G.listen(X,"0.0.0.0",()=>{G.close(()=>Y(!0))})})}async function aA1(X){if(await Ha5(X))return X;let Y=await new Promise((G,Q)=>{let J=D16();J.once("error",Q),J.listen(0,"0.0.0.0",()=>{let W=J.address(),Z=typeof W==="object"&&W?W.port:0;J.close(()=>G(Z))})});return console.warn(`Port ${X} is in use, using port ${Y} instead.`),Y}var bN0=()=>{};var yN0={};T0(yN0,{startDevServer:()=>Ua5});import{join as Fa5}from"path";function w16(X){return X.replace(/\x1b\[[0-9;]*m/g,"")}function L16(X){let Y=X.getReader(),G=new TextDecoder,Q="";function J(){let W=Q.split(`
|
|
1646
|
-
`);Q=W.pop()??"";for(let Z of W){let $=w16(Z).replace(/^\[\d+\]\s*/,"").trim();if(!$)continue;Zz({method:"",path:"",status:0,duration:0,timestamp:new Date,rawLine:$})}}(async()=>{for(;;){let{done:W,value:Z}=await Y.read();if(W)break;Q+=G.decode(Z,{stream:!0}),J()}if(Q.trim()){let W=w16(Q).replace(/^\[\d+\]\s*/,"").trim();if(W)Zz({method:"",path:"",status:0,duration:0,timestamp:new Date,rawLine:W})}})()}async function Ua5(X){let{vitePort:Y,baseUrl:G,noTui:Q}=X,J=await aA1(Number(X.port)),{settings:W,services:Z,managedServiceNames:$}=await iA1({port:String(J),home:X.home,baseUrl:X.baseUrl,localMode:X.localMode,skipMigrations:X.skipMigrations,noTui:X.noTui,vitePort:X.vitePort});for(let z of Z)Ga({name:z.name,status:"ready",port:z.port});bX1(W),_X1();let K=Fa5(import.meta.dir,"..","..","..","..",".."),H=Q===!0,U=Bun.spawn(["bun","run","--cwd=apps/mesh","dev:servers"],{cwd:K,env:{...process.env,PORT:String(W.port),VITE_PORT:String(Y),DATABASE_URL:W.databaseUrl,NATS_URL:W.natsUrls.join(","),NODE_ENV:W.nodeEnv,DECOCMS_LOCAL_MODE:String(W.localMode),DECOCMS_HOME:W.dataDir,DATA_DIR:W.dataDir,DECO_CLI:"1",...W.baseUrl?{BASE_URL:W.baseUrl}:{}},stdio:["inherit",H?"inherit":"pipe",H?"inherit":"pipe"]});if(!H)L16(U.stdout),L16(U.stderr);let B=G||`http://localhost:${W.port}`;fX1(B),Ga({name:"Vite",status:"ready",port:Number(Y)});let N=async(z)=>{if(U.kill(z),$.length>0){let{stopServices:O}=await Promise.resolve().then(() => (l$1(),u$1));await O(W.dataDir)}};return process.on("SIGINT",()=>N("SIGINT")),process.on("SIGTERM",()=>N("SIGTERM")),{port:Number(W.port),process:U}}var xN0=w(()=>{kN0();Wz();bN0()});import{Box as hN0,Text as gN0}from"ink";import{jsx as P16,jsxs as rA1}from"react/jsx-runtime";function E16(X){if(!X)return"not set";try{let Y=new URL(X);if(Y.password)Y.password="***";if(Y.username&&Y.username.length>3)Y.username=Y.username.slice(0,3)+"***";return Y.pathname="/",Y.search="",Y.hash="",Y.toString()}catch{if(X.length<=10)return X;return X.slice(0,6)+"***"+X.slice(-4)}}function za5(X,Y){if(Ba5.has(X))return Y?{text:"\u25CF\u25CF\u25CF\u25CF\u25CF\u25CF",dimColor:!0}:{text:"not set",dimColor:!0};if(Na5.has(X)){if(Array.isArray(Y)){if(Y.length===0)return{text:"not set",dimColor:!0};return{text:Y.map((W)=>E16(W)).join(", "),color:"cyan"}}let Q=E16(Y);return Q==="not set"?{text:Q,dimColor:!0}:{text:Q,color:"cyan"}}if(Y===void 0||Y===null||Y==="")return{text:"not set",dimColor:!0};let G=String(Y);if(G==="true")return{text:G,color:"green"};if(G==="false")return{text:G,color:"yellow"};try{return new URL(G),{text:G,color:"cyan"}}catch{return{text:G}}}function Oa5(X){return[{title:"Core",entries:[{key:"NODE_ENV",value:X.nodeEnv},{key:"PORT",value:X.port},{key:"BASE_URL",value:X.baseUrl??`http://localhost:${X.port}`},{key:"DATA_DIR",value:X.dataDir}]},{title:"Database",entries:[{key:"DATABASE_URL",value:X.databaseUrl},{key:"DATABASE_PG_SSL",value:X.databasePgSsl}]},{title:"Auth & Secrets",entries:[{key:"BETTER_AUTH_SECRET",value:X.betterAuthSecret},{key:"ENCRYPTION_KEY",value:X.encryptionKey},{key:"MESH_JWT_SECRET",value:X.meshJwtSecret},{key:"STUDIO_PROVISION_SECRET_KEY",value:X.studioProvisionSecretKey},{key:"DISABLE_RATE_LIMIT",value:X.disableRateLimit}]},{title:"Auth Providers",entries:[{key:"AUTH_EMAIL_PASSWORD_ENABLED",value:process.env.AUTH_EMAIL_PASSWORD_ENABLED??"true"},{key:"AUTH_GOOGLE_CLIENT_ID",value:!!process.env.AUTH_GOOGLE_CLIENT_ID},{key:"AUTH_GITHUB_CLIENT_ID",value:!!process.env.AUTH_GITHUB_CLIENT_ID},{key:"AUTH_RESEND_API_KEY",value:!!process.env.AUTH_RESEND_API_KEY},{key:"AUTH_SENDGRID_API_KEY",value:!!process.env.AUTH_SENDGRID_API_KEY},{key:"AUTH_SSO_MS_CLIENT_ID",value:!!process.env.AUTH_SSO_MS_CLIENT_ID},{key:"AUTH_MAGIC_LINK_ENABLED",value:process.env.AUTH_MAGIC_LINK_ENABLED==="true"},{key:"AUTH_EMAIL_OTP_ENABLED",value:process.env.AUTH_EMAIL_OTP_ENABLED==="true"}]},{title:"Observability",entries:[{key:"CLICKHOUSE_URL",value:X.clickhouseUrl},{key:"OTEL_SERVICE_NAME",value:X.otelServiceName}]},{title:"Event Bus & Networking",entries:[{key:"NATS_URL",value:X.natsUrls}]},{title:"Config Files",entries:[{key:"CONFIG_PATH",value:X.configPath}]},{title:"AI Gateway",entries:[{key:"DECO_AI_GATEWAY_ENABLED",value:X.aiGatewayEnabled},{key:"DECO_AI_GATEWAY_URL",value:X.aiGatewayUrl}]}]}function q16({env:X}){let Y=Oa5(X);return P16(hN0,{flexDirection:"column",children:Y.map((G)=>rA1(hN0,{flexDirection:"column",marginTop:1,children:[rA1(gN0,{dimColor:!0,children:[" ","\u2500\u2500 ",G.title," ","\u2500".repeat(Math.max(0,38-G.title.length))]}),G.entries.map(({key:Q,value:J})=>{let W=za5(Q,J);return rA1(hN0,{children:[rA1(gN0,{dimColor:!0,children:[" ",Q.padEnd(36)]}),P16(gN0,{color:W.color,dimColor:W.dimColor,children:W.text})]},Q)})]},G.title))})}var Ba5,Na5;var A16=w(()=>{Ba5=new Set(["BETTER_AUTH_SECRET","ENCRYPTION_KEY","MESH_JWT_SECRET","STUDIO_PROVISION_SECRET_KEY"]),Na5=new Set(["DATABASE_URL","CLICKHOUSE_URL","NATS_URL"])});var uN0;var T16=w(()=>{uN0={name:"decocms",version:"2.306.1",description:"Deco CMS \u2014 Self-hostable MCP Gateway for managing AI connections and tools",author:"Deco team",repository:{type:"git",url:"git+https://github.com/decocms/studio.git",directory:"apps/mesh"},bugs:{url:"https://github.com/decocms/studio/issues"},type:"module",bin:{deco:"./dist/server/cli.js"},files:["dist/**/*"],scripts:{dev:'bun run migrate && concurrently "bun run dev:client" "bun run dev:server"',"dev:servers":'concurrently "bun run dev:client" "bun run dev:server"',"dev:client":"bun --bun vite dev","dev:server":"bun run --cwd=../../packages/sandbox build && NODE_ENV=development bun --env-file=.env --hot run src/index.ts","build:client":"bun --bun vite build","build:server":"bun run scripts/bundle-server-script.ts --dist ./dist/server","db:migrate":"bun run ./dist/server/migrate.js",check:"tsc --noEmit",start:"bun run ./dist/server/server.js",migrate:"bun run src/database/migrate.ts",test:"bun test","test:e2e":"playwright test","test:e2e:ui":"playwright test --ui","better-auth:migrate":"bunx --bun @better-auth/cli migrate -y --config src/auth/index.ts",prepublishOnly:"bun run build:client && bun run build:server"},optionalDependencies:{"@duckdb/node-api":"^1.5.0-r.1","@freestyle-sh/with-bun":"^0.2.12","@freestyle-sh/with-deno":"^0.0.4","@freestyle-sh/with-nodejs":"^0.2.9","freestyle-sandboxes":"^0.1.46"},dependencies:{"@ai-sdk/anthropic":"^3.0.58","@ai-sdk/google":"^3.0.60","@ai-sdk/openai":"^3.0.50","@anthropic-ai/sdk":"^0.79.0","@aws-sdk/client-s3":"^3.1013.0","@aws-sdk/s3-request-presigner":"^3.1013.0","@clickhouse/client":"^1.8.1","@deco-cx/warp-node":"^0.3.20","@dnd-kit/core":"^6.3.1","@dnd-kit/sortable":"^10.0.0","@dnd-kit/utilities":"^3.2.2","@inkjs/ui":"^2.0.0","@modelcontextprotocol/ext-apps":"^1.2.2","@openrouter/ai-sdk-provider":"^2.2.5","@opentelemetry/core":"^2.6.0","@tanstack/react-virtual":"^3.13.21","@xterm/addon-fit":"^0.11.0","@xterm/xterm":"^6.0.0","ai-sdk-provider-claude-code":"^3.4.4","ai-sdk-provider-codex-cli":"^1.1.0","embedded-postgres":"^18.3.0-beta.16",ink:"^6.8.0",kysely:"^0.28.12",nats:"^2.29.3","node-pty":"^1.0.0","posthog-js":"^1.371.1","posthog-node":"^5.0.0",react:"^19.2.0","react-dom":"^19.2.0"},devDependencies:{"@ai-sdk/provider":"^3.0.8","@ai-sdk/react":"^3.0.118","@anthropic-ai/claude-agent-sdk":"^0.2.80","@better-auth/sso":"1.4.1","@daveyplate/better-auth-ui":"^3.2.7","@deco/ui":"workspace:*","@decocms/better-auth":"1.5.17","@decocms/bindings":"workspace:*","@decocms/mcp-utils":"workspace:*","@decocms/mesh-sdk":"workspace:*","@decocms/runtime":"workspace:*","@decocms/vite-plugin":"workspace:*","@electric-sql/pglite":"^0.3.15","@floating-ui/react":"^0.27.16","@hookform/resolvers":"^5.2.2","@jitl/quickjs-wasmfile-release-sync":"0.31.0","@modelcontextprotocol/sdk":"1.27.1","@monaco-editor/react":"^4.7.0","@opentelemetry/api":"^1.9.0","@opentelemetry/api-logs":"^0.211.0","@opentelemetry/exporter-logs-otlp-proto":"^0.211.0","@opentelemetry/exporter-prometheus":"^0.208.0","@opentelemetry/exporter-trace-otlp-proto":"^0.207.0","@opentelemetry/instrumentation-runtime-node":"^0.24.0","@opentelemetry/sdk-logs":"^0.211.0","@opentelemetry/sdk-metrics":"^2.2.0","@opentelemetry/sdk-node":"^0.207.0","@opentelemetry/sdk-trace-base":"^2.5.0","@playwright/test":"^1.58.2","@radix-ui/react-avatar":"^1.1.10","@radix-ui/react-checkbox":"^1.3.3","@radix-ui/react-dialog":"^1.1.15","@radix-ui/react-dropdown-menu":"^2.1.16","@radix-ui/react-label":"^2.1.7","@radix-ui/react-select":"^2.2.6","@radix-ui/react-separator":"^1.1.7","@radix-ui/react-slot":"^1.2.3","@radix-ui/react-tabs":"^1.1.13","@rjsf/core":"^6.1.2","@rjsf/shadcn":"^6.1.2","@rjsf/utils":"^6.1.2","@rjsf/validator-ajv8":"^6.1.2","@tailwindcss/vite":"^4.1.17","@tanstack/react-query":"5.90.11","@tanstack/react-router":"^1.139.7","@tiptap/core":"3.20.2","@tiptap/extension-mention":"3.20.2","@tiptap/extension-placeholder":"3.20.2","@tiptap/pm":"3.20.2","@tiptap/react":"3.20.2","@tiptap/starter-kit":"3.20.2","@tiptap/suggestion":"3.20.2","@types/bun":"^1.3.1","@types/pg":"^8.15.6","@types/react-syntax-highlighter":"^15.5.13","@untitledui/icons":"^0.0.19","@vercel/nft":"^1.1.1","@vitejs/plugin-react":"^5.1.0",ai:"^6.0.116","babel-plugin-react-compiler":"^1.0.0","better-auth":"1.4.5","class-variance-authority":"^0.7.1",clsx:"^2.1.1",concurrently:"^9.2.1",croner:"^9.1.0","date-fns":"^4.1.0",degit:"^2.8.4",hono:"^4.10.7","input-otp":"^1.4.2",jose:"^6.0.11","kysely-pglite":"^0.6.1","lucide-react":"^0.468.0",marked:"^15.0.6","@decocms/sandbox":"workspace:*","mesh-plugin-workflows":"workspace:*",nanoid:"^5.1.6",pg:"^8.16.3",prettier:"^3.4.2","react-hook-form":"^7.66.0","react-markdown":"^10.1.0","react-resizable-panels":"^2.1.7","react-syntax-highlighter":"^15.6.1",recharts:"^3.6.0","rehype-raw":"^7.0.0","remark-gfm":"^4.0.0","sass-embedded":"^1.97.2",sonner:"^2.0.7","tailwind-merge":"^3.3.1",tailwindcss:"^4.1.17",typescript:"^5.9.3",vite:"^7.2.1","vite-tsconfig-paths":"^5.1.4",zod:"^4.0.0",zustand:"^5.0.9"},homepage:"https://github.com/decocms/studio",keywords:["mcp","model-context-protocol","ai","gateway","self-hosted","mesh","tools"],license:"MIT",publishConfig:{access:"public"}}});import{Box as qU,Text as RX}from"ink";import{Spinner as wa5}from"@inkjs/ui";import{useSyncExternalStore as I16}from"react";import{jsx as TY,jsxs as sQ}from"react/jsx-runtime";function Aa5(X,Y){if(!X||!qa5.has(X))return X;let G=lN0[Y]??lN0[lN0.length-1];return X==="#875f00"?G[0]:G[1]}function V16({status:X}){if(X==="pending")return TY(wa5,{label:""});return TY(RX,{color:"green",children:"\u2713"})}function j16({services:X,migrationsStatus:Y,home:G,serverUrl:Q,vibe:J}){let W=I16(cm0,dm0),Z=I16(rm0,am0);return sQ(qU,{flexDirection:"column",paddingBottom:1,children:[J?sQ(qU,{flexDirection:"column",children:[W.map(($,K)=>{let H=Z[K],U=$.reduce((N,z)=>N+z.text.length,0),B=Math.max(0,Pa5-U);return sQ(qU,{flexDirection:"row",children:[$.map((N,z)=>{let O=Aa5(N.color,K);return O?TY(RX,{color:O,children:N.text},z):TY(RX,{children:N.text},z)}),TY(RX,{children:" ".repeat(B+2)}),H?.map((N,z)=>N.color?TY(RX,{color:N.color,children:N.char},z):TY(RX,{children:N.char},z))]},K)}),sQ(RX,{dimColor:!0,children:[" v",uN0.version]})]}):sQ(qU,{flexDirection:"column",marginTop:1,children:[La5.map(($,K)=>TY(RX,{color:Ea5[K],children:$},K)),sQ(RX,{dimColor:!0,children:[" v",uN0.version]})]}),TY(qU,{marginBottom:1,children:TY(RX,{dimColor:!0,children:"\u2500".repeat(80)})}),TY(qU,{children:sQ(RX,{dimColor:!0,children:["Home: ",G]})}),sQ(qU,{gap:2,children:[X.map(($)=>sQ(qU,{gap:1,children:[sQ(RX,{children:[$.name," :",$.port||"...."]}),TY(V16,{status:$.status})]},$.name)),sQ(qU,{gap:1,children:[TY(RX,{children:"Migrations"}),TY(V16,{status:Y})]})]}),TY(qU,{children:Q?sQ(RX,{children:["Open in browser: ",TY(RX,{color:"cyan",children:Q})]}):TY(RX,{dimColor:!0,children:"Starting..."})}),sQ(qU,{gap:2,children:[sQ(RX,{dimColor:!0,children:[TY(RX,{bold:!0,dimColor:!0,children:"K"})," ","toggle config"]}),sQ(RX,{dimColor:!0,children:[TY(RX,{bold:!0,dimColor:!0,children:"L"})," ","toggle log flow"]}),sQ(RX,{dimColor:!0,children:[TY(RX,{bold:!0,dimColor:!0,children:"V"})," ","toggle vibe ",J?"\u266A Nihilore \xB7 CC BY 4.0":""]}),J&&sQ(RX,{dimColor:!0,children:[TY(RX,{bold:!0,dimColor:!0,children:"N"})," ","skip song"]})]})]})}var La5,Ea5,lN0,Pa5=30,qa5;var M16=w(()=>{T16();Vt1();Ct1();La5=[" \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 \u2588\u2588\u2588\u2588\u2588\u2588\u2588 ","\u2591\u2591\u2588\u2588\u2588\u2591\u2591\u2591\u2591\u2588\u2588\u2588 \u2591\u2591\u2588\u2588\u2588\u2591\u2591\u2591\u2591\u2591\u2588 \u2588\u2588\u2588\u2591\u2591\u2591\u2591\u2591\u2588\u2588\u2588 \u2588\u2588\u2588\u2591\u2591\u2591\u2591\u2591\u2588\u2588\u2588 "," \u2591\u2588\u2588\u2588 \u2591\u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588 \u2588 \u2591 \u2588\u2588\u2588 \u2591\u2591\u2591 \u2588\u2588\u2588 \u2591\u2591\u2588\u2588\u2588"," \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588\u2588\u2588\u2588 \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588"," \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588\u2591\u2591\u2588 \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588"," \u2591\u2588\u2588\u2588 \u2588\u2588\u2588 \u2591\u2588\u2588\u2588 \u2591 \u2588\u2591\u2591\u2588\u2588\u2588 \u2588\u2588\u2588\u2591\u2591\u2588\u2588\u2588 \u2588\u2588\u2588 "," \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 \u2591\u2591\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 \u2591\u2591\u2591\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2591 ","\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 \u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 \u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 \u2591\u2591\u2591\u2591\u2591\u2591\u2591 "],Ea5=["#00ff64","#00ee5e","#00dc56","#00c84e","#00b444","#00a03c","#008832","#006e28"],lN0=[["#00ff64","#00cc50"],["#00f060","#00c04c"],["#00e05c","#00b448"],["#00d058","#00a844"],["#00c054","#009c40"],["#00b050","#00903c"],["#00a04c","#008438"],["#009048","#007834"],["#008044","#006c30"],["#007040","#00602c"],["#00603c","#005428"]],qa5=new Set(["#875f00","#5f3800"])});import{useSyncExternalStore as Ta5}from"react";function Ia5(){let X=process.stdout.rows||24,Y=process.stdout.columns||80;if(X!==oA1.rows||Y!==oA1.columns)oA1={rows:X,columns:Y};return oA1}function Va5(X){return process.stdout.on("resize",X),()=>{process.stdout.off("resize",X)}}function R16(){return Ta5(Va5,Ia5)}var oA1;var S16=w(()=>{oA1={rows:process.stdout.rows||24,columns:process.stdout.columns||80}});import{Box as ja5,Text as yX1}from"ink";import{useSyncExternalStore as Ma5}from"react";import{jsx as mN0,jsxs as dN0}from"react/jsx-runtime";function Ra5(X){if(X>=500)return"red";if(X>=400)return"yellow";if(X>=300)return"cyan";return"green"}function k16({logs:X,headerHeight:Y}){let{rows:G}=R16(),{logFlow:Q}=Ma5(vX1,CX1),J=Math.max(1,G-Y-1),W=Q?X:X.slice(-J);return mN0(ja5,{flexDirection:"column",children:W.map((Z,$)=>{if(Z.rawLine)return mN0(yX1,{dimColor:!0,children:Z.rawLine},$);let K=Z.duration<1000?`${Z.duration}ms`:`${(Z.duration/1000).toFixed(1)}s`;return dN0(yX1,{children:[dN0(yX1,{dimColor:!0,children:[Z.method.padEnd(6)," ",Z.path.padEnd(30)," "]}),mN0(yX1,{color:Ra5(Z.status),children:Z.status}),dN0(yX1,{dimColor:!0,children:[" ",K.padStart(8)]})]},$)})})}var C16=w(()=>{Wz();S16()});var cN0={};T0(cN0,{App:()=>ba5});import{Box as Sa5,Text as ka5,useInput as Ca5}from"ink";import{useSyncExternalStore as va5}from"react";import{jsx as sA1,jsxs as ya5}from"react/jsx-runtime";function ba5({home:X}){let Y=va5(vX1,CX1);return Ca5((G)=>{if(G==="k"||G==="K")vN0();if(G==="l"||G==="L")_N0();if((G==="v"||G==="V")&&Y.dataDir)bt1(Y.dataDir),fN0();if((G==="n"||G==="N")&&Y.vibe)ft1()}),ya5(Sa5,{flexDirection:"column",children:[sA1(j16,{services:Y.services,migrationsStatus:Y.migrationsStatus,home:X,serverUrl:Y.serverUrl,vibe:Y.vibe}),Y.viewMode==="config"?Y.env?sA1(q16,{env:Y.env}):sA1(ka5,{dimColor:!0,children:"Loading configuration..."}):sA1(k16,{logs:Y.logs,headerHeight:Y.vibe?fa5:_a5})]})}var _a5=15,fa5=19;var iN0=w(()=>{A16();M16();C16();Wz();bd()});function v16(X,Y={}){return{PORT:String(X.port),NODE_ENV:X.nodeEnv,BASE_URL:X.baseUrl,DATA_DIR:X.dataDir,DECOCMS_HOME:X.dataDir,DATABASE_URL:X.databaseUrl,DATABASE_PG_SSL:String(X.databasePgSsl),DATABASE_POOL_MAX:String(X.databasePoolMax),NATS_URL:X.natsUrls.join(","),BETTER_AUTH_SECRET:X.betterAuthSecret,ENCRYPTION_KEY:X.encryptionKey,MESH_JWT_SECRET:X.meshJwtSecret,DECOCMS_LOCAL_MODE:String(X.localMode),DISABLE_RATE_LIMIT:String(X.disableRateLimit),STUDIO_PROVISION_SECRET_KEY:X.studioProvisionSecretKey,CONFIG_PATH:X.configPath,...Object.fromEntries(Object.entries(process.env).filter(([G])=>G.startsWith("AUTH_"))),DECO_AI_GATEWAY_ENABLED:String(X.aiGatewayEnabled),DECO_AI_GATEWAY_URL:X.aiGatewayUrl,ENABLE_DECO_IMPORT:String(X.enableDecoImport),S3_ENDPOINT:X.s3Endpoint,S3_BUCKET:X.s3Bucket,S3_REGION:X.s3Region,S3_ACCESS_KEY_ID:X.s3AccessKeyId,S3_SECRET_ACCESS_KEY:X.s3SecretAccessKey,S3_FORCE_PATH_STYLE:String(X.s3ForcePathStyle),OTEL_SERVICE_NAME:X.otelServiceName,CLICKHOUSE_URL:X.clickhouseUrl,OTEL_EXPORTER_OTLP_ENDPOINT:process.env.OTEL_EXPORTER_OTLP_ENDPOINT,OTEL_EXPORTER_OTLP_PROTOCOL:process.env.OTEL_EXPORTER_OTLP_PROTOCOL,OTEL_RESOURCE_ATTRIBUTES:process.env.OTEL_RESOURCE_ATTRIBUTES,DECO_SUPABASE_URL:X.decoSupabaseUrl,DECO_SUPABASE_SERVICE_KEY:X.decoSupabaseServiceKey,FIRECRAWL_API_KEY:X.firecrawlApiKey,STUDIO_SANDBOX_RUNNER:process.env.STUDIO_SANDBOX_RUNNER,STUDIO_SANDBOX_TEMPLATE_NAME:process.env.STUDIO_SANDBOX_TEMPLATE_NAME,STUDIO_ENV:process.env.STUDIO_ENV,STUDIO_SANDBOX_PREVIEW_URL_PATTERN:process.env.STUDIO_SANDBOX_PREVIEW_URL_PATTERN,STUDIO_SANDBOX_PREVIEW_GATEWAY_NAME:process.env.STUDIO_SANDBOX_PREVIEW_GATEWAY_NAME,STUDIO_SANDBOX_PREVIEW_GATEWAY_NAMESPACE:process.env.STUDIO_SANDBOX_PREVIEW_GATEWAY_NAMESPACE,STUDIO_SANDBOX_SENTINEL_TOKEN:process.env.STUDIO_SANDBOX_SENTINEL_TOKEN,KUBERNETES_SERVICE_HOST:process.env.KUBERNETES_SERVICE_HOST,KUBERNETES_SERVICE_PORT:process.env.KUBERNETES_SERVICE_PORT,FREESTYLE_API_KEY:process.env.FREESTYLE_API_KEY,BROWSERLESS_TOKEN:process.env.BROWSERLESS_TOKEN,NODE_EXTRA_CA_CERTS:process.env.NODE_EXTRA_CA_CERTS,DECO_CLI:"1",DECO_NO_TUI:"true",...Y}}var bj=k((ma5)=>{ma5.HttpAuthLocation=void 0;(function(X){X.HEADER="header",X.QUERY="query"})(ma5.HttpAuthLocation||(ma5.HttpAuthLocation={}));ma5.HttpApiKeyAuthLocation=void 0;(function(X){X.HEADER="header",X.QUERY="query"})(ma5.HttpApiKeyAuthLocation||(ma5.HttpApiKeyAuthLocation={}));ma5.EndpointURLScheme=void 0;(function(X){X.HTTP="http",X.HTTPS="https"})(ma5.EndpointURLScheme||(ma5.EndpointURLScheme={}));ma5.AlgorithmId=void 0;(function(X){X.MD5="md5",X.CRC32="crc32",X.CRC32C="crc32c",X.SHA1="sha1",X.SHA256="sha256"})(ma5.AlgorithmId||(ma5.AlgorithmId={}));var xa5=(X)=>{let Y=[];if(X.sha256!==void 0)Y.push({algorithmId:()=>ma5.AlgorithmId.SHA256,checksumConstructor:()=>X.sha256});if(X.md5!=null)Y.push({algorithmId:()=>ma5.AlgorithmId.MD5,checksumConstructor:()=>X.md5});return{addChecksumAlgorithm(G){Y.push(G)},checksumAlgorithms(){return Y}}},ha5=(X)=>{let Y={};return X.checksumAlgorithms().forEach((G)=>{Y[G.algorithmId()]=G.checksumConstructor()}),Y},ga5=(X)=>{return xa5(X)},ua5=(X)=>{return ha5(X)};ma5.FieldPosition=void 0;(function(X){X[X.HEADER=0]="HEADER",X[X.TRAILER=1]="TRAILER"})(ma5.FieldPosition||(ma5.FieldPosition={}));var la5="__smithy_context";ma5.IniSectionType=void 0;(function(X){X.PROFILE="profile",X.SSO_SESSION="sso-session",X.SERVICES="services"})(ma5.IniSectionType||(ma5.IniSectionType={}));ma5.RequestHandlerProtocol=void 0;(function(X){X.HTTP_0_9="http/0.9",X.HTTP_1_0="http/1.0",X.TDS_8_0="tds/8.0"})(ma5.RequestHandlerProtocol||(ma5.RequestHandlerProtocol={}));ma5.SMITHY_CONTEXT_KEY=la5;ma5.getDefaultClientConfiguration=ga5;ma5.resolveDefaultRuntimeConfig=ua5});var u7=k((oa5)=>{var pa5=bj(),na5=(X)=>{return{setHttpHandler(Y){X.httpHandler=Y},httpHandler(){return X.httpHandler},updateHttpClientConfig(Y,G){X.httpHandler?.updateHttpClientConfig(Y,G)},httpHandlerConfigs(){return X.httpHandler.httpHandlerConfigs()}}},ta5=(X)=>{return{httpHandler:X.httpHandler()}};class _16{name;kind;values;constructor({name:X,kind:Y=pa5.FieldPosition.HEADER,values:G=[]}){this.name=X,this.kind=Y,this.values=G}add(X){this.values.push(X)}set(X){this.values=X}remove(X){this.values=this.values.filter((Y)=>Y!==X)}toString(){return this.values.map((X)=>X.includes(",")||X.includes(" ")?`"${X}"`:X).join(", ")}get(){return this.values}}class f16{entries={};encoding;constructor({fields:X=[],encoding:Y="utf-8"}){X.forEach(this.setField.bind(this)),this.encoding=Y}setField(X){this.entries[X.name.toLowerCase()]=X}getField(X){return this.entries[X.toLowerCase()]}removeField(X){delete this.entries[X.toLowerCase()]}getByType(X){return Object.values(this.entries).filter((Y)=>Y.kind===X)}}class eA1{method;protocol;hostname;port;path;query;headers;username;password;fragment;body;constructor(X){this.method=X.method||"GET",this.hostname=X.hostname||"localhost",this.port=X.port,this.query=X.query||{},this.headers=X.headers||{},this.body=X.body,this.protocol=X.protocol?X.protocol.slice(-1)!==":"?`${X.protocol}:`:X.protocol:"https:",this.path=X.path?X.path.charAt(0)!=="/"?`/${X.path}`:X.path:"/",this.username=X.username,this.password=X.password,this.fragment=X.fragment}static clone(X){let Y=new eA1({...X,headers:{...X.headers}});if(Y.query)Y.query=aa5(Y.query);return Y}static isInstance(X){if(!X)return!1;let Y=X;return"method"in Y&&"protocol"in Y&&"hostname"in Y&&"path"in Y&&typeof Y.query==="object"&&typeof Y.headers==="object"}clone(){return eA1.clone(this)}}function aa5(X){return Object.keys(X).reduce((Y,G)=>{let Q=X[G];return{...Y,[G]:Array.isArray(Q)?[...Q]:Q}},{})}class b16{statusCode;reason;headers;body;constructor(X){this.statusCode=X.statusCode,this.reason=X.reason,this.headers=X.headers||{},this.body=X.body}static isInstance(X){if(!X)return!1;let Y=X;return typeof Y.statusCode==="number"&&typeof Y.headers==="object"}}function ra5(X){return/^[a-z0-9][a-z0-9\.\-]*[a-z0-9]$/.test(X)}oa5.Field=_16;oa5.Fields=f16;oa5.HttpRequest=eA1;oa5.HttpResponse=b16;oa5.getHttpHandlerExtensionConfiguration=na5;oa5.isValidHostname=ra5;oa5.resolveHttpHandlerRuntimeConfig=ta5});function Zr5(X){return(Y)=>async(G)=>{let{request:Q}=G;if(X.expectContinueHeader!==!1&&y16.HttpRequest.isInstance(Q)&&Q.body&&X.runtime==="node"&&X.requestHandler?.constructor?.name!=="FetchHttpHandler"){let J=!0;if(typeof X.expectContinueHeader==="number")try{J=(Number(Q.headers?.["content-length"])??X.bodyLengthChecker?.(Q.body)??1/0)>=X.expectContinueHeader}catch(W){}else J=!!X.expectContinueHeader;if(J)Q.headers.Expect="100-continue"}return Y({...G,request:Q})}}var y16,Wr5,x16=(X)=>({applyToStack:(Y)=>{Y.add(Zr5(X),Wr5)}});var h16=w(()=>{y16=X1(u7(),1);Wr5={step:"build",tags:["SET_EXPECT_HEADER","EXPECT_HEADER"],name:"addExpectContinueMiddleware",override:!0}});var wH,XT1,yj,YT1,E9,g16,hX1;var LH=w(()=>{wH={WHEN_SUPPORTED:"WHEN_SUPPORTED",WHEN_REQUIRED:"WHEN_REQUIRED"},XT1=wH.WHEN_SUPPORTED,yj={WHEN_SUPPORTED:"WHEN_SUPPORTED",WHEN_REQUIRED:"WHEN_REQUIRED"},YT1=wH.WHEN_SUPPORTED;(function(X){X.MD5="MD5",X.CRC32="CRC32",X.CRC32C="CRC32C",X.CRC64NVME="CRC64NVME",X.SHA1="SHA1",X.SHA256="SHA256"})(E9||(E9={}));(function(X){X.HEADER="header",X.TRAILER="trailer"})(g16||(g16={}));hX1=E9.CRC32});var kq,Qa=(X,Y,G,Q)=>{if(!(Y in X))return;let J=X[Y].toUpperCase();if(!Object.values(G).includes(J))throw TypeError(`Cannot load ${Q} '${Y}'. Expected one of ${Object.values(G)}, got '${X[Y]}'.`);return J};var sN0=w(()=>{(function(X){X.ENV="env",X.CONFIG="shared config entry"})(kq||(kq={}))});var $r5="AWS_REQUEST_CHECKSUM_CALCULATION",Kr5="request_checksum_calculation",u16;var l16=w(()=>{LH();sN0();u16={environmentVariableSelector:(X)=>Qa(X,$r5,wH,kq.ENV),configFileSelector:(X)=>Qa(X,Kr5,wH,kq.CONFIG),default:XT1}});var Hr5="AWS_RESPONSE_CHECKSUM_VALIDATION",Fr5="response_checksum_validation",m16;var d16=w(()=>{LH();sN0();m16={environmentVariableSelector:(X)=>Qa(X,Hr5,yj,kq.ENV),configFileSelector:(X)=>Qa(X,Fr5,yj,kq.CONFIG),default:YT1}});var Xz0=k((Pr5)=>{var Ur5=["AuthFailure","InvalidSignatureException","RequestExpired","RequestInTheFuture","RequestTimeTooSkewed","SignatureDoesNotMatch"],Br5=["BandwidthLimitExceeded","EC2ThrottledException","LimitExceededException","PriorRequestNotComplete","ProvisionedThroughputExceededException","RequestLimitExceeded","RequestThrottled","RequestThrottledException","SlowDown","ThrottledException","Throttling","ThrottlingException","TooManyRequestsException","TransactionInProgressException"],Nr5=["TimeoutError","RequestTimeout","RequestTimeoutException"],zr5=[500,502,503,504],Or5=["ECONNRESET","ECONNREFUSED","EPIPE","ETIMEDOUT"],Dr5=["EHOSTUNREACH","ENETUNREACH","ENOTFOUND"],c16=(X)=>X?.$retryable!==void 0,wr5=(X)=>Ur5.includes(X.name),i16=(X)=>X.$metadata?.clockSkewCorrected,p16=(X)=>{let Y=new Set(["Failed to fetch","NetworkError when attempting to fetch resource","The Internet connection appears to be offline","Load failed","Network request failed"]);if(!(X&&X instanceof TypeError))return!1;return Y.has(X.message)},Lr5=(X)=>X.$metadata?.httpStatusCode===429||Br5.includes(X.name)||X.$retryable?.throttling==!0,eN0=(X,Y=0)=>c16(X)||i16(X)||X.name==="InvalidSignatureException"&&X.message?.includes("Signature expired")||Nr5.includes(X.name)||Or5.includes(X?.code||"")||Dr5.includes(X?.code||"")||zr5.includes(X.$metadata?.httpStatusCode||0)||p16(X)||n16(X)||X.cause!==void 0&&Y<=10&&eN0(X.cause,Y+1),Er5=(X)=>{if(X.$metadata?.httpStatusCode!==void 0){let Y=X.$metadata.httpStatusCode;if(500<=Y&&Y<=599&&!eN0(X))return!0;return!1}return!1};function n16(X){return X.code==="ERR_HTTP2_STREAM_ERROR"&&X.message.includes("NGHTTP2_REFUSED_STREAM")}Pr5.isBrowserNetworkError=p16;Pr5.isClockSkewCorrectedError=i16;Pr5.isClockSkewError=wr5;Pr5.isNodeJsHttp2TransientError=n16;Pr5.isRetryableByTrait=c16;Pr5.isServerError=Er5;Pr5.isThrottlingError=Lr5;Pr5.isTransientError=eN0});var Dw=k((xr5)=>{var Sr5=Xz0();xr5.RETRY_MODES=void 0;(function(X){X.STANDARD="standard",X.ADAPTIVE="adaptive"})(xr5.RETRY_MODES||(xr5.RETRY_MODES={}));var QT1=3,kr5=xr5.RETRY_MODES.STANDARD;class JT1{static setTimeoutFn=setTimeout;beta;minCapacity;minFillRate;scaleConstant;smooth;enabled=!1;availableTokens=0;lastMaxRate=0;measuredTxRate=0;requestCount=0;fillRate;lastThrottleTime;lastTimestamp=0;lastTxRateBucket;maxCapacity;timeWindow=0;constructor(X){this.beta=X?.beta??0.7,this.minCapacity=X?.minCapacity??1,this.minFillRate=X?.minFillRate??0.5,this.scaleConstant=X?.scaleConstant??0.4,this.smooth=X?.smooth??0.8,this.lastThrottleTime=this.getCurrentTimeInSeconds(),this.lastTxRateBucket=Math.floor(this.getCurrentTimeInSeconds()),this.fillRate=this.minFillRate,this.maxCapacity=this.minCapacity}async getSendToken(){return this.acquireTokenBucket(1)}updateClientSendingRate(X){let Y;this.updateMeasuredRate();let G=X;if(G?.errorType==="THROTTLING"||Sr5.isThrottlingError(G?.error??X)){let W=!this.enabled?this.measuredTxRate:Math.min(this.measuredTxRate,this.fillRate);this.lastMaxRate=W,this.calculateTimeWindow(),this.lastThrottleTime=this.getCurrentTimeInSeconds(),Y=this.cubicThrottle(W),this.enableTokenBucket()}else this.calculateTimeWindow(),Y=this.cubicSuccess(this.getCurrentTimeInSeconds());let J=Math.min(Y,2*this.measuredTxRate);this.updateTokenBucketRate(J)}getCurrentTimeInSeconds(){return Date.now()/1000}async acquireTokenBucket(X){if(!this.enabled)return;if(this.refillTokenBucket(),X>this.availableTokens){let Y=(X-this.availableTokens)/this.fillRate*1000;await new Promise((G)=>JT1.setTimeoutFn(G,Y))}this.availableTokens=this.availableTokens-X}refillTokenBucket(){let X=this.getCurrentTimeInSeconds();if(!this.lastTimestamp){this.lastTimestamp=X;return}let Y=(X-this.lastTimestamp)*this.fillRate;this.availableTokens=Math.min(this.maxCapacity,this.availableTokens+Y),this.lastTimestamp=X}calculateTimeWindow(){this.timeWindow=this.getPrecise(Math.pow(this.lastMaxRate*(1-this.beta)/this.scaleConstant,0.3333333333333333))}cubicThrottle(X){return this.getPrecise(X*this.beta)}cubicSuccess(X){return this.getPrecise(this.scaleConstant*Math.pow(X-this.lastThrottleTime-this.timeWindow,3)+this.lastMaxRate)}enableTokenBucket(){this.enabled=!0}updateTokenBucketRate(X){this.refillTokenBucket(),this.fillRate=Math.max(X,this.minFillRate),this.maxCapacity=Math.max(X,this.minCapacity),this.availableTokens=Math.min(this.availableTokens,this.maxCapacity)}updateMeasuredRate(){let X=this.getCurrentTimeInSeconds(),Y=Math.floor(X*2)/2;if(this.requestCount++,Y>this.lastTxRateBucket){let G=this.requestCount/(Y-this.lastTxRateBucket);this.measuredTxRate=this.getPrecise(G*this.smooth+this.measuredTxRate*(1-this.smooth)),this.requestCount=0,this.lastTxRateBucket=Y}}getPrecise(X){return parseFloat(X.toFixed(8))}}var Cr5=100,Qz0=20000,vr5=500,Yz0=500,_r5=5,fr5=10,t16=1,br5="amz-sdk-invocation-id",yr5="amz-sdk-request";class eQ{static v2026=typeof process<"u"&&process.env?.SMITHY_NEW_RETRIES_2026==="true";static delay(){return eQ.v2026?50:100}static throttlingDelay(){return eQ.v2026?1000:500}static cost(){return eQ.v2026?14:5}static throttlingCost(){return eQ.v2026?5:10}static modifiedCostType(){return eQ.v2026?"THROTTLING":"TRANSIENT"}}class a16{x=eQ.delay();computeNextBackoffDelay(X){let Y=Math.random(),G=2,Q=Y*Math.min(this.x*2**X,Qz0);return Math.floor(Q)}setDelayBase(X){this.x=X}}class Gz0{delay;count;cost;longPoll;constructor(X,Y,G,Q){this.delay=X,this.count=Y,this.cost=G,this.longPoll=Q}getRetryCount(){return this.count}getRetryDelay(){return Math.min(Qz0,this.delay)}getRetryCost(){return this.cost}isLongPoll(){return this.longPoll}}var GT1={incompatible:1,attempts:2,capacity:3};class gX1{mode=xr5.RETRY_MODES.STANDARD;capacity=Yz0;retryBackoffStrategy;maxAttemptsProvider;baseDelay;constructor(X){if(typeof X==="number")this.maxAttemptsProvider=async()=>X;else if(typeof X==="function")this.maxAttemptsProvider=X;else if(X&&typeof X==="object")this.maxAttemptsProvider=async()=>X.maxAttempts,this.baseDelay=X.baseDelay,this.retryBackoffStrategy=X.backoff;this.maxAttemptsProvider??=async()=>QT1,this.baseDelay??=eQ.delay(),this.retryBackoffStrategy??=new a16}async acquireInitialRetryToken(X){return new Gz0(eQ.delay(),0,void 0,eQ.v2026&&X.includes(":longpoll"))}async refreshRetryTokenForRetry(X,Y){let G=await this.getMaxAttempts(),Q=this.retryCode(X,Y,G),J=Q===0,W=X.isLongPoll?.();if(J||W){let Z=Y.errorType;this.retryBackoffStrategy.setDelayBase(Z==="THROTTLING"?eQ.throttlingDelay():this.baseDelay);let $=this.retryBackoffStrategy.computeNextBackoffDelay(X.getRetryCount()),K=$;if(Y.retryAfterHint instanceof Date)K=Math.max($,Math.min(Y.retryAfterHint.getTime()-Date.now(),$+5000));if(!J)throw Object.assign(Error("No retry token available"),{$backoff:eQ.v2026&&Q===GT1.capacity&&W?K:0});else{let H=this.getCapacityCost(Z);return this.capacity-=H,new Gz0(K,X.getRetryCount()+1,H,X.isLongPoll?.()??!1)}}throw Error("No retry token available")}recordSuccess(X){this.capacity=Math.min(Yz0,this.capacity+(X.getRetryCost()??t16))}getCapacity(){return this.capacity}async maxAttempts(){return this.maxAttemptsProvider()}async getMaxAttempts(){try{return await this.maxAttemptsProvider()}catch(X){return console.warn(`Max attempts provider could not resolve. Using default of ${QT1}`),QT1}}retryCode(X,Y,G){let Q=X.getRetryCount()+1,J=this.isRetryableError(Y.errorType)?0:GT1.incompatible,W=Q<G?0:GT1.attempts,Z=this.capacity>=this.getCapacityCost(Y.errorType)?0:GT1.capacity;return J||W||Z}getCapacityCost(X){return X===eQ.modifiedCostType()?eQ.throttlingCost():eQ.cost()}isRetryableError(X){return X==="THROTTLING"||X==="TRANSIENT"}}class r16{mode=xr5.RETRY_MODES.ADAPTIVE;rateLimiter;standardRetryStrategy;constructor(X,Y){let{rateLimiter:G}=Y??{};this.rateLimiter=G??new JT1,this.standardRetryStrategy=Y?new gX1({maxAttempts:typeof X==="number"?X:3,...Y}):new gX1(X)}async acquireInitialRetryToken(X){return await this.rateLimiter.getSendToken(),this.standardRetryStrategy.acquireInitialRetryToken(X)}async refreshRetryTokenForRetry(X,Y){return this.rateLimiter.updateClientSendingRate(Y),this.standardRetryStrategy.refreshRetryTokenForRetry(X,Y)}recordSuccess(X){this.rateLimiter.updateClientSendingRate({}),this.standardRetryStrategy.recordSuccess(X)}async maxAttemptsProvider(){return this.standardRetryStrategy.maxAttempts()}}class o16 extends gX1{computeNextBackoffDelay;constructor(X,Y=eQ.delay()){super(typeof X==="function"?X:async()=>X);if(typeof Y==="number")this.computeNextBackoffDelay=()=>Y;else this.computeNextBackoffDelay=Y}async refreshRetryTokenForRetry(X,Y){let G=await super.refreshRetryTokenForRetry(X,Y);return G.getRetryDelay=()=>this.computeNextBackoffDelay(G.getRetryCount()),G}}xr5.AdaptiveRetryStrategy=r16;xr5.ConfiguredRetryStrategy=o16;xr5.DEFAULT_MAX_ATTEMPTS=QT1;xr5.DEFAULT_RETRY_DELAY_BASE=Cr5;xr5.DEFAULT_RETRY_MODE=kr5;xr5.DefaultRateLimiter=JT1;xr5.INITIAL_RETRY_TOKENS=Yz0;xr5.INVOCATION_ID_HEADER=br5;xr5.MAXIMUM_RETRY_DELAY=Qz0;xr5.NO_RETRY_INCREMENT=t16;xr5.REQUEST_HEADER=yr5;xr5.RETRY_COST=_r5;xr5.Retry=eQ;xr5.StandardRetryStrategy=gX1;xr5.THROTTLING_RETRY_DELAY_BASE=vr5;xr5.TIMEOUT_RETRY_COST=fr5});var WX=k((Ko5)=>{var Xo5=Dw(),Jz0={warningEmitted:!1},Yo5=(X)=>{if(X&&!Jz0.warningEmitted&&parseInt(X.substring(1,X.indexOf(".")))<20)Jz0.warningEmitted=!0,process.emitWarning(`NodeDeprecationWarning: The AWS SDK for JavaScript (v3) will
|
|
1646
|
+
`);Q=W.pop()??"";for(let Z of W){let $=w16(Z).replace(/^\[\d+\]\s*/,"").trim();if(!$)continue;Zz({method:"",path:"",status:0,duration:0,timestamp:new Date,rawLine:$})}}(async()=>{for(;;){let{done:W,value:Z}=await Y.read();if(W)break;Q+=G.decode(Z,{stream:!0}),J()}if(Q.trim()){let W=w16(Q).replace(/^\[\d+\]\s*/,"").trim();if(W)Zz({method:"",path:"",status:0,duration:0,timestamp:new Date,rawLine:W})}})()}async function Ua5(X){let{vitePort:Y,baseUrl:G,noTui:Q}=X,J=await aA1(Number(X.port)),{settings:W,services:Z,managedServiceNames:$}=await iA1({port:String(J),home:X.home,baseUrl:X.baseUrl,localMode:X.localMode,skipMigrations:X.skipMigrations,noTui:X.noTui,vitePort:X.vitePort});for(let z of Z)Ga({name:z.name,status:"ready",port:z.port});bX1(W),_X1();let K=Fa5(import.meta.dir,"..","..","..","..",".."),H=Q===!0,U=Bun.spawn(["bun","run","--cwd=apps/mesh","dev:servers"],{cwd:K,env:{...process.env,PORT:String(W.port),VITE_PORT:String(Y),DATABASE_URL:W.databaseUrl,NATS_URL:W.natsUrls.join(","),NODE_ENV:W.nodeEnv,DECOCMS_LOCAL_MODE:String(W.localMode),DECOCMS_HOME:W.dataDir,DATA_DIR:W.dataDir,DECO_CLI:"1",...W.baseUrl?{BASE_URL:W.baseUrl}:{}},stdio:["inherit",H?"inherit":"pipe",H?"inherit":"pipe"]});if(!H)L16(U.stdout),L16(U.stderr);let B=G||`http://localhost:${W.port}`;fX1(B),Ga({name:"Vite",status:"ready",port:Number(Y)});let N=async(z)=>{if(U.kill(z),$.length>0){let{stopServices:O}=await Promise.resolve().then(() => (l$1(),u$1));await O(W.dataDir)}};return process.on("SIGINT",()=>N("SIGINT")),process.on("SIGTERM",()=>N("SIGTERM")),{port:Number(W.port),process:U}}var xN0=w(()=>{kN0();Wz();bN0()});import{Box as hN0,Text as gN0}from"ink";import{jsx as P16,jsxs as rA1}from"react/jsx-runtime";function E16(X){if(!X)return"not set";try{let Y=new URL(X);if(Y.password)Y.password="***";if(Y.username&&Y.username.length>3)Y.username=Y.username.slice(0,3)+"***";return Y.pathname="/",Y.search="",Y.hash="",Y.toString()}catch{if(X.length<=10)return X;return X.slice(0,6)+"***"+X.slice(-4)}}function za5(X,Y){if(Ba5.has(X))return Y?{text:"\u25CF\u25CF\u25CF\u25CF\u25CF\u25CF",dimColor:!0}:{text:"not set",dimColor:!0};if(Na5.has(X)){if(Array.isArray(Y)){if(Y.length===0)return{text:"not set",dimColor:!0};return{text:Y.map((W)=>E16(W)).join(", "),color:"cyan"}}let Q=E16(Y);return Q==="not set"?{text:Q,dimColor:!0}:{text:Q,color:"cyan"}}if(Y===void 0||Y===null||Y==="")return{text:"not set",dimColor:!0};let G=String(Y);if(G==="true")return{text:G,color:"green"};if(G==="false")return{text:G,color:"yellow"};try{return new URL(G),{text:G,color:"cyan"}}catch{return{text:G}}}function Oa5(X){return[{title:"Core",entries:[{key:"NODE_ENV",value:X.nodeEnv},{key:"PORT",value:X.port},{key:"BASE_URL",value:X.baseUrl??`http://localhost:${X.port}`},{key:"DATA_DIR",value:X.dataDir}]},{title:"Database",entries:[{key:"DATABASE_URL",value:X.databaseUrl},{key:"DATABASE_PG_SSL",value:X.databasePgSsl}]},{title:"Auth & Secrets",entries:[{key:"BETTER_AUTH_SECRET",value:X.betterAuthSecret},{key:"ENCRYPTION_KEY",value:X.encryptionKey},{key:"MESH_JWT_SECRET",value:X.meshJwtSecret},{key:"STUDIO_PROVISION_SECRET_KEY",value:X.studioProvisionSecretKey},{key:"DISABLE_RATE_LIMIT",value:X.disableRateLimit}]},{title:"Auth Providers",entries:[{key:"AUTH_EMAIL_PASSWORD_ENABLED",value:process.env.AUTH_EMAIL_PASSWORD_ENABLED??"true"},{key:"AUTH_GOOGLE_CLIENT_ID",value:!!process.env.AUTH_GOOGLE_CLIENT_ID},{key:"AUTH_GITHUB_CLIENT_ID",value:!!process.env.AUTH_GITHUB_CLIENT_ID},{key:"AUTH_RESEND_API_KEY",value:!!process.env.AUTH_RESEND_API_KEY},{key:"AUTH_SENDGRID_API_KEY",value:!!process.env.AUTH_SENDGRID_API_KEY},{key:"AUTH_SSO_MS_CLIENT_ID",value:!!process.env.AUTH_SSO_MS_CLIENT_ID},{key:"AUTH_MAGIC_LINK_ENABLED",value:process.env.AUTH_MAGIC_LINK_ENABLED==="true"},{key:"AUTH_EMAIL_OTP_ENABLED",value:process.env.AUTH_EMAIL_OTP_ENABLED==="true"}]},{title:"Observability",entries:[{key:"CLICKHOUSE_URL",value:X.clickhouseUrl},{key:"OTEL_SERVICE_NAME",value:X.otelServiceName}]},{title:"Event Bus & Networking",entries:[{key:"NATS_URL",value:X.natsUrls}]},{title:"Config Files",entries:[{key:"CONFIG_PATH",value:X.configPath}]},{title:"AI Gateway",entries:[{key:"DECO_AI_GATEWAY_ENABLED",value:X.aiGatewayEnabled},{key:"DECO_AI_GATEWAY_URL",value:X.aiGatewayUrl}]}]}function q16({env:X}){let Y=Oa5(X);return P16(hN0,{flexDirection:"column",children:Y.map((G)=>rA1(hN0,{flexDirection:"column",marginTop:1,children:[rA1(gN0,{dimColor:!0,children:[" ","\u2500\u2500 ",G.title," ","\u2500".repeat(Math.max(0,38-G.title.length))]}),G.entries.map(({key:Q,value:J})=>{let W=za5(Q,J);return rA1(hN0,{children:[rA1(gN0,{dimColor:!0,children:[" ",Q.padEnd(36)]}),P16(gN0,{color:W.color,dimColor:W.dimColor,children:W.text})]},Q)})]},G.title))})}var Ba5,Na5;var A16=w(()=>{Ba5=new Set(["BETTER_AUTH_SECRET","ENCRYPTION_KEY","MESH_JWT_SECRET","STUDIO_PROVISION_SECRET_KEY"]),Na5=new Set(["DATABASE_URL","CLICKHOUSE_URL","NATS_URL"])});var uN0;var T16=w(()=>{uN0={name:"decocms",version:"2.306.2",description:"Deco CMS \u2014 Self-hostable MCP Gateway for managing AI connections and tools",author:"Deco team",repository:{type:"git",url:"git+https://github.com/decocms/studio.git",directory:"apps/mesh"},bugs:{url:"https://github.com/decocms/studio/issues"},type:"module",bin:{deco:"./dist/server/cli.js"},files:["dist/**/*"],scripts:{dev:'bun run migrate && concurrently "bun run dev:client" "bun run dev:server"',"dev:servers":'concurrently "bun run dev:client" "bun run dev:server"',"dev:client":"bun --bun vite dev","dev:server":"bun run --cwd=../../packages/sandbox build && NODE_ENV=development bun --env-file=.env --hot run src/index.ts","build:client":"bun --bun vite build","build:server":"bun run scripts/bundle-server-script.ts --dist ./dist/server","db:migrate":"bun run ./dist/server/migrate.js",check:"tsc --noEmit",start:"bun run ./dist/server/server.js",migrate:"bun run src/database/migrate.ts",test:"bun test","test:e2e":"playwright test","test:e2e:ui":"playwright test --ui","better-auth:migrate":"bunx --bun @better-auth/cli migrate -y --config src/auth/index.ts",prepublishOnly:"bun run build:client && bun run build:server"},optionalDependencies:{"@duckdb/node-api":"^1.5.0-r.1","@freestyle-sh/with-bun":"^0.2.12","@freestyle-sh/with-deno":"^0.0.4","@freestyle-sh/with-nodejs":"^0.2.9","freestyle-sandboxes":"^0.1.46"},dependencies:{"@ai-sdk/anthropic":"^3.0.58","@ai-sdk/google":"^3.0.60","@ai-sdk/openai":"^3.0.50","@anthropic-ai/sdk":"^0.79.0","@aws-sdk/client-s3":"^3.1013.0","@aws-sdk/s3-request-presigner":"^3.1013.0","@clickhouse/client":"^1.8.1","@deco-cx/warp-node":"^0.3.20","@dnd-kit/core":"^6.3.1","@dnd-kit/sortable":"^10.0.0","@dnd-kit/utilities":"^3.2.2","@inkjs/ui":"^2.0.0","@modelcontextprotocol/ext-apps":"^1.2.2","@openrouter/ai-sdk-provider":"^2.2.5","@opentelemetry/core":"^2.6.0","@tanstack/react-virtual":"^3.13.21","@xterm/addon-fit":"^0.11.0","@xterm/xterm":"^6.0.0","ai-sdk-provider-claude-code":"^3.4.4","ai-sdk-provider-codex-cli":"^1.1.0","embedded-postgres":"^18.3.0-beta.16",ink:"^6.8.0",kysely:"^0.28.12",nats:"^2.29.3","node-pty":"^1.0.0","posthog-js":"^1.371.1","posthog-node":"^5.0.0",react:"^19.2.0","react-dom":"^19.2.0"},devDependencies:{"@ai-sdk/provider":"^3.0.8","@ai-sdk/react":"^3.0.118","@anthropic-ai/claude-agent-sdk":"^0.2.80","@better-auth/sso":"1.4.1","@daveyplate/better-auth-ui":"^3.2.7","@deco/ui":"workspace:*","@decocms/better-auth":"1.5.17","@decocms/bindings":"workspace:*","@decocms/mcp-utils":"workspace:*","@decocms/mesh-sdk":"workspace:*","@decocms/runtime":"workspace:*","@decocms/vite-plugin":"workspace:*","@electric-sql/pglite":"^0.3.15","@floating-ui/react":"^0.27.16","@hookform/resolvers":"^5.2.2","@jitl/quickjs-wasmfile-release-sync":"0.31.0","@modelcontextprotocol/sdk":"1.27.1","@monaco-editor/react":"^4.7.0","@opentelemetry/api":"^1.9.0","@opentelemetry/api-logs":"^0.211.0","@opentelemetry/exporter-logs-otlp-proto":"^0.211.0","@opentelemetry/exporter-prometheus":"^0.208.0","@opentelemetry/exporter-trace-otlp-proto":"^0.207.0","@opentelemetry/instrumentation-runtime-node":"^0.24.0","@opentelemetry/sdk-logs":"^0.211.0","@opentelemetry/sdk-metrics":"^2.2.0","@opentelemetry/sdk-node":"^0.207.0","@opentelemetry/sdk-trace-base":"^2.5.0","@playwright/test":"^1.58.2","@radix-ui/react-avatar":"^1.1.10","@radix-ui/react-checkbox":"^1.3.3","@radix-ui/react-dialog":"^1.1.15","@radix-ui/react-dropdown-menu":"^2.1.16","@radix-ui/react-label":"^2.1.7","@radix-ui/react-select":"^2.2.6","@radix-ui/react-separator":"^1.1.7","@radix-ui/react-slot":"^1.2.3","@radix-ui/react-tabs":"^1.1.13","@rjsf/core":"^6.1.2","@rjsf/shadcn":"^6.1.2","@rjsf/utils":"^6.1.2","@rjsf/validator-ajv8":"^6.1.2","@tailwindcss/vite":"^4.1.17","@tanstack/react-query":"5.90.11","@tanstack/react-router":"^1.139.7","@tiptap/core":"3.20.2","@tiptap/extension-mention":"3.20.2","@tiptap/extension-placeholder":"3.20.2","@tiptap/pm":"3.20.2","@tiptap/react":"3.20.2","@tiptap/starter-kit":"3.20.2","@tiptap/suggestion":"3.20.2","@types/bun":"^1.3.1","@types/pg":"^8.15.6","@types/react-syntax-highlighter":"^15.5.13","@untitledui/icons":"^0.0.19","@vercel/nft":"^1.1.1","@vitejs/plugin-react":"^5.1.0",ai:"^6.0.116","babel-plugin-react-compiler":"^1.0.0","better-auth":"1.4.5","class-variance-authority":"^0.7.1",clsx:"^2.1.1",concurrently:"^9.2.1",croner:"^9.1.0","date-fns":"^4.1.0",degit:"^2.8.4",hono:"^4.10.7","input-otp":"^1.4.2",jose:"^6.0.11","kysely-pglite":"^0.6.1","lucide-react":"^0.468.0",marked:"^15.0.6","@decocms/sandbox":"workspace:*","mesh-plugin-workflows":"workspace:*",nanoid:"^5.1.6",pg:"^8.16.3",prettier:"^3.4.2","react-hook-form":"^7.66.0","react-markdown":"^10.1.0","react-resizable-panels":"^2.1.7","react-syntax-highlighter":"^15.6.1",recharts:"^3.6.0","rehype-raw":"^7.0.0","remark-gfm":"^4.0.0","sass-embedded":"^1.97.2",sonner:"^2.0.7","tailwind-merge":"^3.3.1",tailwindcss:"^4.1.17",typescript:"^5.9.3",vite:"^7.2.1","vite-tsconfig-paths":"^5.1.4",zod:"^4.0.0",zustand:"^5.0.9"},homepage:"https://github.com/decocms/studio",keywords:["mcp","model-context-protocol","ai","gateway","self-hosted","mesh","tools"],license:"MIT",publishConfig:{access:"public"}}});import{Box as qU,Text as RX}from"ink";import{Spinner as wa5}from"@inkjs/ui";import{useSyncExternalStore as I16}from"react";import{jsx as TY,jsxs as sQ}from"react/jsx-runtime";function Aa5(X,Y){if(!X||!qa5.has(X))return X;let G=lN0[Y]??lN0[lN0.length-1];return X==="#875f00"?G[0]:G[1]}function V16({status:X}){if(X==="pending")return TY(wa5,{label:""});return TY(RX,{color:"green",children:"\u2713"})}function j16({services:X,migrationsStatus:Y,home:G,serverUrl:Q,vibe:J}){let W=I16(cm0,dm0),Z=I16(rm0,am0);return sQ(qU,{flexDirection:"column",paddingBottom:1,children:[J?sQ(qU,{flexDirection:"column",children:[W.map(($,K)=>{let H=Z[K],U=$.reduce((N,z)=>N+z.text.length,0),B=Math.max(0,Pa5-U);return sQ(qU,{flexDirection:"row",children:[$.map((N,z)=>{let O=Aa5(N.color,K);return O?TY(RX,{color:O,children:N.text},z):TY(RX,{children:N.text},z)}),TY(RX,{children:" ".repeat(B+2)}),H?.map((N,z)=>N.color?TY(RX,{color:N.color,children:N.char},z):TY(RX,{children:N.char},z))]},K)}),sQ(RX,{dimColor:!0,children:[" v",uN0.version]})]}):sQ(qU,{flexDirection:"column",marginTop:1,children:[La5.map(($,K)=>TY(RX,{color:Ea5[K],children:$},K)),sQ(RX,{dimColor:!0,children:[" v",uN0.version]})]}),TY(qU,{marginBottom:1,children:TY(RX,{dimColor:!0,children:"\u2500".repeat(80)})}),TY(qU,{children:sQ(RX,{dimColor:!0,children:["Home: ",G]})}),sQ(qU,{gap:2,children:[X.map(($)=>sQ(qU,{gap:1,children:[sQ(RX,{children:[$.name," :",$.port||"...."]}),TY(V16,{status:$.status})]},$.name)),sQ(qU,{gap:1,children:[TY(RX,{children:"Migrations"}),TY(V16,{status:Y})]})]}),TY(qU,{children:Q?sQ(RX,{children:["Open in browser: ",TY(RX,{color:"cyan",children:Q})]}):TY(RX,{dimColor:!0,children:"Starting..."})}),sQ(qU,{gap:2,children:[sQ(RX,{dimColor:!0,children:[TY(RX,{bold:!0,dimColor:!0,children:"K"})," ","toggle config"]}),sQ(RX,{dimColor:!0,children:[TY(RX,{bold:!0,dimColor:!0,children:"L"})," ","toggle log flow"]}),sQ(RX,{dimColor:!0,children:[TY(RX,{bold:!0,dimColor:!0,children:"V"})," ","toggle vibe ",J?"\u266A Nihilore \xB7 CC BY 4.0":""]}),J&&sQ(RX,{dimColor:!0,children:[TY(RX,{bold:!0,dimColor:!0,children:"N"})," ","skip song"]})]})]})}var La5,Ea5,lN0,Pa5=30,qa5;var M16=w(()=>{T16();Vt1();Ct1();La5=[" \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 \u2588\u2588\u2588\u2588\u2588\u2588\u2588 ","\u2591\u2591\u2588\u2588\u2588\u2591\u2591\u2591\u2591\u2588\u2588\u2588 \u2591\u2591\u2588\u2588\u2588\u2591\u2591\u2591\u2591\u2591\u2588 \u2588\u2588\u2588\u2591\u2591\u2591\u2591\u2591\u2588\u2588\u2588 \u2588\u2588\u2588\u2591\u2591\u2591\u2591\u2591\u2588\u2588\u2588 "," \u2591\u2588\u2588\u2588 \u2591\u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588 \u2588 \u2591 \u2588\u2588\u2588 \u2591\u2591\u2591 \u2588\u2588\u2588 \u2591\u2591\u2588\u2588\u2588"," \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588\u2588\u2588\u2588 \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588"," \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588\u2591\u2591\u2588 \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588"," \u2591\u2588\u2588\u2588 \u2588\u2588\u2588 \u2591\u2588\u2588\u2588 \u2591 \u2588\u2591\u2591\u2588\u2588\u2588 \u2588\u2588\u2588\u2591\u2591\u2588\u2588\u2588 \u2588\u2588\u2588 "," \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 \u2591\u2591\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 \u2591\u2591\u2591\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2591 ","\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 \u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 \u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 \u2591\u2591\u2591\u2591\u2591\u2591\u2591 "],Ea5=["#00ff64","#00ee5e","#00dc56","#00c84e","#00b444","#00a03c","#008832","#006e28"],lN0=[["#00ff64","#00cc50"],["#00f060","#00c04c"],["#00e05c","#00b448"],["#00d058","#00a844"],["#00c054","#009c40"],["#00b050","#00903c"],["#00a04c","#008438"],["#009048","#007834"],["#008044","#006c30"],["#007040","#00602c"],["#00603c","#005428"]],qa5=new Set(["#875f00","#5f3800"])});import{useSyncExternalStore as Ta5}from"react";function Ia5(){let X=process.stdout.rows||24,Y=process.stdout.columns||80;if(X!==oA1.rows||Y!==oA1.columns)oA1={rows:X,columns:Y};return oA1}function Va5(X){return process.stdout.on("resize",X),()=>{process.stdout.off("resize",X)}}function R16(){return Ta5(Va5,Ia5)}var oA1;var S16=w(()=>{oA1={rows:process.stdout.rows||24,columns:process.stdout.columns||80}});import{Box as ja5,Text as yX1}from"ink";import{useSyncExternalStore as Ma5}from"react";import{jsx as mN0,jsxs as dN0}from"react/jsx-runtime";function Ra5(X){if(X>=500)return"red";if(X>=400)return"yellow";if(X>=300)return"cyan";return"green"}function k16({logs:X,headerHeight:Y}){let{rows:G}=R16(),{logFlow:Q}=Ma5(vX1,CX1),J=Math.max(1,G-Y-1),W=Q?X:X.slice(-J);return mN0(ja5,{flexDirection:"column",children:W.map((Z,$)=>{if(Z.rawLine)return mN0(yX1,{dimColor:!0,children:Z.rawLine},$);let K=Z.duration<1000?`${Z.duration}ms`:`${(Z.duration/1000).toFixed(1)}s`;return dN0(yX1,{children:[dN0(yX1,{dimColor:!0,children:[Z.method.padEnd(6)," ",Z.path.padEnd(30)," "]}),mN0(yX1,{color:Ra5(Z.status),children:Z.status}),dN0(yX1,{dimColor:!0,children:[" ",K.padStart(8)]})]},$)})})}var C16=w(()=>{Wz();S16()});var cN0={};T0(cN0,{App:()=>ba5});import{Box as Sa5,Text as ka5,useInput as Ca5}from"ink";import{useSyncExternalStore as va5}from"react";import{jsx as sA1,jsxs as ya5}from"react/jsx-runtime";function ba5({home:X}){let Y=va5(vX1,CX1);return Ca5((G)=>{if(G==="k"||G==="K")vN0();if(G==="l"||G==="L")_N0();if((G==="v"||G==="V")&&Y.dataDir)bt1(Y.dataDir),fN0();if((G==="n"||G==="N")&&Y.vibe)ft1()}),ya5(Sa5,{flexDirection:"column",children:[sA1(j16,{services:Y.services,migrationsStatus:Y.migrationsStatus,home:X,serverUrl:Y.serverUrl,vibe:Y.vibe}),Y.viewMode==="config"?Y.env?sA1(q16,{env:Y.env}):sA1(ka5,{dimColor:!0,children:"Loading configuration..."}):sA1(k16,{logs:Y.logs,headerHeight:Y.vibe?fa5:_a5})]})}var _a5=15,fa5=19;var iN0=w(()=>{A16();M16();C16();Wz();bd()});function v16(X,Y={}){return{PORT:String(X.port),NODE_ENV:X.nodeEnv,BASE_URL:X.baseUrl,DATA_DIR:X.dataDir,DECOCMS_HOME:X.dataDir,DATABASE_URL:X.databaseUrl,DATABASE_PG_SSL:String(X.databasePgSsl),DATABASE_POOL_MAX:String(X.databasePoolMax),NATS_URL:X.natsUrls.join(","),BETTER_AUTH_SECRET:X.betterAuthSecret,ENCRYPTION_KEY:X.encryptionKey,MESH_JWT_SECRET:X.meshJwtSecret,DECOCMS_LOCAL_MODE:String(X.localMode),DISABLE_RATE_LIMIT:String(X.disableRateLimit),STUDIO_PROVISION_SECRET_KEY:X.studioProvisionSecretKey,CONFIG_PATH:X.configPath,...Object.fromEntries(Object.entries(process.env).filter(([G])=>G.startsWith("AUTH_"))),DECO_AI_GATEWAY_ENABLED:String(X.aiGatewayEnabled),DECO_AI_GATEWAY_URL:X.aiGatewayUrl,ENABLE_DECO_IMPORT:String(X.enableDecoImport),S3_ENDPOINT:X.s3Endpoint,S3_BUCKET:X.s3Bucket,S3_REGION:X.s3Region,S3_ACCESS_KEY_ID:X.s3AccessKeyId,S3_SECRET_ACCESS_KEY:X.s3SecretAccessKey,S3_FORCE_PATH_STYLE:String(X.s3ForcePathStyle),OTEL_SERVICE_NAME:X.otelServiceName,CLICKHOUSE_URL:X.clickhouseUrl,OTEL_EXPORTER_OTLP_ENDPOINT:process.env.OTEL_EXPORTER_OTLP_ENDPOINT,OTEL_EXPORTER_OTLP_PROTOCOL:process.env.OTEL_EXPORTER_OTLP_PROTOCOL,OTEL_RESOURCE_ATTRIBUTES:process.env.OTEL_RESOURCE_ATTRIBUTES,DECO_SUPABASE_URL:X.decoSupabaseUrl,DECO_SUPABASE_SERVICE_KEY:X.decoSupabaseServiceKey,FIRECRAWL_API_KEY:X.firecrawlApiKey,STUDIO_SANDBOX_RUNNER:process.env.STUDIO_SANDBOX_RUNNER,STUDIO_SANDBOX_TEMPLATE_NAME:process.env.STUDIO_SANDBOX_TEMPLATE_NAME,STUDIO_ENV:process.env.STUDIO_ENV,STUDIO_SANDBOX_PREVIEW_URL_PATTERN:process.env.STUDIO_SANDBOX_PREVIEW_URL_PATTERN,STUDIO_SANDBOX_PREVIEW_GATEWAY_NAME:process.env.STUDIO_SANDBOX_PREVIEW_GATEWAY_NAME,STUDIO_SANDBOX_PREVIEW_GATEWAY_NAMESPACE:process.env.STUDIO_SANDBOX_PREVIEW_GATEWAY_NAMESPACE,STUDIO_SANDBOX_SENTINEL_TOKEN:process.env.STUDIO_SANDBOX_SENTINEL_TOKEN,KUBERNETES_SERVICE_HOST:process.env.KUBERNETES_SERVICE_HOST,KUBERNETES_SERVICE_PORT:process.env.KUBERNETES_SERVICE_PORT,FREESTYLE_API_KEY:process.env.FREESTYLE_API_KEY,BROWSERLESS_TOKEN:process.env.BROWSERLESS_TOKEN,NODE_EXTRA_CA_CERTS:process.env.NODE_EXTRA_CA_CERTS,DECO_CLI:"1",DECO_NO_TUI:"true",...Y}}var bj=k((ma5)=>{ma5.HttpAuthLocation=void 0;(function(X){X.HEADER="header",X.QUERY="query"})(ma5.HttpAuthLocation||(ma5.HttpAuthLocation={}));ma5.HttpApiKeyAuthLocation=void 0;(function(X){X.HEADER="header",X.QUERY="query"})(ma5.HttpApiKeyAuthLocation||(ma5.HttpApiKeyAuthLocation={}));ma5.EndpointURLScheme=void 0;(function(X){X.HTTP="http",X.HTTPS="https"})(ma5.EndpointURLScheme||(ma5.EndpointURLScheme={}));ma5.AlgorithmId=void 0;(function(X){X.MD5="md5",X.CRC32="crc32",X.CRC32C="crc32c",X.SHA1="sha1",X.SHA256="sha256"})(ma5.AlgorithmId||(ma5.AlgorithmId={}));var xa5=(X)=>{let Y=[];if(X.sha256!==void 0)Y.push({algorithmId:()=>ma5.AlgorithmId.SHA256,checksumConstructor:()=>X.sha256});if(X.md5!=null)Y.push({algorithmId:()=>ma5.AlgorithmId.MD5,checksumConstructor:()=>X.md5});return{addChecksumAlgorithm(G){Y.push(G)},checksumAlgorithms(){return Y}}},ha5=(X)=>{let Y={};return X.checksumAlgorithms().forEach((G)=>{Y[G.algorithmId()]=G.checksumConstructor()}),Y},ga5=(X)=>{return xa5(X)},ua5=(X)=>{return ha5(X)};ma5.FieldPosition=void 0;(function(X){X[X.HEADER=0]="HEADER",X[X.TRAILER=1]="TRAILER"})(ma5.FieldPosition||(ma5.FieldPosition={}));var la5="__smithy_context";ma5.IniSectionType=void 0;(function(X){X.PROFILE="profile",X.SSO_SESSION="sso-session",X.SERVICES="services"})(ma5.IniSectionType||(ma5.IniSectionType={}));ma5.RequestHandlerProtocol=void 0;(function(X){X.HTTP_0_9="http/0.9",X.HTTP_1_0="http/1.0",X.TDS_8_0="tds/8.0"})(ma5.RequestHandlerProtocol||(ma5.RequestHandlerProtocol={}));ma5.SMITHY_CONTEXT_KEY=la5;ma5.getDefaultClientConfiguration=ga5;ma5.resolveDefaultRuntimeConfig=ua5});var u7=k((oa5)=>{var pa5=bj(),na5=(X)=>{return{setHttpHandler(Y){X.httpHandler=Y},httpHandler(){return X.httpHandler},updateHttpClientConfig(Y,G){X.httpHandler?.updateHttpClientConfig(Y,G)},httpHandlerConfigs(){return X.httpHandler.httpHandlerConfigs()}}},ta5=(X)=>{return{httpHandler:X.httpHandler()}};class _16{name;kind;values;constructor({name:X,kind:Y=pa5.FieldPosition.HEADER,values:G=[]}){this.name=X,this.kind=Y,this.values=G}add(X){this.values.push(X)}set(X){this.values=X}remove(X){this.values=this.values.filter((Y)=>Y!==X)}toString(){return this.values.map((X)=>X.includes(",")||X.includes(" ")?`"${X}"`:X).join(", ")}get(){return this.values}}class f16{entries={};encoding;constructor({fields:X=[],encoding:Y="utf-8"}){X.forEach(this.setField.bind(this)),this.encoding=Y}setField(X){this.entries[X.name.toLowerCase()]=X}getField(X){return this.entries[X.toLowerCase()]}removeField(X){delete this.entries[X.toLowerCase()]}getByType(X){return Object.values(this.entries).filter((Y)=>Y.kind===X)}}class eA1{method;protocol;hostname;port;path;query;headers;username;password;fragment;body;constructor(X){this.method=X.method||"GET",this.hostname=X.hostname||"localhost",this.port=X.port,this.query=X.query||{},this.headers=X.headers||{},this.body=X.body,this.protocol=X.protocol?X.protocol.slice(-1)!==":"?`${X.protocol}:`:X.protocol:"https:",this.path=X.path?X.path.charAt(0)!=="/"?`/${X.path}`:X.path:"/",this.username=X.username,this.password=X.password,this.fragment=X.fragment}static clone(X){let Y=new eA1({...X,headers:{...X.headers}});if(Y.query)Y.query=aa5(Y.query);return Y}static isInstance(X){if(!X)return!1;let Y=X;return"method"in Y&&"protocol"in Y&&"hostname"in Y&&"path"in Y&&typeof Y.query==="object"&&typeof Y.headers==="object"}clone(){return eA1.clone(this)}}function aa5(X){return Object.keys(X).reduce((Y,G)=>{let Q=X[G];return{...Y,[G]:Array.isArray(Q)?[...Q]:Q}},{})}class b16{statusCode;reason;headers;body;constructor(X){this.statusCode=X.statusCode,this.reason=X.reason,this.headers=X.headers||{},this.body=X.body}static isInstance(X){if(!X)return!1;let Y=X;return typeof Y.statusCode==="number"&&typeof Y.headers==="object"}}function ra5(X){return/^[a-z0-9][a-z0-9\.\-]*[a-z0-9]$/.test(X)}oa5.Field=_16;oa5.Fields=f16;oa5.HttpRequest=eA1;oa5.HttpResponse=b16;oa5.getHttpHandlerExtensionConfiguration=na5;oa5.isValidHostname=ra5;oa5.resolveHttpHandlerRuntimeConfig=ta5});function Zr5(X){return(Y)=>async(G)=>{let{request:Q}=G;if(X.expectContinueHeader!==!1&&y16.HttpRequest.isInstance(Q)&&Q.body&&X.runtime==="node"&&X.requestHandler?.constructor?.name!=="FetchHttpHandler"){let J=!0;if(typeof X.expectContinueHeader==="number")try{J=(Number(Q.headers?.["content-length"])??X.bodyLengthChecker?.(Q.body)??1/0)>=X.expectContinueHeader}catch(W){}else J=!!X.expectContinueHeader;if(J)Q.headers.Expect="100-continue"}return Y({...G,request:Q})}}var y16,Wr5,x16=(X)=>({applyToStack:(Y)=>{Y.add(Zr5(X),Wr5)}});var h16=w(()=>{y16=X1(u7(),1);Wr5={step:"build",tags:["SET_EXPECT_HEADER","EXPECT_HEADER"],name:"addExpectContinueMiddleware",override:!0}});var wH,XT1,yj,YT1,E9,g16,hX1;var LH=w(()=>{wH={WHEN_SUPPORTED:"WHEN_SUPPORTED",WHEN_REQUIRED:"WHEN_REQUIRED"},XT1=wH.WHEN_SUPPORTED,yj={WHEN_SUPPORTED:"WHEN_SUPPORTED",WHEN_REQUIRED:"WHEN_REQUIRED"},YT1=wH.WHEN_SUPPORTED;(function(X){X.MD5="MD5",X.CRC32="CRC32",X.CRC32C="CRC32C",X.CRC64NVME="CRC64NVME",X.SHA1="SHA1",X.SHA256="SHA256"})(E9||(E9={}));(function(X){X.HEADER="header",X.TRAILER="trailer"})(g16||(g16={}));hX1=E9.CRC32});var kq,Qa=(X,Y,G,Q)=>{if(!(Y in X))return;let J=X[Y].toUpperCase();if(!Object.values(G).includes(J))throw TypeError(`Cannot load ${Q} '${Y}'. Expected one of ${Object.values(G)}, got '${X[Y]}'.`);return J};var sN0=w(()=>{(function(X){X.ENV="env",X.CONFIG="shared config entry"})(kq||(kq={}))});var $r5="AWS_REQUEST_CHECKSUM_CALCULATION",Kr5="request_checksum_calculation",u16;var l16=w(()=>{LH();sN0();u16={environmentVariableSelector:(X)=>Qa(X,$r5,wH,kq.ENV),configFileSelector:(X)=>Qa(X,Kr5,wH,kq.CONFIG),default:XT1}});var Hr5="AWS_RESPONSE_CHECKSUM_VALIDATION",Fr5="response_checksum_validation",m16;var d16=w(()=>{LH();sN0();m16={environmentVariableSelector:(X)=>Qa(X,Hr5,yj,kq.ENV),configFileSelector:(X)=>Qa(X,Fr5,yj,kq.CONFIG),default:YT1}});var Xz0=k((Pr5)=>{var Ur5=["AuthFailure","InvalidSignatureException","RequestExpired","RequestInTheFuture","RequestTimeTooSkewed","SignatureDoesNotMatch"],Br5=["BandwidthLimitExceeded","EC2ThrottledException","LimitExceededException","PriorRequestNotComplete","ProvisionedThroughputExceededException","RequestLimitExceeded","RequestThrottled","RequestThrottledException","SlowDown","ThrottledException","Throttling","ThrottlingException","TooManyRequestsException","TransactionInProgressException"],Nr5=["TimeoutError","RequestTimeout","RequestTimeoutException"],zr5=[500,502,503,504],Or5=["ECONNRESET","ECONNREFUSED","EPIPE","ETIMEDOUT"],Dr5=["EHOSTUNREACH","ENETUNREACH","ENOTFOUND"],c16=(X)=>X?.$retryable!==void 0,wr5=(X)=>Ur5.includes(X.name),i16=(X)=>X.$metadata?.clockSkewCorrected,p16=(X)=>{let Y=new Set(["Failed to fetch","NetworkError when attempting to fetch resource","The Internet connection appears to be offline","Load failed","Network request failed"]);if(!(X&&X instanceof TypeError))return!1;return Y.has(X.message)},Lr5=(X)=>X.$metadata?.httpStatusCode===429||Br5.includes(X.name)||X.$retryable?.throttling==!0,eN0=(X,Y=0)=>c16(X)||i16(X)||X.name==="InvalidSignatureException"&&X.message?.includes("Signature expired")||Nr5.includes(X.name)||Or5.includes(X?.code||"")||Dr5.includes(X?.code||"")||zr5.includes(X.$metadata?.httpStatusCode||0)||p16(X)||n16(X)||X.cause!==void 0&&Y<=10&&eN0(X.cause,Y+1),Er5=(X)=>{if(X.$metadata?.httpStatusCode!==void 0){let Y=X.$metadata.httpStatusCode;if(500<=Y&&Y<=599&&!eN0(X))return!0;return!1}return!1};function n16(X){return X.code==="ERR_HTTP2_STREAM_ERROR"&&X.message.includes("NGHTTP2_REFUSED_STREAM")}Pr5.isBrowserNetworkError=p16;Pr5.isClockSkewCorrectedError=i16;Pr5.isClockSkewError=wr5;Pr5.isNodeJsHttp2TransientError=n16;Pr5.isRetryableByTrait=c16;Pr5.isServerError=Er5;Pr5.isThrottlingError=Lr5;Pr5.isTransientError=eN0});var Dw=k((xr5)=>{var Sr5=Xz0();xr5.RETRY_MODES=void 0;(function(X){X.STANDARD="standard",X.ADAPTIVE="adaptive"})(xr5.RETRY_MODES||(xr5.RETRY_MODES={}));var QT1=3,kr5=xr5.RETRY_MODES.STANDARD;class JT1{static setTimeoutFn=setTimeout;beta;minCapacity;minFillRate;scaleConstant;smooth;enabled=!1;availableTokens=0;lastMaxRate=0;measuredTxRate=0;requestCount=0;fillRate;lastThrottleTime;lastTimestamp=0;lastTxRateBucket;maxCapacity;timeWindow=0;constructor(X){this.beta=X?.beta??0.7,this.minCapacity=X?.minCapacity??1,this.minFillRate=X?.minFillRate??0.5,this.scaleConstant=X?.scaleConstant??0.4,this.smooth=X?.smooth??0.8,this.lastThrottleTime=this.getCurrentTimeInSeconds(),this.lastTxRateBucket=Math.floor(this.getCurrentTimeInSeconds()),this.fillRate=this.minFillRate,this.maxCapacity=this.minCapacity}async getSendToken(){return this.acquireTokenBucket(1)}updateClientSendingRate(X){let Y;this.updateMeasuredRate();let G=X;if(G?.errorType==="THROTTLING"||Sr5.isThrottlingError(G?.error??X)){let W=!this.enabled?this.measuredTxRate:Math.min(this.measuredTxRate,this.fillRate);this.lastMaxRate=W,this.calculateTimeWindow(),this.lastThrottleTime=this.getCurrentTimeInSeconds(),Y=this.cubicThrottle(W),this.enableTokenBucket()}else this.calculateTimeWindow(),Y=this.cubicSuccess(this.getCurrentTimeInSeconds());let J=Math.min(Y,2*this.measuredTxRate);this.updateTokenBucketRate(J)}getCurrentTimeInSeconds(){return Date.now()/1000}async acquireTokenBucket(X){if(!this.enabled)return;if(this.refillTokenBucket(),X>this.availableTokens){let Y=(X-this.availableTokens)/this.fillRate*1000;await new Promise((G)=>JT1.setTimeoutFn(G,Y))}this.availableTokens=this.availableTokens-X}refillTokenBucket(){let X=this.getCurrentTimeInSeconds();if(!this.lastTimestamp){this.lastTimestamp=X;return}let Y=(X-this.lastTimestamp)*this.fillRate;this.availableTokens=Math.min(this.maxCapacity,this.availableTokens+Y),this.lastTimestamp=X}calculateTimeWindow(){this.timeWindow=this.getPrecise(Math.pow(this.lastMaxRate*(1-this.beta)/this.scaleConstant,0.3333333333333333))}cubicThrottle(X){return this.getPrecise(X*this.beta)}cubicSuccess(X){return this.getPrecise(this.scaleConstant*Math.pow(X-this.lastThrottleTime-this.timeWindow,3)+this.lastMaxRate)}enableTokenBucket(){this.enabled=!0}updateTokenBucketRate(X){this.refillTokenBucket(),this.fillRate=Math.max(X,this.minFillRate),this.maxCapacity=Math.max(X,this.minCapacity),this.availableTokens=Math.min(this.availableTokens,this.maxCapacity)}updateMeasuredRate(){let X=this.getCurrentTimeInSeconds(),Y=Math.floor(X*2)/2;if(this.requestCount++,Y>this.lastTxRateBucket){let G=this.requestCount/(Y-this.lastTxRateBucket);this.measuredTxRate=this.getPrecise(G*this.smooth+this.measuredTxRate*(1-this.smooth)),this.requestCount=0,this.lastTxRateBucket=Y}}getPrecise(X){return parseFloat(X.toFixed(8))}}var Cr5=100,Qz0=20000,vr5=500,Yz0=500,_r5=5,fr5=10,t16=1,br5="amz-sdk-invocation-id",yr5="amz-sdk-request";class eQ{static v2026=typeof process<"u"&&process.env?.SMITHY_NEW_RETRIES_2026==="true";static delay(){return eQ.v2026?50:100}static throttlingDelay(){return eQ.v2026?1000:500}static cost(){return eQ.v2026?14:5}static throttlingCost(){return eQ.v2026?5:10}static modifiedCostType(){return eQ.v2026?"THROTTLING":"TRANSIENT"}}class a16{x=eQ.delay();computeNextBackoffDelay(X){let Y=Math.random(),G=2,Q=Y*Math.min(this.x*2**X,Qz0);return Math.floor(Q)}setDelayBase(X){this.x=X}}class Gz0{delay;count;cost;longPoll;constructor(X,Y,G,Q){this.delay=X,this.count=Y,this.cost=G,this.longPoll=Q}getRetryCount(){return this.count}getRetryDelay(){return Math.min(Qz0,this.delay)}getRetryCost(){return this.cost}isLongPoll(){return this.longPoll}}var GT1={incompatible:1,attempts:2,capacity:3};class gX1{mode=xr5.RETRY_MODES.STANDARD;capacity=Yz0;retryBackoffStrategy;maxAttemptsProvider;baseDelay;constructor(X){if(typeof X==="number")this.maxAttemptsProvider=async()=>X;else if(typeof X==="function")this.maxAttemptsProvider=X;else if(X&&typeof X==="object")this.maxAttemptsProvider=async()=>X.maxAttempts,this.baseDelay=X.baseDelay,this.retryBackoffStrategy=X.backoff;this.maxAttemptsProvider??=async()=>QT1,this.baseDelay??=eQ.delay(),this.retryBackoffStrategy??=new a16}async acquireInitialRetryToken(X){return new Gz0(eQ.delay(),0,void 0,eQ.v2026&&X.includes(":longpoll"))}async refreshRetryTokenForRetry(X,Y){let G=await this.getMaxAttempts(),Q=this.retryCode(X,Y,G),J=Q===0,W=X.isLongPoll?.();if(J||W){let Z=Y.errorType;this.retryBackoffStrategy.setDelayBase(Z==="THROTTLING"?eQ.throttlingDelay():this.baseDelay);let $=this.retryBackoffStrategy.computeNextBackoffDelay(X.getRetryCount()),K=$;if(Y.retryAfterHint instanceof Date)K=Math.max($,Math.min(Y.retryAfterHint.getTime()-Date.now(),$+5000));if(!J)throw Object.assign(Error("No retry token available"),{$backoff:eQ.v2026&&Q===GT1.capacity&&W?K:0});else{let H=this.getCapacityCost(Z);return this.capacity-=H,new Gz0(K,X.getRetryCount()+1,H,X.isLongPoll?.()??!1)}}throw Error("No retry token available")}recordSuccess(X){this.capacity=Math.min(Yz0,this.capacity+(X.getRetryCost()??t16))}getCapacity(){return this.capacity}async maxAttempts(){return this.maxAttemptsProvider()}async getMaxAttempts(){try{return await this.maxAttemptsProvider()}catch(X){return console.warn(`Max attempts provider could not resolve. Using default of ${QT1}`),QT1}}retryCode(X,Y,G){let Q=X.getRetryCount()+1,J=this.isRetryableError(Y.errorType)?0:GT1.incompatible,W=Q<G?0:GT1.attempts,Z=this.capacity>=this.getCapacityCost(Y.errorType)?0:GT1.capacity;return J||W||Z}getCapacityCost(X){return X===eQ.modifiedCostType()?eQ.throttlingCost():eQ.cost()}isRetryableError(X){return X==="THROTTLING"||X==="TRANSIENT"}}class r16{mode=xr5.RETRY_MODES.ADAPTIVE;rateLimiter;standardRetryStrategy;constructor(X,Y){let{rateLimiter:G}=Y??{};this.rateLimiter=G??new JT1,this.standardRetryStrategy=Y?new gX1({maxAttempts:typeof X==="number"?X:3,...Y}):new gX1(X)}async acquireInitialRetryToken(X){return await this.rateLimiter.getSendToken(),this.standardRetryStrategy.acquireInitialRetryToken(X)}async refreshRetryTokenForRetry(X,Y){return this.rateLimiter.updateClientSendingRate(Y),this.standardRetryStrategy.refreshRetryTokenForRetry(X,Y)}recordSuccess(X){this.rateLimiter.updateClientSendingRate({}),this.standardRetryStrategy.recordSuccess(X)}async maxAttemptsProvider(){return this.standardRetryStrategy.maxAttempts()}}class o16 extends gX1{computeNextBackoffDelay;constructor(X,Y=eQ.delay()){super(typeof X==="function"?X:async()=>X);if(typeof Y==="number")this.computeNextBackoffDelay=()=>Y;else this.computeNextBackoffDelay=Y}async refreshRetryTokenForRetry(X,Y){let G=await super.refreshRetryTokenForRetry(X,Y);return G.getRetryDelay=()=>this.computeNextBackoffDelay(G.getRetryCount()),G}}xr5.AdaptiveRetryStrategy=r16;xr5.ConfiguredRetryStrategy=o16;xr5.DEFAULT_MAX_ATTEMPTS=QT1;xr5.DEFAULT_RETRY_DELAY_BASE=Cr5;xr5.DEFAULT_RETRY_MODE=kr5;xr5.DefaultRateLimiter=JT1;xr5.INITIAL_RETRY_TOKENS=Yz0;xr5.INVOCATION_ID_HEADER=br5;xr5.MAXIMUM_RETRY_DELAY=Qz0;xr5.NO_RETRY_INCREMENT=t16;xr5.REQUEST_HEADER=yr5;xr5.RETRY_COST=_r5;xr5.Retry=eQ;xr5.StandardRetryStrategy=gX1;xr5.THROTTLING_RETRY_DELAY_BASE=vr5;xr5.TIMEOUT_RETRY_COST=fr5});var WX=k((Ko5)=>{var Xo5=Dw(),Jz0={warningEmitted:!1},Yo5=(X)=>{if(X&&!Jz0.warningEmitted&&parseInt(X.substring(1,X.indexOf(".")))<20)Jz0.warningEmitted=!0,process.emitWarning(`NodeDeprecationWarning: The AWS SDK for JavaScript (v3) will
|
|
1647
1647
|
no longer support Node.js ${X} in January 2026.
|
|
1648
1648
|
|
|
1649
1649
|
To continue receiving updates to AWS services, bug fixes, and security
|
|
@@ -2402,7 +2402,7 @@ ${Z}
|
|
|
2402
2402
|
|
|
2403
2403
|
`;break}case"tool":throw new I5({functionality:"tool messages"});default:throw Error(`Unsupported role: ${J}`)}return Q+=`${G}:
|
|
2404
2404
|
`,{prompt:Q,stopSequences:[`
|
|
2405
|
-
${Y}:`]}}function bb6({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 yb6(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 Ip9(X){return Tp9.some((Y)=>X.startsWith(Y))}function gb6(X,Y,G){if(X==null)return{};let Q={};if(X.image_tokens!=null){let J=Math.floor(X.image_tokens/G),W=X.image_tokens-J*(G-1);Q.imageTokens=Y===G-1?W:J}if(X.text_tokens!=null){let J=Math.floor(X.text_tokens/G),W=X.text_tokens-J*(G-1);Q.textTokens=Y===G-1?W:J}return Q}async function jp9(X){if(!X)return;if(X.type==="url")return FR0(X.url);let Y=X.data instanceof Uint8Array?X.data:PG(X.data);return new Blob([Y],{type:X.mediaType})}function ub6(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:W,output_tokens:Z}=X,$=(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:W,noCache:W-$,cacheRead:$,cacheWrite:void 0},outputTokens:{total:Z,text:Z-K,reasoning:K},raw:X}}function zn9(X){return JSON.stringify(X===void 0?{}:X)}function lb6(X,Y){if(!Y)return!1;return Y.some((G)=>X.startsWith(G))}async function On9({prompt:X,toolNameMapping:Y,systemMessageMode:G,providerOptionsName:Q,fileIdPrefixes:J,store:W,hasConversation:Z=!1,hasLocalShellTool:$=!1,hasShellTool:K=!1,hasApplyPatchTool:H=!1,customProviderToolNames:U}){var B,N,z,O,D,E,P,q,j,M,I,R,C,_,v,y,h;let d=[],p=[],f=new Set;for(let{role:u,content:a}of X)switch(u){case"system":{switch(G){case"system":{d.push({role:"system",content:a});break}case"developer":{d.push({role:"developer",content:a});break}case"remove":{p.push({type:"other",message:"system messages are removed for this model"});break}default:throw Error(`Unsupported system message mode: ${G}`)}break}case"user":{d.push({role:"user",content:a.map((r,F1)=>{var w1,$1,O1;switch(r.type){case"text":return{type:"input_text",text:r.text};case"file":if(r.mediaType.startsWith("image/")){let v1=r.mediaType==="image/*"?"image/jpeg":r.mediaType;return{type:"input_image",...r.data instanceof URL?{image_url:r.data.toString()}:typeof r.data==="string"&&lb6(r.data,J)?{file_id:r.data}:{image_url:`data:${v1};base64,${KZ(r.data)}`},detail:($1=(w1=r.providerOptions)==null?void 0:w1[Q])==null?void 0:$1.imageDetail}}else if(r.mediaType==="application/pdf"){if(r.data instanceof URL)return{type:"input_file",file_url:r.data.toString()};return{type:"input_file",...typeof r.data==="string"&&lb6(r.data,J)?{file_id:r.data}:{filename:(O1=r.filename)!=null?O1:`part-${F1}.pdf`,file_data:`data:application/pdf;base64,${KZ(r.data)}`}}}else throw new I5({functionality:`file part media type ${r.mediaType}`})}})});break}case"assistant":{let r={};for(let F1 of a)switch(F1.type){case"text":{let w1=(B=F1.providerOptions)==null?void 0:B[Q],$1=w1==null?void 0:w1.itemId,O1=w1==null?void 0:w1.phase;if(Z&&$1!=null)break;if(W&&$1!=null){d.push({type:"item_reference",id:$1});break}d.push({role:"assistant",content:[{type:"output_text",text:F1.text}],id:$1,...O1!=null&&{phase:O1}});break}case"tool-call":{let w1=(E=(z=(N=F1.providerOptions)==null?void 0:N[Q])==null?void 0:z.itemId)!=null?E:(D=(O=F1.providerMetadata)==null?void 0:O[Q])==null?void 0:D.itemId;if(Z&&w1!=null)break;let $1=Y.toProviderToolName(F1.toolName);if($1==="tool_search"){if(W&&w1!=null){d.push({type:"item_reference",id:w1});break}let O1=typeof F1.input==="string"?await NR0({text:F1.input,schema:eS0}):await L8({value:F1.input,schema:eS0}),v1=O1.call_id!=null?"client":"server";d.push({type:"tool_search_call",id:w1!=null?w1:F1.toolCallId,execution:v1,call_id:(P=O1.call_id)!=null?P:null,status:"completed",arguments:O1.arguments});break}if(F1.providerExecuted){if(W&&w1!=null)d.push({type:"item_reference",id:w1});break}if(W&&w1!=null){d.push({type:"item_reference",id:w1});break}if($&&$1==="local_shell"){let O1=await L8({value:F1.input,schema:sb6});d.push({type:"local_shell_call",call_id:F1.toolCallId,id:w1,action:{type:"exec",command:O1.action.command,timeout_ms:O1.action.timeoutMs,user:O1.action.user,working_directory:O1.action.workingDirectory,env:O1.action.env}});break}if(K&&$1==="shell"){let O1=await L8({value:F1.input,schema:Xy6});d.push({type:"shell_call",call_id:F1.toolCallId,id:w1,status:"completed",action:{commands:O1.action.commands,timeout_ms:O1.action.timeoutMs,max_output_length:O1.action.maxOutputLength}});break}if(H&&$1==="apply_patch"){let O1=await L8({value:F1.input,schema:tb6});d.push({type:"apply_patch_call",call_id:O1.callId,id:w1,status:"completed",operation:O1.operation});break}if(U==null?void 0:U.has($1)){d.push({type:"custom_tool_call",call_id:F1.toolCallId,name:$1,input:typeof F1.input==="string"?F1.input:JSON.stringify(F1.input),id:w1});break}d.push({type:"function_call",call_id:F1.toolCallId,name:$1,arguments:zn9(F1.input),id:w1});break}case"tool-result":{if(F1.output.type==="execution-denied"||F1.output.type==="json"&&typeof F1.output.value==="object"&&F1.output.value!=null&&"type"in F1.output.value&&F1.output.value.type==="execution-denied")break;if(Z)break;let w1=Y.toProviderToolName(F1.toolName);if(w1==="tool_search"){let $1=(M=(j=(q=F1.providerOptions)==null?void 0:q[Q])==null?void 0:j.itemId)!=null?M:F1.toolCallId;if(W)d.push({type:"item_reference",id:$1});else if(F1.output.type==="json"){let O1=await L8({value:F1.output.value,schema:Xk0});d.push({type:"tool_search_output",id:$1,execution:"server",call_id:null,status:"completed",tools:O1.tools})}break}if(K&&w1==="shell"){if(F1.output.type==="json"){let $1=await L8({value:F1.output.value,schema:sS0});d.push({type:"shell_call_output",call_id:F1.toolCallId,output:$1.output.map((O1)=>({stdout:O1.stdout,stderr:O1.stderr,outcome:O1.outcome.type==="timeout"?{type:"timeout"}:{type:"exit",exit_code:O1.outcome.exitCode}}))})}break}if(W){let $1=(C=(R=(I=F1.providerOptions)==null?void 0:I[Q])==null?void 0:R.itemId)!=null?C:F1.toolCallId;d.push({type:"item_reference",id:$1})}else p.push({type:"other",message:`Results for OpenAI tool ${F1.toolName} are not sent to the API when store is false`});break}case"reasoning":{let w1=await f5({provider:Q,providerOptions:F1.providerOptions,schema:Dn9}),$1=w1==null?void 0:w1.itemId;if(Z&&$1!=null)break;if($1!=null){let O1=r[$1];if(W){if(O1===void 0)d.push({type:"item_reference",id:$1}),r[$1]={type:"reasoning",id:$1,summary:[]}}else{let v1=[];if(F1.text.length>0)v1.push({type:"summary_text",text:F1.text});else if(O1!==void 0)p.push({type:"other",message:`Cannot append empty reasoning part to existing reasoning sequence. Skipping reasoning part: ${JSON.stringify(F1)}.`});if(O1===void 0)r[$1]={type:"reasoning",id:$1,encrypted_content:w1==null?void 0:w1.reasoningEncryptedContent,summary:v1},d.push(r[$1]);else if(O1.summary.push(...v1),(w1==null?void 0:w1.reasoningEncryptedContent)!=null)O1.encrypted_content=w1.reasoningEncryptedContent}}else{let O1=w1==null?void 0:w1.reasoningEncryptedContent;if(O1!=null){let v1=[];if(F1.text.length>0)v1.push({type:"summary_text",text:F1.text});d.push({type:"reasoning",encrypted_content:O1,summary:v1})}else p.push({type:"other",message:`Non-OpenAI reasoning parts are not supported. Skipping reasoning part: ${JSON.stringify(F1)}.`})}break}}break}case"tool":{for(let r of a){if(r.type==="tool-approval-response"){let O1=r;if(f.has(O1.approvalId))continue;if(f.add(O1.approvalId),W)d.push({type:"item_reference",id:O1.approvalId});d.push({type:"mcp_approval_response",approval_request_id:O1.approvalId,approve:O1.approved});continue}let F1=r.output;if(F1.type==="execution-denied"){if((v=(_=F1.providerOptions)==null?void 0:_.openai)==null?void 0:v.approvalId)continue}let w1=Y.toProviderToolName(r.toolName);if(w1==="tool_search"&&F1.type==="json"){let O1=await L8({value:F1.value,schema:Xk0});d.push({type:"tool_search_output",execution:"client",call_id:r.toolCallId,status:"completed",tools:O1.tools});continue}if($&&w1==="local_shell"&&F1.type==="json"){let O1=await L8({value:F1.value,schema:eb6});d.push({type:"local_shell_call_output",call_id:r.toolCallId,output:O1.output});continue}if(K&&w1==="shell"&&F1.type==="json"){let O1=await L8({value:F1.value,schema:sS0});d.push({type:"shell_call_output",call_id:r.toolCallId,output:O1.output.map((v1)=>({stdout:v1.stdout,stderr:v1.stderr,outcome:v1.outcome.type==="timeout"?{type:"timeout"}:{type:"exit",exit_code:v1.outcome.exitCode}}))});continue}if(H&&r.toolName==="apply_patch"&&F1.type==="json"){let O1=await L8({value:F1.value,schema:ab6});d.push({type:"apply_patch_call_output",call_id:r.toolCallId,status:O1.status,output:O1.output});continue}if(U==null?void 0:U.has(w1)){let O1;switch(F1.type){case"text":case"error-text":O1=F1.value;break;case"execution-denied":O1=(y=F1.reason)!=null?y:"Tool execution denied.";break;case"json":case"error-json":O1=JSON.stringify(F1.value);break;case"content":O1=F1.value.map((v1)=>{var o1;switch(v1.type){case"text":return{type:"input_text",text:v1.text};case"image-data":return{type:"input_image",image_url:`data:${v1.mediaType};base64,${v1.data}`};case"image-url":return{type:"input_image",image_url:v1.url};case"file-data":return{type:"input_file",filename:(o1=v1.filename)!=null?o1:"data",file_data:`data:${v1.mediaType};base64,${v1.data}`};case"file-url":return{type:"input_file",file_url:v1.url};default:p.push({type:"other",message:`unsupported custom tool content part type: ${v1.type}`});return}}).filter(_R);break;default:O1=""}d.push({type:"custom_tool_call_output",call_id:r.toolCallId,output:O1});continue}let $1;switch(F1.type){case"text":case"error-text":$1=F1.value;break;case"execution-denied":$1=(h=F1.reason)!=null?h:"Tool execution denied.";break;case"json":case"error-json":$1=JSON.stringify(F1.value);break;case"content":$1=F1.value.map((O1)=>{var v1;switch(O1.type){case"text":return{type:"input_text",text:O1.text};case"image-data":return{type:"input_image",image_url:`data:${O1.mediaType};base64,${O1.data}`};case"image-url":return{type:"input_image",image_url:O1.url};case"file-data":return{type:"input_file",filename:(v1=O1.filename)!=null?v1:"data",file_data:`data:${O1.mediaType};base64,${O1.data}`};case"file-url":return{type:"input_file",file_url:O1.url};default:{p.push({type:"other",message:`unsupported tool content part type: ${O1.type}`});return}}}).filter(_R);break}d.push({type:"function_call_output",call_id:r.toolCallId,output:$1})}break}default:throw Error(`Unsupported role: ${u}`)}if(!W&&d.some((u)=>("type"in u)&&u.type==="reasoning"&&u.encrypted_content==null))p.push({type:"other",message:"Reasoning parts without encrypted content are not supported when store is false. Skipping reasoning parts."}),d=d.filter((u)=>!("type"in u)||u.type!=="reasoning"||u.encrypted_content!=null);return{input:d,warnings:p}}function oS0({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 Pn9({tools:X,toolChoice:Y,toolNameMapping:G,customProviderToolNames:Q}){var J,W;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 $=[],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;$.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 L8({value:U.args,schema:hp9});$.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":{$.push({type:"local_shell"});break}case"openai.shell":{let B=await L8({value:U.args,schema:tp9});$.push({type:"shell",...B.environment&&{environment:qn9(B.environment)}});break}case"openai.apply_patch":{$.push({type:"apply_patch"});break}case"openai.web_search_preview":{let B=await L8({value:U.args,schema:Jn9});$.push({type:"web_search_preview",search_context_size:B.searchContextSize,user_location:B.userLocation});break}case"openai.web_search":{let B=await L8({value:U.args,schema:ep9});$.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 L8({value:U.args,schema:Cp9});$.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 L8({value:U.args,schema:lp9});$.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 L8({value:U.args,schema:Kn9}),N=(D)=>({tool_names:D.toolNames}),z=B.requireApproval,O=z==null?void 0:typeof z==="string"?z:z.never!=null?{never:N(z.never)}:void 0;$.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:O!=null?O:"never",server_description:B.serverDescription,server_url:B.serverUrl});break}case"openai.custom":{let B=await L8({value:U.args,schema:fp9});$.push({type:"custom",name:B.name,description:B.description,format:B.format}),K.add(B.name);break}case"openai.tool_search":{let B=await L8({value:U.args,schema:rp9});$.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:$,toolChoice:void 0,toolWarnings:Z};let H=Y.type;switch(H){case"auto":case"none":case"required":return{tools:$,toolChoice:H,toolWarnings:Z};case"tool":{let U=(W=G==null?void 0:G.toProviderToolName(Y.toolName))!=null?W:Y.toolName;return{tools:$,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 I5({functionality:`tool choice type: ${H}`})}}function qn9(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:An9(G.skills)}}return{type:"local",skills:X.skills}}function An9(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 db6(X){var Y,G;let Q={};for(let J of X){if(J.role!=="assistant")continue;for(let W of J.content){if(W.type!=="tool-call")continue;let Z=(G=(Y=W.providerOptions)==null?void 0:Y.openai)==null?void 0:G.approvalRequestId;if(Z!=null)Q[Z]=W.toolCallId}}return Q}function In9(X){return X.type==="response.output_text.delta"}function Vn9(X){return X.type==="response.output_item.done"}function jn9(X){return X.type==="response.completed"||X.type==="response.incomplete"}function Mn9(X){return X.type==="response.failed"}function Rn9(X){return X.type==="response.created"}function Sn9(X){return X.type==="response.function_call_arguments.delta"}function kn9(X){return X.type==="response.custom_tool_call_input.delta"}function Cn9(X){return X.type==="response.image_generation_call.partial_image"}function vn9(X){return X.type==="response.code_interpreter_call_code.delta"}function _n9(X){return X.type==="response.code_interpreter_call_code.done"}function fn9(X){return X.type==="response.apply_patch_call_operation_diff.delta"}function bn9(X){return X.type==="response.apply_patch_call_operation_diff.done"}function cb6(X){return X.type==="response.output_item.added"}function yn9(X){return X.type==="response.output_text.annotation.added"}function xn9(X){return X.type==="error"}function ib6(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 cR(X){return JSON.stringify(X).slice(1,-1)}function Qk0(X={}){var Y,G;let Q=(Y=sA(vz({settingValue:X.baseURL,environmentVariableName:"OPENAI_BASE_URL"})))!=null?Y:"https://api.openai.com/v1",J=(G=X.name)!=null?G:"openai",W=()=>u9({Authorization:`Bearer ${xo({apiKey:X.apiKey,environmentVariableName:"OPENAI_API_KEY",description:"OpenAI"})}`,"OpenAI-Organization":X.organization,"OpenAI-Project":X.project,...X.headers},`ai-sdk/openai/${dn9}`),Z=(D)=>new zp9(D,{provider:`${J}.chat`,url:({path:E})=>`${Q}${E}`,headers:W,fetch:X.fetch}),$=(D)=>new Lp9(D,{provider:`${J}.completion`,url:({path:E})=>`${Q}${E}`,headers:W,fetch:X.fetch}),K=(D)=>new qp9(D,{provider:`${J}.embedding`,url:({path:E})=>`${Q}${E}`,headers:W,fetch:X.fetch}),H=(D)=>new Vp9(D,{provider:`${J}.image`,url:({path:E})=>`${Q}${E}`,headers:W,fetch:X.fetch}),U=(D)=>new mn9(D,{provider:`${J}.transcription`,url:({path:E})=>`${Q}${E}`,headers:W,fetch:X.fetch}),B=(D)=>new gn9(D,{provider:`${J}.speech`,url:({path:E})=>`${Q}${E}`,headers:W,fetch:X.fetch}),N=(D)=>{if(new.target)throw Error("The OpenAI model function cannot be called with the new keyword.");return z(D)},z=(D)=>{return new Tn9(D,{provider:`${J}.responses`,url:({path:E})=>`${Q}${E}`,headers:W,fetch:X.fetch,fileIdPrefixes:["file-"]})},O=function(D){return N(D)};return O.specificationVersion="v3",O.languageModel=N,O.chat=Z,O.completion=$,O.responses=z,O.embedding=K,O.embeddingModel=K,O.textEmbedding=K,O.textEmbeddingModel=K,O.image=H,O.imageModel=H,O.transcription=U,O.transcriptionModel=U,O.speech=B,O.speechModel=B,O.tools=Nn9,O}var Gk0,sU,Fp9,Up9,Bp9,zp9=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:W,presencePenalty:Z,stopSequences:$,responseFormat:K,seed:H,tools:U,toolChoice:B,providerOptions:N}){var z,O,D,E,P;let q=[],j=(z=await f5({provider:"openai",providerOptions:N,schema:Bp9}))!=null?z:{},M=nb6(this.modelId),I=(O=j.forceReasoning)!=null?O:M.isReasoningModel;if(J!=null)q.push({type:"unsupported",feature:"topK"});let{messages:R,warnings:C}=Hp9({prompt:X,systemMessageMode:(D=j.systemMessageMode)!=null?D:I?"developer":M.systemMessageMode});q.push(...C);let _=(E=j.strictJsonSchema)!=null?E:!0,v={model:this.modelId,logit_bias:j.logitBias,logprobs:j.logprobs===!0||typeof j.logprobs==="number"?!0:void 0,top_logprobs:typeof j.logprobs==="number"?j.logprobs:typeof j.logprobs==="boolean"?j.logprobs?0:void 0:void 0,user:j.user,parallel_tool_calls:j.parallelToolCalls,max_tokens:Y,temperature:G,top_p:Q,frequency_penalty:W,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:$,seed:H,verbosity:j.textVerbosity,max_completion_tokens:j.maxCompletionTokens,store:j.store,metadata:j.metadata,prediction:j.prediction,reasoning_effort:j.reasoningEffort,service_tier:j.serviceTier,prompt_cache_key:j.promptCacheKey,prompt_cache_retention:j.promptCacheRetention,safety_identifier:j.safetyIdentifier,messages:R};if(I){if(j.reasoningEffort!=="none"||!M.supportsNonReasoningParameters){if(v.temperature!=null)v.temperature=void 0,q.push({type:"unsupported",feature:"temperature",details:"temperature is not supported for reasoning models"});if(v.top_p!=null)v.top_p=void 0,q.push({type:"unsupported",feature:"topP",details:"topP is not supported for reasoning models"});if(v.logprobs!=null)v.logprobs=void 0,q.push({type:"other",message:"logprobs is not supported for reasoning models"})}if(v.frequency_penalty!=null)v.frequency_penalty=void 0,q.push({type:"unsupported",feature:"frequencyPenalty",details:"frequencyPenalty is not supported for reasoning models"});if(v.presence_penalty!=null)v.presence_penalty=void 0,q.push({type:"unsupported",feature:"presencePenalty",details:"presencePenalty is not supported for reasoning models"});if(v.logit_bias!=null)v.logit_bias=void 0,q.push({type:"other",message:"logitBias is not supported for reasoning models"});if(v.top_logprobs!=null)v.top_logprobs=void 0,q.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,q.push({type:"unsupported",feature:"temperature",details:"temperature is not supported for the search preview models and has been removed."})}if(j.serviceTier==="flex"&&!M.supportsFlexProcessing)q.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(j.serviceTier==="priority"&&!M.supportsPriorityProcessing)q.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:h,toolWarnings:d}=Np9({tools:U,toolChoice:B});return{args:{...v,tools:y,tool_choice:h},warnings:[...q,...d]}}async doGenerate(X){var Y,G,Q,J,W,Z,$;let{args:K,warnings:H}=await this.getArgs(X),{responseHeaders:U,value:B,rawValue:N}=await s8({url:this.config.url({path:"/chat/completions",modelId:this.modelId}),headers:f8(this.config.headers(),X.headers),body:K,failedResponseHandler:sU,successfulResponseHandler:i8(Fp9),abortSignal:X.abortSignal,fetch:this.config.fetch}),z=B.choices[0],O=[],D=z.message.content;if(D!=null&&D.length>0)O.push({type:"text",text:D});for(let j of(Y=z.message.tool_calls)!=null?Y:[])O.push({type:"tool-call",toolCallId:(G=j.id)!=null?G:G6(),toolName:j.function.name,input:j.function.arguments});for(let j of(Q=z.message.annotations)!=null?Q:[])O.push({type:"source",sourceType:"url",id:G6(),url:j.url_citation.url,title:j.url_citation.title});let E=(J=B.usage)==null?void 0:J.completion_tokens_details,P=(W=B.usage)==null?void 0:W.prompt_tokens_details,q={openai:{}};if((E==null?void 0:E.accepted_prediction_tokens)!=null)q.openai.acceptedPredictionTokens=E==null?void 0:E.accepted_prediction_tokens;if((E==null?void 0:E.rejected_prediction_tokens)!=null)q.openai.rejectedPredictionTokens=E==null?void 0:E.rejected_prediction_tokens;if(((Z=z.logprobs)==null?void 0:Z.content)!=null)q.openai.logprobs=z.logprobs.content;return{content:O,finishReason:{unified:_b6(z.finish_reason),raw:($=z.finish_reason)!=null?$:void 0},usage:vb6(B.usage),request:{body:K},response:{...rS0(B),headers:U,body:N},warnings:H,providerMetadata: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:W}=await s8({url:this.config.url({path:"/chat/completions",modelId:this.modelId}),headers:f8(this.config.headers(),X.headers),body:Q,failedResponseHandler:sU,successfulResponseHandler:mH(Up9),abortSignal:X.abortSignal,fetch:this.config.fetch}),Z=[],$={unified:"other",raw:void 0},K=void 0,H=!1,U=!1,B={openai:{}};return{stream:W.pipeThrough(new TransformStream({start(N){N.enqueue({type:"stream-start",warnings:G})},transform(N,z){var O,D,E,P,q,j,M,I,R,C,_,v,y,h,d,p,f;if(X.includeRawChunks)z.enqueue({type:"raw",rawValue:N.rawValue});if(!N.success){$={unified:"error",raw:void 0},z.enqueue({type:"error",error:N.error});return}let u=N.value;if("error"in u){$={unified:"error",raw:void 0},z.enqueue({type:"error",error:u.error});return}if(!H){let F1=rS0(u);if(Object.values(F1).some(Boolean))H=!0,z.enqueue({type:"response-metadata",...rS0(u)})}if(u.usage!=null){if(K=u.usage,((O=u.usage.completion_tokens_details)==null?void 0:O.accepted_prediction_tokens)!=null)B.openai.acceptedPredictionTokens=(D=u.usage.completion_tokens_details)==null?void 0:D.accepted_prediction_tokens;if(((E=u.usage.completion_tokens_details)==null?void 0:E.rejected_prediction_tokens)!=null)B.openai.rejectedPredictionTokens=(P=u.usage.completion_tokens_details)==null?void 0:P.rejected_prediction_tokens}let a=u.choices[0];if((a==null?void 0:a.finish_reason)!=null)$={unified:_b6(a.finish_reason),raw:a.finish_reason};if(((q=a==null?void 0:a.logprobs)==null?void 0:q.content)!=null)B.openai.logprobs=a.logprobs.content;if((a==null?void 0:a.delta)==null)return;let r=a.delta;if(r.content!=null){if(!U)z.enqueue({type:"text-start",id:"0"}),U=!0;z.enqueue({type:"text-delta",id:"0",delta:r.content})}if(r.tool_calls!=null)for(let F1 of r.tool_calls){let w1=F1.index;if(Z[w1]==null){if(F1.type!=null&&F1.type!=="function")throw new _o({data:F1,message:"Expected 'function' type."});if(F1.id==null)throw new _o({data:F1,message:"Expected 'id' to be a string."});if(((j=F1.function)==null?void 0:j.name)==null)throw new _o({data:F1,message:"Expected 'function.name' to be a string."});z.enqueue({type:"tool-input-start",id:F1.id,toolName:F1.function.name}),Z[w1]={id:F1.id,type:"function",function:{name:F1.function.name,arguments:(M=F1.function.arguments)!=null?M:""},hasFinished:!1};let O1=Z[w1];if(((I=O1.function)==null?void 0:I.name)!=null&&((R=O1.function)==null?void 0:R.arguments)!=null){if(O1.function.arguments.length>0)z.enqueue({type:"tool-input-delta",id:O1.id,delta:O1.function.arguments});if(zR0(O1.function.arguments))z.enqueue({type:"tool-input-end",id:O1.id}),z.enqueue({type:"tool-call",toolCallId:(C=O1.id)!=null?C:G6(),toolName:O1.function.name,input:O1.function.arguments}),O1.hasFinished=!0}continue}let $1=Z[w1];if($1.hasFinished)continue;if(((_=F1.function)==null?void 0:_.arguments)!=null)$1.function.arguments+=(y=(v=F1.function)==null?void 0:v.arguments)!=null?y:"";if(z.enqueue({type:"tool-input-delta",id:$1.id,delta:(h=F1.function.arguments)!=null?h:""}),((d=$1.function)==null?void 0:d.name)!=null&&((p=$1.function)==null?void 0:p.arguments)!=null&&zR0($1.function.arguments))z.enqueue({type:"tool-input-end",id:$1.id}),z.enqueue({type:"tool-call",toolCallId:(f=$1.id)!=null?f:G6(),toolName:$1.function.name,input:$1.function.arguments}),$1.hasFinished=!0}if(r.annotations!=null)for(let F1 of r.annotations)z.enqueue({type:"source",sourceType:"url",id:G6(),url:F1.url_citation.url,title:F1.url_citation.title})},flush(N){if(U)N.enqueue({type:"text-end",id:"0"});N.enqueue({type:"finish",finishReason:$,usage:vb6(K),...B!=null?{providerMetadata:B}:{}})}})),request:{body:Q},response:{headers:J}}}},Dp9,wp9,xb6,Lp9=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:W,presencePenalty:Z,stopSequences:$,responseFormat:K,tools:H,toolChoice:U,seed:B,providerOptions:N}){let z=[],O={...await f5({provider:"openai",providerOptions:N,schema:xb6}),...await f5({provider:this.providerOptionsName,providerOptions:N,schema:xb6})};if(J!=null)z.push({type:"unsupported",feature:"topK"});if(H==null?void 0:H.length)z.push({type:"unsupported",feature:"tools"});if(U!=null)z.push({type:"unsupported",feature:"toolChoice"});if(K!=null&&K.type!=="text")z.push({type:"unsupported",feature:"responseFormat",details:"JSON response format is not supported."});let{prompt:D,stopSequences:E}=Op9({prompt:X}),P=[...E!=null?E:[],...$!=null?$:[]];return{args:{model:this.modelId,echo:O.echo,logit_bias:O.logitBias,logprobs:(O==null?void 0:O.logprobs)===!0?0:(O==null?void 0:O.logprobs)===!1?void 0:O==null?void 0:O.logprobs,suffix:O.suffix,user:O.user,max_tokens:Y,temperature:G,top_p:Q,frequency_penalty:W,presence_penalty:Z,seed:B,prompt:D,stop:P.length>0?P:void 0},warnings:z}}async doGenerate(X){var Y;let{args:G,warnings:Q}=await this.getArgs(X),{responseHeaders:J,value:W,rawValue:Z}=await s8({url:this.config.url({path:"/completions",modelId:this.modelId}),headers:f8(this.config.headers(),X.headers),body:G,failedResponseHandler:sU,successfulResponseHandler:i8(Dp9),abortSignal:X.abortSignal,fetch:this.config.fetch}),$=W.choices[0],K={openai:{}};if($.logprobs!=null)K.openai.logprobs=$.logprobs;return{content:[{type:"text",text:$.text}],usage:fb6(W.usage),finishReason:{unified:yb6($.finish_reason),raw:(Y=$.finish_reason)!=null?Y:void 0},request:{body:G},response:{...bb6(W),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:W}=await s8({url:this.config.url({path:"/completions",modelId:this.modelId}),headers:f8(this.config.headers(),X.headers),body:Q,failedResponseHandler:sU,successfulResponseHandler:mH(wp9),abortSignal:X.abortSignal,fetch:this.config.fetch}),Z={unified:"other",raw:void 0},$={openai:{}},K=void 0,H=!0;return{stream:W.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",...bb6(N)}),B.enqueue({type:"text-start",id:"0"});if(N.usage!=null)K=N.usage;let z=N.choices[0];if((z==null?void 0:z.finish_reason)!=null)Z={unified:yb6(z.finish_reason),raw:z.finish_reason};if((z==null?void 0:z.logprobs)!=null)$.openai.logprobs=z.logprobs;if((z==null?void 0:z.text)!=null&&z.text.length>0)B.enqueue({type:"text-delta",id:"0",delta:z.text})},flush(U){if(!H)U.enqueue({type:"text-end",id:"0"});U.enqueue({type:"finish",finishReason:Z,providerMetadata:$,usage:fb6(K)})}})),request:{body:Q},response:{headers:J}}}},Ep9,Pp9,qp9=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 fo({provider:this.provider,modelId:this.modelId,maxEmbeddingsPerCall:this.maxEmbeddingsPerCall,values:X});let W=(J=await f5({provider:"openai",providerOptions:Q,schema:Ep9}))!=null?J:{},{responseHeaders:Z,value:$,rawValue:K}=await s8({url:this.config.url({path:"/embeddings",modelId:this.modelId}),headers:f8(this.config.headers(),Y),body:{model:this.modelId,input:X,encoding_format:"float",dimensions:W.dimensions,user:W.user},failedResponseHandler:sU,successfulResponseHandler:i8(Pp9),abortSignal:G,fetch:this.config.fetch});return{warnings:[],embeddings:$.data.map((H)=>H.embedding),usage:$.usage?{tokens:$.usage.prompt_tokens}:void 0,response:{headers:Z,body:K}}}},hb6,Ap9,Tp9,Vp9=class{constructor(X,Y){this.modelId=X,this.config=Y,this.specificationVersion="v3"}get maxImagesPerCall(){var X;return(X=Ap9[this.modelId])!=null?X:1}get provider(){return this.config.provider}async doGenerate({prompt:X,files:Y,mask:G,n:Q,size:J,aspectRatio:W,seed:Z,providerOptions:$,headers:K,abortSignal:H}){var U,B,N,z,O,D,E,P,q,j,M;let I=[];if(W!=null)I.push({type:"unsupported",feature:"aspectRatio",details:"This model does not support aspect ratio. Use `size` instead."});if(Z!=null)I.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 aR1({url:this.config.url({path:"/images/edits",modelId:this.modelId}),headers:f8(this.config.headers(),K),formData:Pv6({model:this.modelId,prompt:X,image:await Promise.all(Y.map((h)=>h.type==="file"?new Blob([h.data instanceof Uint8Array?new Blob([h.data],{type:h.mediaType}):new Blob([PG(h.data)],{type:h.mediaType})],{type:h.mediaType}):FR0(h.url))),mask:G!=null?await jp9(G):void 0,n:Q,size:J,...(z=$.openai)!=null?z:{}}),failedResponseHandler:sU,successfulResponseHandler:i8(hb6),abortSignal:H,fetch:this.config.fetch});return{images:v.data.map((h)=>h.b64_json),warnings:I,usage:v.usage!=null?{inputTokens:(O=v.usage.input_tokens)!=null?O:void 0,outputTokens:(D=v.usage.output_tokens)!=null?D: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((h,d)=>{var p,f,u,a,r,F1;return{...h.revised_prompt?{revisedPrompt:h.revised_prompt}:{},created:(p=v.created)!=null?p:void 0,size:(f=v.size)!=null?f:void 0,quality:(u=v.quality)!=null?u:void 0,background:(a=v.background)!=null?a:void 0,outputFormat:(r=v.output_format)!=null?r:void 0,...gb6((F1=v.usage)==null?void 0:F1.input_tokens_details,d,v.data.length)}})}}}}let{value:C,responseHeaders:_}=await s8({url:this.config.url({path:"/images/generations",modelId:this.modelId}),headers:f8(this.config.headers(),K),body:{model:this.modelId,prompt:X,n:Q,size:J,...(P=$.openai)!=null?P:{},...!Ip9(this.modelId)?{response_format:"b64_json"}:{}},failedResponseHandler:sU,successfulResponseHandler:i8(hb6),abortSignal:H,fetch:this.config.fetch});return{images:C.data.map((v)=>v.b64_json),warnings:I,usage:C.usage!=null?{inputTokens:(q=C.usage.input_tokens)!=null?q:void 0,outputTokens:(j=C.usage.output_tokens)!=null?j: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 h,d,p,f,u,a;return{...v.revised_prompt?{revisedPrompt:v.revised_prompt}:{},created:(h=C.created)!=null?h:void 0,size:(d=C.size)!=null?d:void 0,quality:(p=C.quality)!=null?p:void 0,background:(f=C.background)!=null?f:void 0,outputFormat:(u=C.output_format)!=null?u:void 0,...gb6((a=C.usage)==null?void 0:a.input_tokens_details,y,C.data.length)}})}}}}},tb6,ab6,OjY,Mp9,Rp9,Sp9,kp9,Cp9,vp9,_p9=(X={})=>{return vp9(X)},fp9,bp9,yp9,xp9=(X)=>yp9(X),rb6,ob6,hp9,gp9,up9,lp9,mp9,dp9,cp9,ip9=(X={})=>{return cp9(X)},sb6,eb6,pp9,Xy6,sS0,np9,tp9,ap9,rp9,eS0,Xk0,op9,sp9=(X={})=>op9(X),ep9,Xn9,Yn9,Gn9,Qn9=(X={})=>Gn9(X),Jn9,Zn9,Wn9,$n9,Yk0,Kn9,Hn9,Fn9,Un9,Bn9=(X)=>Un9(X),Nn9,Dn9,fZ1,wn9,Ln9,Yy6=20,En9,ijY,mb6,Tn9=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:W,frequencyPenalty:Z,seed:$,prompt:K,providerOptions:H,tools:U,toolChoice:B,responseFormat:N}){var z,O,D,E,P,q,j,M,I;let R=[],C=nb6(this.modelId);if(J!=null)R.push({type:"unsupported",feature:"topK"});if($!=null)R.push({type:"unsupported",feature:"seed"});if(W!=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 f5({provider:_,providerOptions:H,schema:mb6});if(v==null&&_!=="openai")v=await f5({provider:"openai",providerOptions:H,schema:mb6});let y=(z=v==null?void 0:v.forceReasoning)!=null?z: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 h=nR1({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:($0)=>$0.id==="openai.custom"?$0.args.name:void 0}),d=new Set,{tools:p,toolChoice:f,toolWarnings:u}=await Pn9({tools:U,toolChoice:B,toolNameMapping:h,customProviderToolNames:d}),{input:a,warnings:r}=await On9({prompt:K,toolNameMapping:h,systemMessageMode:(O=v==null?void 0:v.systemMessageMode)!=null?O:y?"developer":C.systemMessageMode,providerOptionsName:_,fileIdPrefixes:this.config.fileIdPrefixes,store:(D=v==null?void 0:v.store)!=null?D:!0,hasConversation:(v==null?void 0:v.conversation)!=null,hasLocalShellTool:O1("openai.local_shell"),hasShellTool:O1("openai.shell"),hasApplyPatchTool:O1("openai.apply_patch"),customProviderToolNames:d.size>0?d:void 0});R.push(...r);let F1=(E=v==null?void 0:v.strictJsonSchema)!=null?E:!0,w1=v==null?void 0:v.include;function $1($0){if(w1==null)w1=[$0];else if(!w1.includes($0))w1=[...w1,$0]}function O1($0){return(U==null?void 0:U.find((r1)=>r1.type==="provider"&&r1.id===$0))!=null}let v1=typeof(v==null?void 0:v.logprobs)==="number"?v==null?void 0:v.logprobs:(v==null?void 0:v.logprobs)===!0?Yy6:void 0;if(v1)$1("message.output_text.logprobs");let o1=(P=U==null?void 0:U.find(($0)=>$0.type==="provider"&&($0.id==="openai.web_search"||$0.id==="openai.web_search_preview")))==null?void 0:P.name;if(o1)$1("web_search_call.action.sources");if(O1("openai.code_interpreter"))$1("code_interpreter_call.outputs");let d1=v==null?void 0:v.store;if(d1===!1&&y)$1("reasoning.encrypted_content");let g1={model:this.modelId,input:a,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:F1,name:(q=N.name)!=null?q:"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:d1,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:v1,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(g1.temperature!=null)g1.temperature=void 0,R.push({type:"unsupported",feature:"temperature",details:"temperature is not supported for reasoning models"});if(g1.top_p!=null)g1.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 g1.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 g1.service_tier;let Y1=(I=(M=(j=U==null?void 0:U.find(($0)=>$0.type==="provider"&&$0.id==="openai.shell"))==null?void 0:j.args)==null?void 0:M.environment)==null?void 0:I.type,l1=Y1==="containerAuto"||Y1==="containerReference";return{webSearchToolName:o1,args:{...g1,tools:p,tool_choice:f},warnings:[...R,...u],store:d1,toolNameMapping:h,providerOptionsName:_,isShellProviderExecuted:l1}}async doGenerate(X){var Y,G,Q,J,W,Z,$,K,H,U,B,N,z,O,D,E,P,q,j,M,I,R,C,_,v,y,h,d;let{args:p,warnings:f,webSearchToolName:u,toolNameMapping:a,providerOptionsName:r,isShellProviderExecuted:F1}=await this.getArgs(X),w1=this.config.url({path:"/responses",modelId:this.modelId}),$1=db6(X.prompt),{responseHeaders:O1,value:v1,rawValue:o1}=await s8({url:w1,headers:f8(this.config.headers(),X.headers),body:p,failedResponseHandler:sU,successfulResponseHandler:i8(Ln9),abortSignal:X.abortSignal,fetch:this.config.fetch});if(v1.error)throw new c8({message:v1.error.message,url:w1,requestBodyValues:p,statusCode:400,responseHeaders:O1,responseBody:o1,isRetryable:!1});let d1=[],g1=[],Y1=!1,l1=[];for(let q1 of v1.output)switch(q1.type){case"reasoning":{if(q1.summary.length===0)q1.summary.push({type:"summary_text",text:""});for(let P1 of q1.summary)d1.push({type:"reasoning",text:P1.text,providerMetadata:{[r]:{itemId:q1.id,reasoningEncryptedContent:(Y=q1.encrypted_content)!=null?Y:null}}});break}case"image_generation_call":{d1.push({type:"tool-call",toolCallId:q1.id,toolName:a.toCustomToolName("image_generation"),input:"{}",providerExecuted:!0}),d1.push({type:"tool-result",toolCallId:q1.id,toolName:a.toCustomToolName("image_generation"),result:{result:q1.result}});break}case"tool_search_call":{let P1=(G=q1.call_id)!=null?G:q1.id,z1=q1.execution==="server";if(z1)l1.push(P1);d1.push({type:"tool-call",toolCallId:P1,toolName:a.toCustomToolName("tool_search"),input:JSON.stringify({arguments:q1.arguments,call_id:q1.call_id}),...z1?{providerExecuted:!0}:{},providerMetadata:{[r]:{itemId:q1.id}}});break}case"tool_search_output":{let P1=(J=(Q=q1.call_id)!=null?Q:l1.shift())!=null?J:q1.id;d1.push({type:"tool-result",toolCallId:P1,toolName:a.toCustomToolName("tool_search"),result:{tools:q1.tools},providerMetadata:{[r]:{itemId:q1.id}}});break}case"local_shell_call":{d1.push({type:"tool-call",toolCallId:q1.call_id,toolName:a.toCustomToolName("local_shell"),input:JSON.stringify({action:q1.action}),providerMetadata:{[r]:{itemId:q1.id}}});break}case"shell_call":{d1.push({type:"tool-call",toolCallId:q1.call_id,toolName:a.toCustomToolName("shell"),input:JSON.stringify({action:{commands:q1.action.commands}}),...F1&&{providerExecuted:!0},providerMetadata:{[r]:{itemId:q1.id}}});break}case"shell_call_output":{d1.push({type:"tool-result",toolCallId:q1.call_id,toolName:a.toCustomToolName("shell"),result:{output:q1.output.map((P1)=>({stdout:P1.stdout,stderr:P1.stderr,outcome:P1.outcome.type==="exit"?{type:"exit",exitCode:P1.outcome.exit_code}:{type:"timeout"}}))}});break}case"message":{for(let P1 of q1.content){if(((Z=(W=X.providerOptions)==null?void 0:W[r])==null?void 0:Z.logprobs)&&P1.logprobs)g1.push(P1.logprobs);let z1={itemId:q1.id,...q1.phase!=null&&{phase:q1.phase},...P1.annotations.length>0&&{annotations:P1.annotations}};d1.push({type:"text",text:P1.text,providerMetadata:{[r]:z1}});for(let W1 of P1.annotations)if(W1.type==="url_citation")d1.push({type:"source",sourceType:"url",id:(H=(K=($=this.config).generateId)==null?void 0:K.call($))!=null?H:G6(),url:W1.url,title:W1.title});else if(W1.type==="file_citation")d1.push({type:"source",sourceType:"document",id:(N=(B=(U=this.config).generateId)==null?void 0:B.call(U))!=null?N:G6(),mediaType:"text/plain",title:W1.filename,filename:W1.filename,providerMetadata:{[r]:{type:W1.type,fileId:W1.file_id,index:W1.index}}});else if(W1.type==="container_file_citation")d1.push({type:"source",sourceType:"document",id:(D=(O=(z=this.config).generateId)==null?void 0:O.call(z))!=null?D:G6(),mediaType:"text/plain",title:W1.filename,filename:W1.filename,providerMetadata:{[r]:{type:W1.type,fileId:W1.file_id,containerId:W1.container_id}}});else if(W1.type==="file_path")d1.push({type:"source",sourceType:"document",id:(q=(P=(E=this.config).generateId)==null?void 0:P.call(E))!=null?q:G6(),mediaType:"application/octet-stream",title:W1.file_id,filename:W1.file_id,providerMetadata:{[r]:{type:W1.type,fileId:W1.file_id,index:W1.index}}})}break}case"function_call":{Y1=!0,d1.push({type:"tool-call",toolCallId:q1.call_id,toolName:q1.name,input:q1.arguments,providerMetadata:{[r]:{itemId:q1.id}}});break}case"custom_tool_call":{Y1=!0;let P1=a.toCustomToolName(q1.name);d1.push({type:"tool-call",toolCallId:q1.call_id,toolName:P1,input:JSON.stringify(q1.input),providerMetadata:{[r]:{itemId:q1.id}}});break}case"web_search_call":{d1.push({type:"tool-call",toolCallId:q1.id,toolName:a.toCustomToolName(u!=null?u:"web_search"),input:JSON.stringify({}),providerExecuted:!0}),d1.push({type:"tool-result",toolCallId:q1.id,toolName:a.toCustomToolName(u!=null?u:"web_search"),result:ib6(q1.action)});break}case"mcp_call":{let P1=q1.approval_request_id!=null?(j=$1[q1.approval_request_id])!=null?j:q1.id:q1.id,z1=`mcp.${q1.name}`;d1.push({type:"tool-call",toolCallId:P1,toolName:z1,input:q1.arguments,providerExecuted:!0,dynamic:!0}),d1.push({type:"tool-result",toolCallId:P1,toolName:z1,result:{type:"call",serverLabel:q1.server_label,name:q1.name,arguments:q1.arguments,...q1.output!=null?{output:q1.output}:{},...q1.error!=null?{error:q1.error}:{}},providerMetadata:{[r]:{itemId:q1.id}}});break}case"mcp_list_tools":break;case"mcp_approval_request":{let P1=(M=q1.approval_request_id)!=null?M:q1.id,z1=(C=(R=(I=this.config).generateId)==null?void 0:R.call(I))!=null?C:G6(),W1=`mcp.${q1.name}`;d1.push({type:"tool-call",toolCallId:z1,toolName:W1,input:q1.arguments,providerExecuted:!0,dynamic:!0}),d1.push({type:"tool-approval-request",approvalId:P1,toolCallId:z1});break}case"computer_call":{d1.push({type:"tool-call",toolCallId:q1.id,toolName:a.toCustomToolName("computer_use"),input:"",providerExecuted:!0}),d1.push({type:"tool-result",toolCallId:q1.id,toolName:a.toCustomToolName("computer_use"),result:{type:"computer_use_tool_result",status:q1.status||"completed"}});break}case"file_search_call":{d1.push({type:"tool-call",toolCallId:q1.id,toolName:a.toCustomToolName("file_search"),input:"{}",providerExecuted:!0}),d1.push({type:"tool-result",toolCallId:q1.id,toolName:a.toCustomToolName("file_search"),result:{queries:q1.queries,results:(v=(_=q1.results)==null?void 0:_.map((P1)=>({attributes:P1.attributes,fileId:P1.file_id,filename:P1.filename,score:P1.score,text:P1.text})))!=null?v:null}});break}case"code_interpreter_call":{d1.push({type:"tool-call",toolCallId:q1.id,toolName:a.toCustomToolName("code_interpreter"),input:JSON.stringify({code:q1.code,containerId:q1.container_id}),providerExecuted:!0}),d1.push({type:"tool-result",toolCallId:q1.id,toolName:a.toCustomToolName("code_interpreter"),result:{outputs:q1.outputs}});break}case"apply_patch_call":{d1.push({type:"tool-call",toolCallId:q1.call_id,toolName:a.toCustomToolName("apply_patch"),input:JSON.stringify({callId:q1.call_id,operation:q1.operation}),providerMetadata:{[r]:{itemId:q1.id}}});break}}let $0={[r]:{responseId:v1.id,...g1.length>0?{logprobs:g1}:{},...typeof v1.service_tier==="string"?{serviceTier:v1.service_tier}:{}}},r1=v1.usage;return{content:d1,finishReason:{unified:oS0({finishReason:(y=v1.incomplete_details)==null?void 0:y.reason,hasFunctionCall:Y1}),raw:(d=(h=v1.incomplete_details)==null?void 0:h.reason)!=null?d:void 0},usage:ub6(r1),request:{body:p},response:{id:v1.id,timestamp:new Date(v1.created_at*1000),modelId:v1.model,headers:O1,body:o1},providerMetadata:$0,warnings:f}}async doStream(X){let{args:Y,warnings:G,webSearchToolName:Q,toolNameMapping:J,store:W,providerOptionsName:Z,isShellProviderExecuted:$}=await this.getArgs(X),{responseHeaders:K,value:H}=await s8({url:this.config.url({path:"/responses",modelId:this.modelId}),headers:f8(this.config.headers(),X.headers),body:{...Y,stream:!0},failedResponseHandler:sU,successfulResponseHandler:mH(wn9),abortSignal:X.abortSignal,fetch:this.config.fetch}),U=this,B=db6(X.prompt),N=new Map,z={unified:"other",raw:void 0},O=void 0,D=[],E=null,P={},q=[],j,M=!1,I={},R,C=[];return{stream:H.pipeThrough(new TransformStream({start(_){_.enqueue({type:"stream-start",warnings:G})},transform(_,v){var y,h,d,p,f,u,a,r,F1,w1,$1,O1,v1,o1,d1,g1,Y1,l1,$0,r1,q1,P1,z1,W1,S1,j1,p1,V1,x1,e1,Z0,L4,l0,U0,z0,f0,M0,R6;if(X.includeRawChunks)v.enqueue({type:"raw",rawValue:_.rawValue});if(!_.success){z={unified:"error",raw:void 0},v.enqueue({type:"error",error:_.error});return}let k1=_.value;if(cb6(k1)){if(k1.item.type==="function_call")P[k1.output_index]={toolName:k1.item.name,toolCallId:k1.item.call_id},v.enqueue({type:"tool-input-start",id:k1.item.call_id,toolName:k1.item.name});else if(k1.item.type==="custom_tool_call"){let X0=J.toCustomToolName(k1.item.name);P[k1.output_index]={toolName:X0,toolCallId:k1.item.call_id},v.enqueue({type:"tool-input-start",id:k1.item.call_id,toolName:X0})}else if(k1.item.type==="web_search_call")P[k1.output_index]={toolName:J.toCustomToolName(Q!=null?Q:"web_search"),toolCallId:k1.item.id},v.enqueue({type:"tool-input-start",id:k1.item.id,toolName:J.toCustomToolName(Q!=null?Q:"web_search"),providerExecuted:!0}),v.enqueue({type:"tool-input-end",id:k1.item.id}),v.enqueue({type:"tool-call",toolCallId:k1.item.id,toolName:J.toCustomToolName(Q!=null?Q:"web_search"),input:JSON.stringify({}),providerExecuted:!0});else if(k1.item.type==="computer_call")P[k1.output_index]={toolName:J.toCustomToolName("computer_use"),toolCallId:k1.item.id},v.enqueue({type:"tool-input-start",id:k1.item.id,toolName:J.toCustomToolName("computer_use"),providerExecuted:!0});else if(k1.item.type==="code_interpreter_call")P[k1.output_index]={toolName:J.toCustomToolName("code_interpreter"),toolCallId:k1.item.id,codeInterpreter:{containerId:k1.item.container_id}},v.enqueue({type:"tool-input-start",id:k1.item.id,toolName:J.toCustomToolName("code_interpreter"),providerExecuted:!0}),v.enqueue({type:"tool-input-delta",id:k1.item.id,delta:`{"containerId":"${k1.item.container_id}","code":"`});else if(k1.item.type==="file_search_call")v.enqueue({type:"tool-call",toolCallId:k1.item.id,toolName:J.toCustomToolName("file_search"),input:"{}",providerExecuted:!0});else if(k1.item.type==="image_generation_call")v.enqueue({type:"tool-call",toolCallId:k1.item.id,toolName:J.toCustomToolName("image_generation"),input:"{}",providerExecuted:!0});else if(k1.item.type==="tool_search_call"){let X0=k1.item.id,o0=J.toCustomToolName("tool_search"),h4=k1.item.execution==="server";if(P[k1.output_index]={toolName:o0,toolCallId:X0,toolSearchExecution:(y=k1.item.execution)!=null?y:"server"},h4)v.enqueue({type:"tool-input-start",id:X0,toolName:o0,providerExecuted:!0})}else if(k1.item.type==="tool_search_output");else if(k1.item.type==="mcp_call"||k1.item.type==="mcp_list_tools"||k1.item.type==="mcp_approval_request");else if(k1.item.type==="apply_patch_call"){let{call_id:X0,operation:o0}=k1.item;if(P[k1.output_index]={toolName:J.toCustomToolName("apply_patch"),toolCallId:X0,applyPatch:{hasDiff:o0.type==="delete_file",endEmitted:o0.type==="delete_file"}},v.enqueue({type:"tool-input-start",id:X0,toolName:J.toCustomToolName("apply_patch")}),o0.type==="delete_file"){let h4=JSON.stringify({callId:X0,operation:o0});v.enqueue({type:"tool-input-delta",id:X0,delta:h4}),v.enqueue({type:"tool-input-end",id:X0})}else v.enqueue({type:"tool-input-delta",id:X0,delta:`{"callId":"${cR(X0)}","operation":{"type":"${cR(o0.type)}","path":"${cR(o0.path)}","diff":"`})}else if(k1.item.type==="shell_call")P[k1.output_index]={toolName:J.toCustomToolName("shell"),toolCallId:k1.item.call_id};else if(k1.item.type==="shell_call_output");else if(k1.item.type==="message")q.splice(0,q.length),j=(h=k1.item.phase)!=null?h:void 0,v.enqueue({type:"text-start",id:k1.item.id,providerMetadata:{[Z]:{itemId:k1.item.id,...k1.item.phase!=null&&{phase:k1.item.phase}}}});else if(cb6(k1)&&k1.item.type==="reasoning")I[k1.item.id]={encryptedContent:k1.item.encrypted_content,summaryParts:{0:"active"}},v.enqueue({type:"reasoning-start",id:`${k1.item.id}:0`,providerMetadata:{[Z]:{itemId:k1.item.id,reasoningEncryptedContent:(d=k1.item.encrypted_content)!=null?d:null}}})}else if(Vn9(k1)){if(k1.item.type==="message"){let X0=(p=k1.item.phase)!=null?p:j;j=void 0,v.enqueue({type:"text-end",id:k1.item.id,providerMetadata:{[Z]:{itemId:k1.item.id,...X0!=null&&{phase:X0},...q.length>0&&{annotations:q}}}})}else if(k1.item.type==="function_call")P[k1.output_index]=void 0,M=!0,v.enqueue({type:"tool-input-end",id:k1.item.call_id}),v.enqueue({type:"tool-call",toolCallId:k1.item.call_id,toolName:k1.item.name,input:k1.item.arguments,providerMetadata:{[Z]:{itemId:k1.item.id}}});else if(k1.item.type==="custom_tool_call"){P[k1.output_index]=void 0,M=!0;let X0=J.toCustomToolName(k1.item.name);v.enqueue({type:"tool-input-end",id:k1.item.call_id}),v.enqueue({type:"tool-call",toolCallId:k1.item.call_id,toolName:X0,input:JSON.stringify(k1.item.input),providerMetadata:{[Z]:{itemId:k1.item.id}}})}else if(k1.item.type==="web_search_call")P[k1.output_index]=void 0,v.enqueue({type:"tool-result",toolCallId:k1.item.id,toolName:J.toCustomToolName(Q!=null?Q:"web_search"),result:ib6(k1.item.action)});else if(k1.item.type==="computer_call")P[k1.output_index]=void 0,v.enqueue({type:"tool-input-end",id:k1.item.id}),v.enqueue({type:"tool-call",toolCallId:k1.item.id,toolName:J.toCustomToolName("computer_use"),input:"",providerExecuted:!0}),v.enqueue({type:"tool-result",toolCallId:k1.item.id,toolName:J.toCustomToolName("computer_use"),result:{type:"computer_use_tool_result",status:k1.item.status||"completed"}});else if(k1.item.type==="file_search_call")P[k1.output_index]=void 0,v.enqueue({type:"tool-result",toolCallId:k1.item.id,toolName:J.toCustomToolName("file_search"),result:{queries:k1.item.queries,results:(u=(f=k1.item.results)==null?void 0:f.map((X0)=>({attributes:X0.attributes,fileId:X0.file_id,filename:X0.filename,score:X0.score,text:X0.text})))!=null?u:null}});else if(k1.item.type==="code_interpreter_call")P[k1.output_index]=void 0,v.enqueue({type:"tool-result",toolCallId:k1.item.id,toolName:J.toCustomToolName("code_interpreter"),result:{outputs:k1.item.outputs}});else if(k1.item.type==="image_generation_call")v.enqueue({type:"tool-result",toolCallId:k1.item.id,toolName:J.toCustomToolName("image_generation"),result:{result:k1.item.result}});else if(k1.item.type==="tool_search_call"){let X0=P[k1.output_index],o0=k1.item.execution==="server";if(X0!=null){let h4=o0?X0.toolCallId:(a=k1.item.call_id)!=null?a:k1.item.id;if(o0)C.push(h4);else v.enqueue({type:"tool-input-start",id:h4,toolName:X0.toolName});v.enqueue({type:"tool-input-end",id:h4}),v.enqueue({type:"tool-call",toolCallId:h4,toolName:X0.toolName,input:JSON.stringify({arguments:k1.item.arguments,call_id:o0?null:h4}),...o0?{providerExecuted:!0}:{},providerMetadata:{[Z]:{itemId:k1.item.id}}})}P[k1.output_index]=void 0}else if(k1.item.type==="tool_search_output"){let X0=(F1=(r=k1.item.call_id)!=null?r:C.shift())!=null?F1:k1.item.id;v.enqueue({type:"tool-result",toolCallId:X0,toolName:J.toCustomToolName("tool_search"),result:{tools:k1.item.tools},providerMetadata:{[Z]:{itemId:k1.item.id}}})}else if(k1.item.type==="mcp_call"){P[k1.output_index]=void 0;let X0=(w1=k1.item.approval_request_id)!=null?w1:void 0,o0=X0!=null?(O1=($1=N.get(X0))!=null?$1:B[X0])!=null?O1:k1.item.id:k1.item.id,h4=`mcp.${k1.item.name}`;v.enqueue({type:"tool-call",toolCallId:o0,toolName:h4,input:k1.item.arguments,providerExecuted:!0,dynamic:!0}),v.enqueue({type:"tool-result",toolCallId:o0,toolName:h4,result:{type:"call",serverLabel:k1.item.server_label,name:k1.item.name,arguments:k1.item.arguments,...k1.item.output!=null?{output:k1.item.output}:{},...k1.item.error!=null?{error:k1.item.error}:{}},providerMetadata:{[Z]:{itemId:k1.item.id}}})}else if(k1.item.type==="mcp_list_tools")P[k1.output_index]=void 0;else if(k1.item.type==="apply_patch_call"){let X0=P[k1.output_index];if((X0==null?void 0:X0.applyPatch)&&!X0.applyPatch.endEmitted&&k1.item.operation.type!=="delete_file"){if(!X0.applyPatch.hasDiff)v.enqueue({type:"tool-input-delta",id:X0.toolCallId,delta:cR(k1.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&&k1.item.status==="completed")v.enqueue({type:"tool-call",toolCallId:X0.toolCallId,toolName:J.toCustomToolName("apply_patch"),input:JSON.stringify({callId:k1.item.call_id,operation:k1.item.operation}),providerMetadata:{[Z]:{itemId:k1.item.id}}});P[k1.output_index]=void 0}else if(k1.item.type==="mcp_approval_request"){P[k1.output_index]=void 0;let X0=(d1=(o1=(v1=U.config).generateId)==null?void 0:o1.call(v1))!=null?d1:G6(),o0=(g1=k1.item.approval_request_id)!=null?g1:k1.item.id;N.set(o0,X0);let h4=`mcp.${k1.item.name}`;v.enqueue({type:"tool-call",toolCallId:X0,toolName:h4,input:k1.item.arguments,providerExecuted:!0,dynamic:!0}),v.enqueue({type:"tool-approval-request",approvalId:o0,toolCallId:X0})}else if(k1.item.type==="local_shell_call")P[k1.output_index]=void 0,v.enqueue({type:"tool-call",toolCallId:k1.item.call_id,toolName:J.toCustomToolName("local_shell"),input:JSON.stringify({action:{type:"exec",command:k1.item.action.command,timeoutMs:k1.item.action.timeout_ms,user:k1.item.action.user,workingDirectory:k1.item.action.working_directory,env:k1.item.action.env}}),providerMetadata:{[Z]:{itemId:k1.item.id}}});else if(k1.item.type==="shell_call")P[k1.output_index]=void 0,v.enqueue({type:"tool-call",toolCallId:k1.item.call_id,toolName:J.toCustomToolName("shell"),input:JSON.stringify({action:{commands:k1.item.action.commands}}),...$&&{providerExecuted:!0},providerMetadata:{[Z]:{itemId:k1.item.id}}});else if(k1.item.type==="shell_call_output")v.enqueue({type:"tool-result",toolCallId:k1.item.call_id,toolName:J.toCustomToolName("shell"),result:{output:k1.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(k1.item.type==="reasoning"){let X0=I[k1.item.id],o0=Object.entries(X0.summaryParts).filter(([h4,V])=>V==="active"||V==="can-conclude").map(([h4])=>h4);for(let h4 of o0)v.enqueue({type:"reasoning-end",id:`${k1.item.id}:${h4}`,providerMetadata:{[Z]:{itemId:k1.item.id,reasoningEncryptedContent:(Y1=k1.item.encrypted_content)!=null?Y1:null}}});delete I[k1.item.id]}}else if(Sn9(k1)){let X0=P[k1.output_index];if(X0!=null)v.enqueue({type:"tool-input-delta",id:X0.toolCallId,delta:k1.delta})}else if(kn9(k1)){let X0=P[k1.output_index];if(X0!=null)v.enqueue({type:"tool-input-delta",id:X0.toolCallId,delta:k1.delta})}else if(fn9(k1)){let X0=P[k1.output_index];if(X0==null?void 0:X0.applyPatch)v.enqueue({type:"tool-input-delta",id:X0.toolCallId,delta:cR(k1.delta)}),X0.applyPatch.hasDiff=!0}else if(bn9(k1)){let X0=P[k1.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:cR(k1.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(Cn9(k1))v.enqueue({type:"tool-result",toolCallId:k1.item_id,toolName:J.toCustomToolName("image_generation"),result:{result:k1.partial_image_b64},preliminary:!0});else if(vn9(k1)){let X0=P[k1.output_index];if(X0!=null)v.enqueue({type:"tool-input-delta",id:X0.toolCallId,delta:cR(k1.delta)})}else if(_n9(k1)){let X0=P[k1.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:k1.code,containerId:X0.codeInterpreter.containerId}),providerExecuted:!0})}else if(Rn9(k1))E=k1.response.id,v.enqueue({type:"response-metadata",id:k1.response.id,timestamp:new Date(k1.response.created_at*1000),modelId:k1.response.model});else if(In9(k1)){if(v.enqueue({type:"text-delta",id:k1.item_id,delta:k1.delta}),(($0=(l1=X.providerOptions)==null?void 0:l1[Z])==null?void 0:$0.logprobs)&&k1.logprobs)D.push(k1.logprobs)}else if(k1.type==="response.reasoning_summary_part.added"){if(k1.summary_index>0){let X0=I[k1.item_id];X0.summaryParts[k1.summary_index]="active";for(let o0 of Object.keys(X0.summaryParts))if(X0.summaryParts[o0]==="can-conclude")v.enqueue({type:"reasoning-end",id:`${k1.item_id}:${o0}`,providerMetadata:{[Z]:{itemId:k1.item_id}}}),X0.summaryParts[o0]="concluded";v.enqueue({type:"reasoning-start",id:`${k1.item_id}:${k1.summary_index}`,providerMetadata:{[Z]:{itemId:k1.item_id,reasoningEncryptedContent:(q1=(r1=I[k1.item_id])==null?void 0:r1.encryptedContent)!=null?q1:null}}})}}else if(k1.type==="response.reasoning_summary_text.delta")v.enqueue({type:"reasoning-delta",id:`${k1.item_id}:${k1.summary_index}`,delta:k1.delta,providerMetadata:{[Z]:{itemId:k1.item_id}}});else if(k1.type==="response.reasoning_summary_part.done")if(W)v.enqueue({type:"reasoning-end",id:`${k1.item_id}:${k1.summary_index}`,providerMetadata:{[Z]:{itemId:k1.item_id}}}),I[k1.item_id].summaryParts[k1.summary_index]="concluded";else I[k1.item_id].summaryParts[k1.summary_index]="can-conclude";else if(jn9(k1)){if(z={unified:oS0({finishReason:(P1=k1.response.incomplete_details)==null?void 0:P1.reason,hasFunctionCall:M}),raw:(W1=(z1=k1.response.incomplete_details)==null?void 0:z1.reason)!=null?W1:void 0},O=k1.response.usage,typeof k1.response.service_tier==="string")R=k1.response.service_tier}else if(Mn9(k1)){let X0=(S1=k1.response.incomplete_details)==null?void 0:S1.reason;z={unified:X0?oS0({finishReason:X0,hasFunctionCall:M}):"error",raw:X0!=null?X0:"error"},O=(j1=k1.response.usage)!=null?j1:void 0}else if(yn9(k1)){if(q.push(k1.annotation),k1.annotation.type==="url_citation")v.enqueue({type:"source",sourceType:"url",id:(x1=(V1=(p1=U.config).generateId)==null?void 0:V1.call(p1))!=null?x1:G6(),url:k1.annotation.url,title:k1.annotation.title});else if(k1.annotation.type==="file_citation")v.enqueue({type:"source",sourceType:"document",id:(L4=(Z0=(e1=U.config).generateId)==null?void 0:Z0.call(e1))!=null?L4:G6(),mediaType:"text/plain",title:k1.annotation.filename,filename:k1.annotation.filename,providerMetadata:{[Z]:{type:k1.annotation.type,fileId:k1.annotation.file_id,index:k1.annotation.index}}});else if(k1.annotation.type==="container_file_citation")v.enqueue({type:"source",sourceType:"document",id:(z0=(U0=(l0=U.config).generateId)==null?void 0:U0.call(l0))!=null?z0:G6(),mediaType:"text/plain",title:k1.annotation.filename,filename:k1.annotation.filename,providerMetadata:{[Z]:{type:k1.annotation.type,fileId:k1.annotation.file_id,containerId:k1.annotation.container_id}}});else if(k1.annotation.type==="file_path")v.enqueue({type:"source",sourceType:"document",id:(R6=(M0=(f0=U.config).generateId)==null?void 0:M0.call(f0))!=null?R6:G6(),mediaType:"application/octet-stream",title:k1.annotation.file_id,filename:k1.annotation.file_id,providerMetadata:{[Z]:{type:k1.annotation.type,fileId:k1.annotation.file_id,index:k1.annotation.index}}})}else if(xn9(k1))v.enqueue({type:"error",error:k1})},flush(_){let v={[Z]:{responseId:E,...D.length>0?{logprobs:D}:{},...R!==void 0?{serviceTier:R}:{}}};_.enqueue({type:"finish",finishReason:z,usage:ub6(O),providerMetadata:v})}})),request:{body:Y},response:{headers:K}}}},hn9,gn9=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:W,providerOptions:Z}){let $=[],K=await f5({provider:"openai",providerOptions:Z,schema:hn9}),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 $.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 "${W}" was ignored.`});return{requestBody:H,warnings:$}}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:W,warnings:Z}=await this.getArgs(X),{value:$,responseHeaders:K,rawValue:H}=await s8({url:this.config.url({path:"/audio/speech",modelId:this.modelId}),headers:f8(this.config.headers(),X.headers),body:W,failedResponseHandler:sU,successfulResponseHandler:fv6(),abortSignal:X.abortSignal,fetch:this.config.fetch});return{audio:$,warnings:Z,request:{body:JSON.stringify(W)},response:{timestamp:J,modelId:this.modelId,headers:K,body:H}}}},un9,ln9,pb6,mn9=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 f5({provider:"openai",providerOptions:G,schema:ln9}),W=new FormData,Z=X instanceof Uint8Array?new Blob([X]):new Blob([PG(X)]);W.append("model",this.modelId);let $=Mv6(Y);if(W.append("file",new File([Z],"audio",{type:Y}),`audio.${$}`),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)W.append(`${H}[]`,String(B));else W.append(H,String(U))}return{formData:W,warnings:Q}}async doGenerate(X){var Y,G,Q,J,W,Z,$,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:z,rawValue:O}=await aR1({url:this.config.url({path:"/audio/transcriptions",modelId:this.modelId}),headers:f8(this.config.headers(),X.headers),formData:U,failedResponseHandler:sU,successfulResponseHandler:i8(un9),abortSignal:X.abortSignal,fetch:this.config.fetch}),D=N.language!=null&&N.language in pb6?pb6[N.language]:void 0;return{text:N.text,segments:($=(Z=(J=N.segments)==null?void 0:J.map((E)=>({text:E.text,startSecond:E.start,endSecond:E.end})))!=null?Z:(W=N.words)==null?void 0:W.map((E)=>({text:E.word,startSecond:E.start,endSecond:E.end})))!=null?$:[],language:D,durationInSeconds:(K=N.duration)!=null?K:void 0,warnings:B,response:{timestamp:H,modelId:this.modelId,headers:z,body:O}}}},dn9="3.0.53",GMY;var Gy6=w(()=>{S0();m4();S0();i0();S0();m4();S0();S0();i0();S0();i0();m4();S0();m4();i0();S0();S0();i0();m4();S0();S0();i0();S0();i0();S0();S0();i0();S0();i0();S0();i0();S0();i0();S0();i0();S0();i0();S0();i0();S0();i0();S0();i0();S0();i0();S0();i0();S0();i0();m4();S0();m4();S0();i0();S0();i0();S0();i0();m4();S0();S0();S0();i0();S0();S0();i0();S0();i0();Gk0=F.object({error:F.object({message:F.string(),type:F.string().nullish(),param:F.any().nullish(),code:F.union([F.string(),F.number()]).nullish()})}),sU=bX({errorSchema:Gk0,errorToMessage:(X)=>X.error.message});Fp9=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()}))),Up9=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()}),Gk0]))),Bp9=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()})));Dp9=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()}))),wp9=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()}),Gk0]))),xb6=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()}))),Ep9=Q0(()=>n1(F.object({dimensions:F.number().optional(),user:F.string().optional()}))),Pp9=Q0(()=>n1(F.object({data:F.array(F.object({embedding:F.array(F.number())})),usage:F.object({prompt_tokens:F.number()}).nullish()}))),hb6=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()}))),Ap9={"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},Tp9=["chatgpt-image-","gpt-image-1-mini","gpt-image-1.5","gpt-image-1"];tb6=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()})])}))),ab6=Q0(()=>n1(F.object({status:F.enum(["completed","failed"]),output:F.string().optional()}))),OjY=Q0(()=>n1(F.object({}))),Mp9=E8({id:"openai.apply_patch",inputSchema:tb6,outputSchema:ab6}),Rp9=Mp9,Sp9=Q0(()=>n1(F.object({code:F.string().nullish(),containerId:F.string()}))),kp9=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()}))),Cp9=Q0(()=>n1(F.object({container:F.union([F.string(),F.object({fileIds:F.array(F.string()).optional()})]).optional()}))),vp9=E8({id:"openai.code_interpreter",inputSchema:Sp9,outputSchema:kp9}),fp9=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()}))),bp9=Q0(()=>n1(F.string())),yp9=p5({id:"openai.custom",inputSchema:bp9}),rb6=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())])}),ob6=F.object({type:F.enum(["and","or"]),filters:F.array(F.union([rb6,F.lazy(()=>ob6)]))}),hp9=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([rb6,ob6]).optional()}))),gp9=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()}))),up9=E8({id:"openai.file_search",inputSchema:F.object({}),outputSchema:gp9}),lp9=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())),mp9=Q0(()=>n1(F.object({}))),dp9=Q0(()=>n1(F.object({result:F.string()}))),cp9=E8({id:"openai.image_generation",inputSchema:mp9,outputSchema:dp9}),sb6=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()})}))),eb6=Q0(()=>n1(F.object({output:F.string()}))),pp9=E8({id:"openai.local_shell",inputSchema:sb6,outputSchema:eb6}),Xy6=Q0(()=>n1(F.object({action:F.object({commands:F.array(F.string()),timeoutMs:F.number().optional(),maxOutputLength:F.number().optional()})}))),sS0=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()})])}))}))),np9=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(),tp9=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:np9}),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()}))),ap9=E8({id:"openai.shell",inputSchema:Xy6,outputSchema:sS0}),rp9=Q0(()=>n1(F.object({execution:F.enum(["server","client"]).optional(),description:F.string().optional(),parameters:F.record(F.string(),F.unknown()).optional()}))),eS0=Q0(()=>n1(F.object({arguments:F.unknown().optional(),call_id:F.string().nullish()}))),Xk0=Q0(()=>n1(F.object({tools:F.array(F.record(F.string(),F.unknown()))}))),op9=E8({id:"openai.tool_search",inputSchema:eS0,outputSchema:Xk0}),ep9=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()}))),Xn9=Q0(()=>n1(F.object({}))),Yn9=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()}))),Gn9=E8({id:"openai.web_search",inputSchema:Xn9,outputSchema:Yn9}),Jn9=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()}))),Zn9=Q0(()=>n1(F.object({}))),Wn9=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()}))),$n9=E8({id:"openai.web_search_preview",inputSchema:Zn9,outputSchema:Wn9}),Yk0=F.lazy(()=>F.union([F.string(),F.number(),F.boolean(),F.null(),F.array(Yk0),F.record(F.string(),Yk0)])),Kn9=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."))),Hn9=Q0(()=>n1(F.object({}))),Fn9=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(),Yk0]).optional()}))),Un9=E8({id:"openai.mcp",inputSchema:Hn9,outputSchema:Fn9}),Nn9={applyPatch:Rp9,customTool:xp9,codeInterpreter:_p9,fileSearch:up9,imageGeneration:ip9,localShell:pp9,shell:ap9,webSearchPreview:$n9,webSearch:Qn9,mcp:Bn9,toolSearch:sp9};Dn9=F.object({itemId:F.string().nullish(),reasoningEncryptedContent:F.string().nullish()});fZ1=F.lazy(()=>F.union([F.string(),F.number(),F.boolean(),F.null(),F.array(fZ1),F.record(F.string(),fZ1.optional())])),wn9=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(),fZ1.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(),fZ1.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}))]))),Ln9=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(),fZ1.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()}))),En9=["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"],ijY=["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",...En9],mb6=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(Yy6)]).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()})));hn9=Q0(()=>n1(F.object({instructions:F.string().nullish(),speed:F.number().min(0.25).max(4).default(1).nullish()}))),un9=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()}))),ln9=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()}))),pb6={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"};GMY=Qk0()});function cn9(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 in9="https://assets.decocache.com/decocms/d138aa7e-5b8c-4821-9e64-6aff40df2cdc/ChatGPT_logo.svg",Qy6;var Jy6=w(()=>{Gy6();Qy6={info:{id:"openai-compatible",name:"OpenAI Compatible",description:"Custom OpenAI-compatible endpoint",logo:in9},supportedMethods:["api-key"],create(X){let{baseUrl:Y,apiKey:G}=cn9(X),Q=Qk0({baseURL:Y,apiKey:G||"not-needed",name:"openai-compatible"}),J=Object.assign((...W)=>Q.chat(...W),Q,{languageModel:Q.chat});return{info:this.info,aiSdk:J,async listModels(){let W={};if(G)W.Authorization=`Bearer ${G}`;let Z=await fetch(`${Y}/models`,{headers:W,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 zJ(){let X=u4();return{...X.aiGatewayEnabled&&{deco:SG1},...X.localMode&&{"claude-code":jS0,codex:cS0},anthropic:o_6,google:kb6,openrouter:Vj1,"openai-compatible":Qy6}}var OL=w(()=>{s_6();jS1();_S1();Cb6();Jy6();z20();D20();l9()});function pn9(X){return X.includes("/")?X.split("/").slice(1).join("/"):X}function nn9(X){let Y=X.supported_parameters.includes("tools"),G=X.supported_parameters.includes("reasoning");return{providerId:"openrouter",modelId:pn9(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 Wy6(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 tn9(X){if(X){let Y=await X.get(Zy6,"openrouter");if(Y)return Wy6(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(nn9);if(X)await X.set(Zy6,"openrouter",Q);return Wy6(Q)}catch{return new Map}}function an9(X){let Y=X.replace(/\./g,"-"),G=X.replace(/-\d{8}$/,""),Q=G.replace(/\./g,"-");return[...new Set([X,Y,G,Q])]}function rn9(X){return X.providerId==="anthropic"||X.modelId.startsWith("anthropic/")}function Ky6(X,Y){if(rn9(Y)&&X.includes("vision")&&!X.includes("file"))return[...X,"file"];return X}function on9(X,Y){return X.map((G)=>{let J=an9(G.modelId).map(($)=>Y.get($)).find(Boolean),W=G.capabilities.length?G.capabilities:J?.capabilities??[],Z=Ky6(W,G);if(!J)return Z===W?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 Jk0{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=zJ()[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,W=zJ()[J];if(!W)throw Error(`Unknown provider: ${J}`);if(this.cache){let B=await this.cache.get(Y,J);if(B)return $y6(B,W,Q)}let $=await W.create(Q).listModels(),K=new Set,H=$.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 tn9(this.cache);H=on9(H,B)}else H=H.map((B)=>({...B,capabilities:Ky6(B.capabilities,B)}));let U=H.map((B)=>({...B,providerId:J}));if(this.cache)await this.cache.set(Y,J,U);return $y6(U,W,Q)}}function $y6(X,Y,G){let J=Y.create(G).asyncResearch;if(!J)return X;return X.map((W)=>J.canHandle(W.modelId)?{...W,asyncResearch:!0}:W)}var Zy6="_global";var Hy6=w(()=>{OL()});function bS1(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 sn9,readdir as en9,readFile as Fy6,stat as yS1,unlink as Xt9,writeFile as Yt9}from"fs/promises";import{createHmac as Gt9}from"crypto";import{dirname as Qt9,join as yZ1}from"path";function Zk0(X){let Y=X.replace(/[^a-zA-Z0-9_-]/g,"_");return yZ1(Jt9,Y)}function bZ1(X,Y){return yZ1(Zk0(X),Qr(Y))}class xZ1{orgId;baseUrl;constructor(X,Y){this.orgId=X;this.baseUrl=Y}async get(X){let Y=bZ1(this.orgId,X),G=await yS1(Y),Q=QA(X),J=await Fy6(Y),W=kV1(Q);return{content:W?new TextDecoder().decode(J):Buffer.from(J).toString("base64"),contentType:Q,encoding:W?"utf-8":"base64",size:G.size,lastModified:G.mtime}}async put(X,Y,G){let Q=bZ1(this.orgId,X);return await sn9(Qt9(Q),{recursive:!0}),await Yt9(Q,typeof Y==="string"?Buffer.from(Y,"utf-8"):Y),{key:X}}async list(X){let Y=X?.prefix?yZ1(Zk0(this.orgId),Qr(X.prefix)):Zk0(this.orgId),G;try{G=await en9(Y,{withFileTypes:!0})}catch{return{objects:[],isTruncated:!1}}let Q=X?.maxKeys??1000,J=X?.prefix,W=G.filter(($)=>$.isFile());if(X?.delimiter){let $=[],K=G.filter((O)=>O.isDirectory());for(let O of K){let D=J?`${J}/${O.name}/`:`${O.name}/`;$.push(D)}$.sort();let H=Q,U=$.slice(0,H);H-=U.length;let B=W.slice(0,H),N=$.length+W.length;return{objects:await Promise.all(B.map(async(O)=>{let D=await yS1(yZ1(Y,O.name));return{key:J?`${J}/${O.name}`:O.name,size:D.size,lastModified:D.mtime}})),isTruncated:N>Q,commonPrefixes:U.length>0?U:void 0}}return{objects:await Promise.all(W.slice(0,Q).map(async($)=>{let K=await yS1(yZ1(Y,$.name));return{key:J?`${J}/${$.name}`:$.name,size:K.size,lastModified:K.mtime}})),isTruncated:W.length>Q}}async delete(X){await Xt9(bZ1(this.orgId,X))}async head(X){let Y=await yS1(bZ1(this.orgId,X));return{contentType:QA(X),size:Y.size,lastModified:Y.mtime}}async presignedGetUrl(X){let Y=bZ1(this.orgId,X),G=await Fy6(Y),Q=QA(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=Qr(X),Q=Math.floor(Date.now()/1000)+Y,J=u4().encryptionKey||"dev-secret",W=`${this.orgId}:${G}:${Q}:PUT`,Z=Gt9("sha256",J).update(W).digest("hex"),$=new URL(`/api/dev-assets/${this.orgId}/${G}`,this.baseUrl);return $.searchParams.set("expires",Q.toString()),$.searchParams.set("signature",Z),$.searchParams.set("method","PUT"),$.toString()}}var Jt9="./data/assets";var Wk0=w(()=>{nT0();l9()});function Zt9(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 Wt9(X,Y){for(let[G,Q]of Object.entries(Y)){let J=X[G];if(!J||J.length===0){let W=X["*"];if(!W||W.length===0)return!1;if(W.includes("*"))continue;for(let Z of Q)if(!W.includes(Z))return!1;continue}if(J.includes("*"))continue;for(let W of Q)if(!J.includes(W))return!1}return!0}function Kk0(X){let{auth:Y,headers:G,role:Q,permissions:J,userId:W}=X,Z=Y.api.hasPermission;return{hasPermission:async($,K)=>{if(Q&&XR0.includes(Q))return!0;if(J)return Wt9(J,$);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:$,...H}}))?.success===!0)return!0;let B={};for(let z of Object.keys($))B[z]=["*"];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($)=>{return Y.api.createOrganization({headers:G,body:$})},update:async($)=>{return Y.api.updateOrganization({headers:G,body:$})},delete:async($)=>{await Y.api.deleteOrganization({headers:G,body:{organizationId:$}})},get:async($)=>{return Y.api.getFullOrganization({headers:G,query:$?{organizationId:$}:void 0})},list:async($)=>{return Y.api.listOrganizations({headers:G,query:$?{userId:$}:void 0})},addMember:async($)=>{return Y.api.addMember({headers:G,body:$})},removeMember:async($)=>{await Y.api.removeMember({headers:G,body:$})},listMembers:async($)=>{return Y.api.listMembers({headers:G,query:$?{organizationId:$.organizationId,limit:$.limit,offset:$.offset}:void 0})},updateMemberRole:async($)=>{return Y.api.updateMemberRole({headers:G,body:$})}},apiKey:{create:async($)=>{return Y.api.createApiKey({body:{...$,userId:W}})},list:async()=>{return Y.api.listApiKeys({headers:G})},update:async($)=>{return Y.api.updateApiKey({body:{...$,userId:W}})},delete:async($)=>{await Y.api.deleteApiKey({headers:G,body:{keyId:$}})}}}}async function Hk0(X,Y,G){if(XR0.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 $t9(X,Y,G,Q=By6,J){let W=X.headers.get("Authorization");try{let Z=new Headers(X.headers);Z.set("X-MCP-Session-Auth","true");let $=await Q.measure("auth_get_mcp_session",()=>Y.api.getMcpSession({headers:Z}));if($){let K=$.userId,H=X.headers.get("x-org-id"),U=X.headers.get("x-org-slug"),B=await Q.measure("auth_query_membership",()=>{let D=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 D.where("organization.id","=",H).executeTakeFirst();if(U)return D.where("organization.slug","=",U).executeTakeFirst();return D.executeTakeFirst()}),N=B?.role,z=B?{id:B.orgId,slug:B.orgSlug,name:B.orgName}:void 0;if(B&&N)J?.set(K,B.organizationId,N);let O;if(B&&N)O=await Q.measure("auth_fetch_role_permissions",()=>Hk0(G,B.organizationId,N));return{user:{id:K,role:N},role:N,permissions:O,organization:z}}}catch(Z){console.error("[Auth] OAuth session check failed:",Z)}if(W?.startsWith("Bearer ")){let Z=W.replace("Bearer ","").trim();try{let $=await Q.measure("auth_verify_mesh_jwt",()=>CT6(Z));if($){let K,H=$.metadata?.organizationId;if($.sub&&H){let N=J?.get($.sub,H);if(N)K=N;else if(K=(await Q.measure("auth_query_membership",()=>G.selectFrom("member").select(["member.role"]).where("member.userId","=",$.sub).where("member.organizationId","=",H).executeTakeFirst()))?.role,K)J?.set($.sub,H,K)}let U,B=$.metadata?.organizationId;if(B){let N=$.metadata?.organizationName,z=$.metadata?.organizationSlug;if(N||z)U={id:B,name:N,slug:z};else{let O=await Q.measure("auth_query_org_for_mesh_jwt",()=>G.selectFrom("organization").select(["id","slug","name"]).where("id","=",B).executeTakeFirst());U=O?{id:O.id,slug:O.slug,name:O.name}:{id:B}}}return{user:{id:$.sub,connectionId:$.metadata?.connectionId,role:K},role:K,permissions:$.permissions,organization:U}}}catch{}try{let $=await Q.measure("auth_verify_api_key",()=>Y.api.verifyApiKey({body:{key:Z}}));if($?.valid&&$.key){let K=$.key.metadata?.organization,H=$.key.permissions,U,B=$.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:$.key.id,user:{id:$.key.userId,role:U},role:U,permissions:H,organization:K?{id:K.id,slug:K.slug,name:K.name}:void 0}}}catch($){console.error("[Auth] API key check failed:",$)}}try{let Z=new Headers(X.headers);Z.delete("Authorization");let $=await Q.measure("auth_get_session",()=>Y.api.getSession({headers:Z}));if($){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 z=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","=",$.user.id);if(U)z=z.where("organization.id","=",U);else if(B)z=z.where("organization.slug","=",B);return z.executeTakeFirst()});if(N)K={id:N.orgId,slug:N.orgSlug,name:N.orgName},H=N.role}else if($.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((O)=>O.userId===$.user.id)?.role;else K={id:$.session.activeOrganizationId,slug:"",name:""}}return{user:{id:$.user.id,email:$.user.email,emailVerified:!!$.user.emailVerified,name:$.user.name,image:$.user.image??void 0,role:H},role:H,organization:K}}}catch(Z){let $=Z;console.error("[Auth] Session check failed:",JSON.stringify({message:$.message,body:$.body,stack:$.stack},null,2))}return{user:void 0}}async function Ny6(X){let Y=new uM(X.encryption.key),G=u4().clickhouseUrl,Q=!!G,J=Q?"clickhouse":"duckdb",W,Z;if(Q)W=new SJ1(G),Z=new SJ1(G);else{let{engine:D}=await fM0({basePath:AD()}),{engine:E}=await fM0({basePath:RV()});W=D,Z=E}let{resolve:$}=await import("path"),K=$(AD()),H=$(RV()),U=Q?(D)=>"monitoring_logs":(D)=>`read_ndjson('${K}/${D}/**/*.ndjson', auto_detect=true)`,B=process.env.USE_METRICS_ROLLUP!=="false",N=Q?(D)=>B?"monitoring_metrics_rollup_1m":"monitoring_metrics":(D)=>`read_ndjson('${H}/${D}/**/*.ndjson', auto_detect=true)`,z=new yJ1(X.db),O={connections:new _G1(X.db,Y),organizationSettings:new bM0(X.db),monitoring:new bj0(W,U,Z,N,J),virtualMcps:new fG1(X.db),users:new nM0(X.db),tags:new pM0(X.db),virtualMcpPluginConfigs:new yM0(X.db),aiProviderKeys:new CG1(X.db,Y),oauthPkceStates:new GR0(X.db),automations:MR1(X.db),triggerCallbackTokens:new kJ1(X.db),orgSsoConfig:new uM0(X.db,Y),orgSsoSessions:new lM0(X.db),registry:{items:new Mo(X.db),publishRequests:new Ro(X.db),publishApiKeys:new So(X.db),monitorRuns:new bR1(X.db),monitorResults:new yR1(X.db),monitorConnections:new xR1(X.db)},brandContext:new CJ1(X.db),organizationDomains:new mw(X.db)};return async(D,E)=>{let P=E?.timings??By6,q=vo(),j=D?await X.observability.tracer.startActiveSpan("mesh.auth",async(u)=>{try{let a=await $t9(D,X.auth,X.db,P,X.memberRoleCache);return u.setStatus({code:$k0.SpanStatusCode.OK}),a}catch(a){throw u.setStatus({code:$k0.SpanStatusCode.ERROR,message:a.message}),u.recordException(a),a}finally{u.end()}}):{user:void 0},M=D?.headers.get("x-caller-id")??j.user?.connectionId??void 0,I=Kk0({auth:X.auth,headers:D?.headers??new Headers,role:j.role,permissions:j.permissions,userId:j.user?.id}),R={user:j.user};if(j.apiKeyId)R.apiKey={id:j.apiKeyId,name:"",userId:""};let C=j.organization,_=D?u4().baseUrl??`${new URL(D.url).origin}`:a$(),v=new RR(X.auth,R.user?.id,void 0,I,j.role,"self",void 0,C?.id),y={...O,threads:new bJ1(z,C?.id)},h=new Jk0(y.aiProviderKeys,X.modelListCache),d=Jr(),p=!C?null:d?bS1(d,C.id):new xZ1(C.id,_),f={timings:P,auth:R,connectionId:M,organization:C,storage:y,vault:Y,authInstance:X.auth,boundAuth:I,access:v,db:X.db,tracer:X.observability.tracer,meter:X.observability.meter,baseUrl:_,objectStorage:p,metadata:{requestId:crypto.randomUUID(),timestamp:new Date,wellKnownForwardableHeaders:Object.fromEntries(Kt9.map((u)=>[u,D?.headers.get(u)??null]).filter(([u,a])=>a!==null)),userAgent:D?.headers.get("x-mesh-client")||D?.headers.get("User-Agent")||void 0,ipAddress:(D?.headers.get("CF-Connecting-IP")||D?.headers.get("X-Forwarded-For"))??void 0,properties:Zt9(D?.headers.get("x-mesh-properties"))},eventBus:X.eventBus,aiProviders:h,createMCPProxy:async(u)=>{return await GC6(u,f)},invalidateMemberRole:X.memberRoleCache?(u,a)=>X.memberRoleCache.invalidate(u,a):void 0,getOrCreateClient:q,pendingRevalidations:[],firecrawlApiKey:u4().firecrawlApiKey};return f}}var $k0,Uy6,eU,By6,Kt9;var hZ1=w(()=>{lM();jj1();l9();lw();E20();P20();GR6();fk6();oK();bk6();xM0();gM0();pk6();nk6();hR1();uR1();_J1();dR1();cR1();w20();Hy6();CV1();Wk0();$k0=X1(x0(),1);eU={set:(X)=>{Uy6=X},create:async(X,Y)=>{return await Uy6(X,Y)}},By6={measure:async(X,Y)=>{return await Y()}},Kt9=["x-hub-signature-256"]});async function zy6(X,Y,G){return(await Y.storage.connections.findById(X,G))?.connection_url??null}function Ht9(X){let Y=X.toLowerCase();return Y.includes("resource_metadata=")||Y.includes("invalid_token")||Y.includes("oauth")}async function Oy6(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(Ht9(Q))return Q}if(await Ft9(X))return'Bearer realm="mcp"'}return null}catch{return null}}async function Ft9(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 Ys(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(!Fk0.includes(J.status))return J;let W=new URL(X);if(W.pathname=`/.well-known/oauth-protected-resource${G}`,J=await fetch(W.toString(),{method:"GET",headers:{Accept:"application/json"}}),!Fk0.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 Ut9(X,Y){let G=await zy6(X,Y);if(!G)return null;let Q;try{Q=new URL(G).origin}catch{return null}try{let J=await Ys(G);if(J.ok){let W=await J.json();if(W.authorization_servers?.[0])return W.authorization_servers[0]}}catch{}return Q}async function Dy6(X){let Y=X.get("meshContext");if(!Y)Y=await eU.create(X.req.raw),X.set("meshContext",Y);return Y}function wy6(X){return X?`/api/${X}`:""}async function Ly6({error:X,reqUrl:Y,connectionId:G,connectionUrl:Q,headers:J,orgSlug:W}){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 Oy6(Q,J))){let H=wy6(W);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 uZ1(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 $=new URL(X);$.pathname=`/.well-known/openid-configuration${G}`,J.push($);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 $=new URL(X);$.pathname="/.well-known/openid-configuration",J.push($)}let W=null;for(let Z of J){if(W=await fetch(Z.toString(),{method:"GET",headers:{Accept:"application/json"}}),W.ok)return W;if(W.status!==404&&W.status!==401)return W}return W}var Fk0,Ey6=(X)=>{if(!(X.hostname==="localhost"||X.hostname.endsWith(".localhost")||X.hostname==="127.0.0.1"))X.protocol="https:";return X},gZ1=async(X)=>{let Y=X.req.param("connectionId"),G=await Dy6(X),Q=Ey6(new URL(X.req.url)),J=G.organization?.slug??X.req.param("org"),W;if(J)if(G.organization?.id&&G.organization.slug===J)W=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);W=U.id}let Z=await zy6(Y,G,W);if(!Z)return X.json({error:"Connection not found"},404);let $=wy6(J),K=`${Q.origin}${$}/mcp/${Y}`,H=`${Q.origin}/oauth-proxy/${Y}`;try{let U=await Ys(Z);if(!U.ok&&Fk0.includes(U.status)){if(await Oy6(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 O={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(O),{status:200,headers:{"Content-Type":"application/json"}})}let z={...B,resource:K,authorization_servers:[H]};return new Response(JSON.stringify(z),{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)}},Uk0=()=>{let X=new A6;return X.get("/.well-known/oauth-protected-resource/mcp/:connectionId",(Y)=>gZ1(Y)),X.get("/mcp/:connectionId/.well-known/oauth-protected-resource",(Y)=>gZ1(Y)),X},Py6=()=>{let X=new A6;return X.get("/mcp/:connectionId/.well-known/oauth-protected-resource",(Y)=>gZ1(Y)),X},Bt9=async(X)=>{let Y=X.req.param("connectionId"),G=await Dy6(X),Q=await Ut9(Y,G);if(!Q)return X.json({error:"Connection not found or no auth server"},404);try{let J=await uZ1(Q);if(!J.ok)return new Response(J.body,{status:J.status,statusText:J.statusText,headers:{"Content-Type":"application/json"}});let W=await J.json(),$=`${Ey6(new URL(X.req.url)).origin}/oauth-proxy/${Y}`,K={...W,authorization_endpoint:W.authorization_endpoint?`${$}/authorize`:void 0,token_endpoint:W.token_endpoint?`${$}/token`:void 0,registration_endpoint:W.registration_endpoint?`${$}/register`:void 0};return new Response(JSON.stringify(K),{status:200,headers:{"Content-Type":"application/json"}})}catch(J){let W=J;return console.error("[oauth-proxy] Failed to proxy auth server metadata:",W),X.json({error:"Failed to proxy auth server metadata",message:W.message},502)}},Bk0=()=>{let X=new A6;return X.get("/.well-known/oauth-authorization-server/oauth-proxy/:connectionId",Bt9),X},qy6;var lZ1=w(()=>{iX();hZ1();Fk0=[404,401,406];qy6=new A6;qy6.route("/",Uk0());qy6.route("/",Bk0())});async function xS1(X){try{let Y;try{let Q=await Ys(X);if(Q.ok)Y=(await Q.json()).authorization_servers?.[0]}catch{}if(!Y)Y=new URL(X).origin;let G=await uZ1(Y);if(G.ok)return(await G.json()).token_endpoint??null;return null}catch{return null}}var Nk0=w(()=>{lZ1()});class V3{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(W)=>{let Z=await W.selectFrom("downstream_tokens").select(["id","createdAt"]).where("connectionId","=",X.connectionId).executeTakeFirst();if(Z)return await W.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 $=m7("dtok");return await W.insertInto("downstream_tokens").values({id:$,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:$,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 iR=w(()=>{kH()});function Nt9(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,...W}=Q;Y[G]=W}else Y[G]=Q;return Y}async function Ok0(X,Y,G){return Y.tracer.startActiveSpan("mesh.connection.build_headers",{attributes:{"connection.id":X.id}},async(Q)=>{try{let J=await zt9(X,Y,G);return Q.setStatus({code:zk0.SpanStatusCode.OK}),J}catch(J){throw Q.setStatus({code:zk0.SpanStatusCode.ERROR,message:J.message}),Q.recordException(J),J}finally{Q.end()}})}async function zt9(X,Y,G){let Q=X.id,J=Rj0(X.configuration_state,X.configuration_scopes),W=Y.auth.user,Z=W?.id??Y.auth.apiKey?.userId??(G?X.created_by:void 0),[$,K]=Z?await kT6({sub:Z,user:{id:Z,email:W?.email,name:W?.name,image:W?.image,role:W?.role},metadata:{state:Nt9(X.configuration_state),meshUrl:Y.baseUrl,connectionId:Q,organizationId:Y.organization?.id,organizationName:Y.organization?.name,organizationSlug:Y.organization?.slug},permissions:J}).then((O)=>[O,null]).catch((O)=>[null,O]):[null,Error("User ID required to issue configuration token")];if(K)console.error("Failed to issue configuration token:",$);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 V3(Y.db,Y.vault),z=await N.get(Q);if(z){let O=!!z.refreshToken&&!!z.tokenEndpoint;if(N.isExpired(z,O?300000:0))if(O){let E=z.tokenEndpoint;if(X.connection_url&&z.tokenEndpoint?.includes("/oauth-proxy/")){let q=await xS1(X.connection_url);if(q)E=q}let P=await qQ1({...z,tokenEndpoint:E});if(P.success&&P.accessToken)await N.upsert({connectionId:Q,accessToken:P.accessToken,refreshToken:P.refreshToken??z.refreshToken,scope:P.scope??z.scope,expiresAt:P.expiresIn?new Date(Date.now()+P.expiresIn*1000):null,clientId:z.clientId,clientSecret:z.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: ${!!z.refreshToken}, tokenEndpoint: ${!!z.tokenEndpoint})`);else B=z.accessToken}if(!B&&X.connection_token)B=X.connection_token;if(B)U.Authorization=`Bearer ${B}`;if($)U["x-mesh-token"]=$;return U}var zk0;var Ay6=w(()=>{Sj0();lM();nM1();Nk0();iR();zk0=X1(x0(),1)});function Ty6(X){let Y=new bG1({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",(W)=>{let Z=W.toString().trimEnd();if(Z)console.error(`${Z} \x1B[2m[${G}]\x1B[0m`)}),Y}var Iy6=w(()=>{C20()});var Ot9="mcp.mesh",Gs;var Vy6=w(()=>{gH();hR1();Et();Gs=class Gs extends Ot{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??UQ(),Y=await IA("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 W=async()=>{return(await this.ensureToolsMap()).get(G)?._meta};await new RR(Q.authInstance,Q.auth.user?.id??Q.auth.apiKey?.userId,G,Q.boundAuth,Q.organization?.role??Q.auth.user?.role,J.id,W,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[Ot9]?.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 Dk0{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 dZ1(X,Y){try{if(!X.organizationId)return;let G=wk0.redact(X.toolArguments??{}),Q=wk0.redact(X.result??{}),J=X.errorMessage?wk0.redactString(X.errorMessage):"";mZ1.logs.getLogger("mesh.monitoring","1.0.0").emit({severityNumber:X.isError?mZ1.SeverityNumber.ERROR:mZ1.SeverityNumber.INFO,severityText:X.isError?"ERROR":"INFO",body:X.toolName,attributes:{[R5.TYPE]:X.type??K51,[R5.ORGANIZATION_ID]:X.organizationId,[R5.CONNECTION_ID]:X.connectionId,[R5.CONNECTION_TITLE]:"",[R5.TOOL_NAME]:X.toolName,[R5.INPUT]:B51(JSON.stringify(G)),[R5.OUTPUT]:B51(JSON.stringify(Q)),[R5.IS_ERROR]:X.isError,[R5.ERROR_MESSAGE]:J,[R5.DURATION_MS]:X.duration,[R5.USER_ID]:X.userId||"",[R5.REQUEST_ID]:X.requestId,[R5.USER_AGENT]:X.userAgent||"",[R5.VIRTUAL_MCP_ID]:X.virtualMcpId||"",[R5.PROPERTIES]:X.properties?JSON.stringify(X.properties):""},context:Y})}catch{}}var mZ1,wk0;var hS1=w(()=>{oK();fG0();mZ1=X1(N81(),1),wk0=new Dk0});function Lk0(X){let{ctx:Y,organizationId:G,connectionId:Q,toolName:J,durationMs:W,isError:Z}=X;if(!G||!Q||!J)return;let $={"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,$)}function jy6(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 My6(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,W]of Object.entries(G))if(typeof W==="string")Q[J]=W;return Object.keys(Q).length>0?Q:void 0}function Ry6(X,Y){if(!X&&!Y)return;if(!X)return Y;if(!Y)return X;return{...Y,...X}}var Sy6=w(()=>{q7();hS1();oK()});var cZ1,Qs;var ky6=w(()=>{Et();hS1();Sy6();cZ1=X1(x0(),1);Qs=class Qs extends Ot{options;inflightRequests=new Map;requestContext;constructor(X,Y){super(X);this.options=Y;this.requestContext=cZ1.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 W;if(X.method==="tools/call"&&Q)W=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:W})}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:W,toolName:Z,toolArguments:$,span:K}=Y,H=Date.now()-J;if(this.inflightRequests.delete(X.id),W!=="tools/call"||!Z)return;let U=G.organization?.id??"",B="error"in X,N=B?X.error:X.result,z=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)Lk0({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 O=My6($),D=Ry6(G.metadata.properties,O),E=cZ1.trace.setSpan(cZ1.context.active(),K);dZ1({organizationId:G.organization?.id??"",connectionId:Q,toolName:Z,toolArguments:$,result:z,duration:H,isError:Boolean(B),errorMessage:jy6(z)||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:D||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 Cy6=w(()=>{Et();Vy6();ky6()});async function vy6(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(!u4().localMode)throw Error("STDIO connections are only available in local mode (--local-mode).");let W=X.connection_headers;if(!tN(W))throw Error("STDIO connection missing parameters");let Z=Ty6({id:Q,name:X.title,command:W.command,args:W.args,env:W.envVars,cwd:W.cwd});return Z=Dt(Z,($)=>new Gs($,{ctx:Y,connection:X,superUser:G}),($)=>new Qs($,{ctx:Y,connectionId:Q,virtualMcpId:J})),Dt9(Z,Q)}case"HTTP":case"Websocket":{if(!X.connection_url)throw Error(`${X.connection_type} connection missing URL`);let W=await Ok0(X,Y,G),Z=X.connection_headers;if(Z&&"headers"in Z)Object.assign(W,Z.headers);let $=new pN(new URL(X.connection_url),{requestInit:{headers:W}});return $=Dt($,(K)=>new Gs(K,{ctx:Y,connection:X,superUser:G}),(K)=>new Qs(K,{ctx:Y,connectionId:Q,virtualMcpId:J})),Y.getOrCreateClient($,Q)}case"SSE":{if(!X.connection_url)throw Error("SSE connection missing URL");let W=await Ok0(X,Y,G),Z=X.connection_headers;if(Z&&"headers"in Z)Object.assign(W,Z.headers);let $=new Xw(new URL(X.connection_url),{requestInit:{headers:W}});return $=Dt($,(K)=>new Gs(K,{ctx:Y,connection:X,superUser:G}),(K)=>new Qs(K,{ctx:Y,connectionId:Q,virtualMcpId:J})),Y.getOrCreateClient($,Q)}default:throw Error(`Unknown connection type: ${X.connection_type}`)}}var Dt9;var _y6=w(()=>{l9();cw();c71();Bt();Ay6();cR1();Iy6();Cy6();Dt9=vo()});function gS1(X){return X.toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-|-$/g,"")}function Ek0(X){if(X&&typeof X==="object"&&"gatewayClientId"in X&&typeof X.gatewayClientId==="string")return X.gatewayClientId;return}function Pk0(X,Y){if(!Y)return X;let G=`${gS1(Y)}_`;return X.startsWith(G)?X.slice(G.length):X}function wt9(X){return X.split(/[-_]/).map((Y)=>Y?Y.charAt(0).toUpperCase()+Y.slice(1):Y).join(" ")}var uS1;var fy6=w(()=>{cN();uS1=class uS1 extends uY{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=gS1(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`${gS1(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=Ek0(Q._meta);if(!J)continue;if(Pk0(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=Ek0(Q._meta);if(!J)continue;if(Pk0(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,W=(typeof Q==="function"?Promise.resolve(Q()):Promise.resolve(Q)).catch((Z)=>{throw this.resolvedClients.delete(X),Z});return this.resolvedClients.set(X,W),W}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),W=G.tools,Z=W?new Set(W):null;for(let $ of J){if(Z&&!Z.has($.name))continue;X.push({...$,name:this.namespace(Y,$.name),_meta:{...$._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 W=await this.resolveClient(Q),Z=await this.fetchAllResources(W),$=J.resources,K=$?new Set($):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),W=await this.fetchAllResourceTemplates(J);for(let Z of W){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),W=G.prompts,Z=W?new Set(W):null;for(let $ of J){if(Z&&!Z.has($.name))continue;X.push({...$,name:this.namespace(Y,$.name),title:$.title??wt9($.name),_meta:{...$._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 by6=w(()=>{fy6()});var qk0;var yy6=w(()=>{by6();gR1();qk0=class qk0 extends uS1{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 W=G.get(J.id);Q[J.id]={client:()=>ko(J,Y,X.superUser??!1,X.mcpListCache),...W?.selected_tools!=null?{tools:W.selected_tools}:{},...W?.selected_resources!=null?{resources:W.selected_resources}:{},...W?.selected_prompts!=null?{prompts:W.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 Lt9(X,Y){if(X.connection_type!=="VIRTUAL")return!1;if(!Y||nN(Y))return!1;return X.id===Y}async function xy6(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 pR(J,Y,"passthrough",G)}async function pR(X,Y,G,Q=!1,J){let W=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":W.length}},async(H)=>{try{let U=await Promise.all(W.map((B)=>Y.storage.connections.findById(B)));return H.setStatus({code:Ak0.SpanStatusCode.OK}),U}catch(U){throw H.setStatus({code:Ak0.SpanStatusCode.ERROR,message:U.message}),H.recordException(U),U}finally{H.end()}})).filter((H)=>H!==null&&H.status==="active"&&!Lt9(H,X.id)),virtualMcp:X,superUser:Q,mcpListCache:UQ()??void 0,listTimeoutMs:J?.listTimeoutMs};return new qk0(K,Y)}var Ak0;var iZ1=w(()=>{q7();gH();yy6();Ak0=X1(x0(),1)});async function bW(X,Y,G=!1){if(X.connection_type==="VIRTUAL")return xy6(X,Y,G);return vy6(X,Y,G)}var sM0=w(()=>{_y6();iZ1()});function lS1(X){return(Y)=>{if(Y instanceof D4&&Y.code===V4.MethodNotFound)return X;throw Y}}var hy6=w(()=>{eX()});function Tk0(X,Y,G){let Q=ko(X,Y,G,UQ()??void 0),J=sD(Q,{name:"mcp-mesh-enhanced",version:"1.0.0"},{capabilities:Et9,toolCallTimeoutMs:nA});return J.server.setRequestHandler(Qq,async()=>{return await Q.listResources().catch(lS1({resources:[]}))}),J.server.setRequestHandler(Jq,async()=>{return await Q.listResourceTemplates().catch(lS1({resourceTemplates:[]}))}),J.server.setRequestHandler(Zq,async()=>{return await Q.listPrompts().catch(lS1({prompts:[]}))}),J}var Et9;var gy6=w(()=>{q7();eX();gR1();gH();hy6();Et9={tools:{},resources:{},prompts:{}}});var Js=w(()=>{sM0();gy6()});var Pt9,qt9,At9,Tt9,Ik0;var uy6=w(()=>{EQ1();hM6();PW();dM6();iM6();QG1();Ej();nM6();q7();K0();h0();lw();gH();Js();Wr();cw();L20();Pt9=[{name:/^(COLLECTION_REGISTRY_APP_LIST|REGISTRY_ITEM_LIST)$/,inputSchema:F.object({})}],qt9={LLM:cM1,LLMS:cM1,ASSISTANTS:xM6,MCP:cM6,OBJECT_STORAGE:jM,WORKFLOW:eF0,WORKFLOW_EXECUTION:Tn4,AI_GATEWAY_BILLING:pM6,EVENT_BUS:hM1,TRIGGER:gM1,REGISTRY:Pt9,BRAND:dM1},At9=OU.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.")}),Tt9=Gw(W3),Ik0=m1({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:At9,outputSchema:Tt9,handler:async(X,Y)=>{await Y.access.check();let G=s1(Y),Q=X.binding?typeof X.binding==="string"?(()=>{let B=qt9[X.binding.toUpperCase()];if(!B)throw Error(`Unknown binding: ${X.binding}`);return B})():X.binding:void 0,J=Q?Rq1(Q):void 0,W=!!J,Z=X.limit??100,$=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:W?void 0:Z,offset:W?void 0:$});if(J){let B=UQ(),N=P7.SELF(G.id);await Promise.all(K.map(async(z)=>{if(z.tools!==null)return;let O=z.id===N?async()=>{let{listManagementTools:E}=await Promise.resolve().then(() => (Zs(),mS1));return E(Y)}:async()=>{let E=await bW(z,Y,!0);try{return(await E.listTools()).tools}finally{await E.close().catch(()=>{})}},D=await IA("tools",z.id,O,B);if(D!==null)z.tools=D}))}if(CU()){let B=a$(),N=P7.DEV_ASSETS(G.id);if(!K.some((z)=>z.id===N)){let z=Zr(G.id,B);if(!X.slug||vG1(z)===X.slug)K.unshift(z)}}if(W){let B=(await Promise.all(K.map(async(D)=>{if(!D.tools||D.tools.length===0)return null;return J.isImplementedBy(D.tools.map((P)=>({name:P.name,inputSchema:P.inputSchema,outputSchema:P.outputSchema})))?D:null}))).filter((D)=>D!==null),N=B.length,z=B.slice($,$+Z),O=$+Z<N;return{items:z,totalCount:N,hasMore:O}}let U=$+Z<H;return{items:K,totalCount:H,hasMore:U}}})});var It9,Vk0;var ly6=w(()=>{PW();q7();h0();lw();gH();Js();Wr();cw();It9=p71(W3),Vk0=m1({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:i71,outputSchema:It9,handler:async(X,Y)=>{let G=s1(Y);if(await Y.access.check(),CU()&&vV1(X.id,G.id))return{item:Zr(G.id,a$())};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=P7.SELF(G.id),W=Q.id===J?async()=>{let{listManagementTools:$}=await Promise.resolve().then(() => (Zs(),mS1));return $(Y)}:async()=>{let $=await bW(Q,Y,!0);try{return(await $.listTools()).tools}finally{await $.close().catch(()=>{})}},Z=await IA("tools",Q.id,W,UQ(),($)=>Y.pendingRevalidations.push($));if(Z!==null)Q.tools=Z}return{item:Q}}})});function my6(X,Y,G){if(Y.some((Q)=>Q!=="*"&&Q.startsWith("SELF::"))&&X.SELF===void 0)X.SELF={value:`${G}_self`}}async function Mt9(X,Y,G,Q){for(let W of Y){if(W==="*")continue;let[Z]=tM6(W),$=iM1(Z,X);if($===void 0||$===null)throw Error(`Scope references key "${Z}" but it's not present in state`)}let J=aM6(X,Y);for(let W of J){if(W.endsWith("_self"))continue;let Z=await Q.storage.connections.findById(W);if(!Z||Z.organization_id!==G)throw Error(`Referenced connection not found: ${W}`);try{await Q.access.check(W)}catch($){throw Error(`Access denied to referenced connection: ${W}. ${$.message}`)}}}var Vt9,jt9,jk0;var dy6=w(()=>{Sj0();Js();iR();K0();h0();gH();yG1();cw();Vt9=F.object({id:F.string().describe("ID of the connection to update"),data:S71.describe("Partial connection data to update")}),jt9=F.object({item:W3.describe("The updated connection entity")});jk0=m1({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:Vt9,outputSchema:jt9,handler:async(X,Y)=>{N0(Y);let G=s1(Y);await Y.access.check();let Q=H6(Y);if(!Q)throw Error("User ID required to update connection");let{id:J,data:W}=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=W.connection_url??Z.connection_url;if($==="VIRTUAL"){let E=Nj(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=zj(E)}let H=W.configuration_state??Z.configuration_state??{},U=W.configuration_scopes??Z.configuration_scopes??[];if(W.configuration_state!==void 0||W.configuration_scopes!==void 0){if(W.configuration_state!==void 0)H=W.configuration_state??{};else if(H===null||H===void 0)H={};if(W.configuration_scopes!==void 0)U=W.configuration_scopes??[];if(U.length>0){let E=H;my6(E,U,G.id),await Mt9(E,U,G.id,Y)}}let B=W.connection_token??Z.connection_token;if(!B)try{let P=await new V3(Y.db,Y.vault).get(J);if(P?.accessToken)B=P.accessToken}catch{}let N=await UA({id:Z.id,title:W.title??Z.title,connection_type:$,connection_url:K,connection_token:B,connection_headers:W.connection_headers??Z.connection_headers}).catch(()=>null),z=N?.tools?.length?N.tools:null;if(W.configuration_scopes===void 0&&N?.scopes?.length)U=N.scopes;my6(H,U,G.id);let O={...W,connection_url:K,tools:null,configuration_state:H,configuration_scopes:U,updated_by:Q},D=await Y.storage.connections.update(J,O);if(z)UQ()?.set("tools",J,z).catch(()=>{});if((W.configuration_state!==void 0||W.configuration_scopes!==void 0)&&H&&U)try{await(await bW(D,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:D}}})});var Rt9,Mk0;var cy6=w(()=>{PW();K0();CX();h0();gH();cw();Rt9=n71.extend({force:F.boolean().optional().describe("If true, removes this connection from all agents that reference it before deleting")}),Mk0=m1({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:Rt9,outputSchema:t71(W3),handler:async(X,Y)=>{N0(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 W=await Y.storage.virtualMcps.listByConnectionId(G.id,X.id);if(W.length>0)if(X.force)await Y.storage.virtualMcps.removeConnectionReferences(X.id);else throw Error(JSON.stringify({code:"CONNECTION_IN_USE",agentNames:W.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}})}}UQ()?.invalidate(X.id).catch(()=>{});let $=H6(Y);if($)M6.capture({distinctId:$,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 Rk0;var iy6=w(()=>{K0();h0();Rk0=m1({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 py6=w(()=>{LM6();uy6();ly6();dy6();cy6();iy6()});function ny6(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 Ct9(X,Y){let G=X;for(let J=Y.length;J>=1;J--){let W=`$${J}`;if(G.includes(W))G=G.replaceAll(W,ny6(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 W=Q[J],Z=ny6(Y[J]);G=G.slice(0,W)+Z+G.slice(W+1)}return G}function ty6(X){return X.replace(/-/g,"_")}function _t9(X){return`app_${ty6(X)}`}function ft9(X){return`app_role_${ty6(X)}`}function bt9(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 yt9(X,Y,G){if(await U1`CREATE SCHEMA IF NOT EXISTS ${U1.id(Y)}`.execute(X),!(await U1`
|
|
2405
|
+
${Y}:`]}}function bb6({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 yb6(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 Ip9(X){return Tp9.some((Y)=>X.startsWith(Y))}function gb6(X,Y,G){if(X==null)return{};let Q={};if(X.image_tokens!=null){let J=Math.floor(X.image_tokens/G),W=X.image_tokens-J*(G-1);Q.imageTokens=Y===G-1?W:J}if(X.text_tokens!=null){let J=Math.floor(X.text_tokens/G),W=X.text_tokens-J*(G-1);Q.textTokens=Y===G-1?W:J}return Q}async function jp9(X){if(!X)return;if(X.type==="url")return FR0(X.url);let Y=X.data instanceof Uint8Array?X.data:PG(X.data);return new Blob([Y],{type:X.mediaType})}function ub6(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:W,output_tokens:Z}=X,$=(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:W,noCache:W-$,cacheRead:$,cacheWrite:void 0},outputTokens:{total:Z,text:Z-K,reasoning:K},raw:X}}function zn9(X){return JSON.stringify(X===void 0?{}:X)}function lb6(X,Y){if(!Y)return!1;return Y.some((G)=>X.startsWith(G))}async function On9({prompt:X,toolNameMapping:Y,systemMessageMode:G,providerOptionsName:Q,fileIdPrefixes:J,store:W,hasConversation:Z=!1,hasLocalShellTool:$=!1,hasShellTool:K=!1,hasApplyPatchTool:H=!1,customProviderToolNames:U}){var B,N,z,O,D,E,P,q,j,M,I,R,C,_,v,y,h;let d=[],p=[],f=new Set;for(let{role:u,content:a}of X)switch(u){case"system":{switch(G){case"system":{d.push({role:"system",content:a});break}case"developer":{d.push({role:"developer",content:a});break}case"remove":{p.push({type:"other",message:"system messages are removed for this model"});break}default:throw Error(`Unsupported system message mode: ${G}`)}break}case"user":{d.push({role:"user",content:a.map((r,F1)=>{var w1,$1,O1;switch(r.type){case"text":return{type:"input_text",text:r.text};case"file":if(r.mediaType.startsWith("image/")){let v1=r.mediaType==="image/*"?"image/jpeg":r.mediaType;return{type:"input_image",...r.data instanceof URL?{image_url:r.data.toString()}:typeof r.data==="string"&&lb6(r.data,J)?{file_id:r.data}:{image_url:`data:${v1};base64,${KZ(r.data)}`},detail:($1=(w1=r.providerOptions)==null?void 0:w1[Q])==null?void 0:$1.imageDetail}}else if(r.mediaType==="application/pdf"){if(r.data instanceof URL)return{type:"input_file",file_url:r.data.toString()};return{type:"input_file",...typeof r.data==="string"&&lb6(r.data,J)?{file_id:r.data}:{filename:(O1=r.filename)!=null?O1:`part-${F1}.pdf`,file_data:`data:application/pdf;base64,${KZ(r.data)}`}}}else throw new I5({functionality:`file part media type ${r.mediaType}`})}})});break}case"assistant":{let r={};for(let F1 of a)switch(F1.type){case"text":{let w1=(B=F1.providerOptions)==null?void 0:B[Q],$1=w1==null?void 0:w1.itemId,O1=w1==null?void 0:w1.phase;if(Z&&$1!=null)break;if(W&&$1!=null){d.push({type:"item_reference",id:$1});break}d.push({role:"assistant",content:[{type:"output_text",text:F1.text}],id:$1,...O1!=null&&{phase:O1}});break}case"tool-call":{let w1=(E=(z=(N=F1.providerOptions)==null?void 0:N[Q])==null?void 0:z.itemId)!=null?E:(D=(O=F1.providerMetadata)==null?void 0:O[Q])==null?void 0:D.itemId;if(Z&&w1!=null)break;let $1=Y.toProviderToolName(F1.toolName);if($1==="tool_search"){if(W&&w1!=null){d.push({type:"item_reference",id:w1});break}let O1=typeof F1.input==="string"?await NR0({text:F1.input,schema:eS0}):await L8({value:F1.input,schema:eS0}),v1=O1.call_id!=null?"client":"server";d.push({type:"tool_search_call",id:w1!=null?w1:F1.toolCallId,execution:v1,call_id:(P=O1.call_id)!=null?P:null,status:"completed",arguments:O1.arguments});break}if(F1.providerExecuted){if(W&&w1!=null)d.push({type:"item_reference",id:w1});break}if(W&&w1!=null){d.push({type:"item_reference",id:w1});break}if($&&$1==="local_shell"){let O1=await L8({value:F1.input,schema:sb6});d.push({type:"local_shell_call",call_id:F1.toolCallId,id:w1,action:{type:"exec",command:O1.action.command,timeout_ms:O1.action.timeoutMs,user:O1.action.user,working_directory:O1.action.workingDirectory,env:O1.action.env}});break}if(K&&$1==="shell"){let O1=await L8({value:F1.input,schema:Xy6});d.push({type:"shell_call",call_id:F1.toolCallId,id:w1,status:"completed",action:{commands:O1.action.commands,timeout_ms:O1.action.timeoutMs,max_output_length:O1.action.maxOutputLength}});break}if(H&&$1==="apply_patch"){let O1=await L8({value:F1.input,schema:tb6});d.push({type:"apply_patch_call",call_id:O1.callId,id:w1,status:"completed",operation:O1.operation});break}if(U==null?void 0:U.has($1)){d.push({type:"custom_tool_call",call_id:F1.toolCallId,name:$1,input:typeof F1.input==="string"?F1.input:JSON.stringify(F1.input),id:w1});break}d.push({type:"function_call",call_id:F1.toolCallId,name:$1,arguments:zn9(F1.input),id:w1});break}case"tool-result":{if(F1.output.type==="execution-denied"||F1.output.type==="json"&&typeof F1.output.value==="object"&&F1.output.value!=null&&"type"in F1.output.value&&F1.output.value.type==="execution-denied")break;if(Z)break;let w1=Y.toProviderToolName(F1.toolName);if(w1==="tool_search"){let $1=(M=(j=(q=F1.providerOptions)==null?void 0:q[Q])==null?void 0:j.itemId)!=null?M:F1.toolCallId;if(W)d.push({type:"item_reference",id:$1});else if(F1.output.type==="json"){let O1=await L8({value:F1.output.value,schema:Xk0});d.push({type:"tool_search_output",id:$1,execution:"server",call_id:null,status:"completed",tools:O1.tools})}break}if(K&&w1==="shell"){if(F1.output.type==="json"){let $1=await L8({value:F1.output.value,schema:sS0});d.push({type:"shell_call_output",call_id:F1.toolCallId,output:$1.output.map((O1)=>({stdout:O1.stdout,stderr:O1.stderr,outcome:O1.outcome.type==="timeout"?{type:"timeout"}:{type:"exit",exit_code:O1.outcome.exitCode}}))})}break}if(W){let $1=(C=(R=(I=F1.providerOptions)==null?void 0:I[Q])==null?void 0:R.itemId)!=null?C:F1.toolCallId;d.push({type:"item_reference",id:$1})}else p.push({type:"other",message:`Results for OpenAI tool ${F1.toolName} are not sent to the API when store is false`});break}case"reasoning":{let w1=await f5({provider:Q,providerOptions:F1.providerOptions,schema:Dn9}),$1=w1==null?void 0:w1.itemId;if(Z&&$1!=null)break;if($1!=null){let O1=r[$1];if(W){if(O1===void 0)d.push({type:"item_reference",id:$1}),r[$1]={type:"reasoning",id:$1,summary:[]}}else{let v1=[];if(F1.text.length>0)v1.push({type:"summary_text",text:F1.text});else if(O1!==void 0)p.push({type:"other",message:`Cannot append empty reasoning part to existing reasoning sequence. Skipping reasoning part: ${JSON.stringify(F1)}.`});if(O1===void 0)r[$1]={type:"reasoning",id:$1,encrypted_content:w1==null?void 0:w1.reasoningEncryptedContent,summary:v1},d.push(r[$1]);else if(O1.summary.push(...v1),(w1==null?void 0:w1.reasoningEncryptedContent)!=null)O1.encrypted_content=w1.reasoningEncryptedContent}}else{let O1=w1==null?void 0:w1.reasoningEncryptedContent;if(O1!=null){let v1=[];if(F1.text.length>0)v1.push({type:"summary_text",text:F1.text});d.push({type:"reasoning",encrypted_content:O1,summary:v1})}else p.push({type:"other",message:`Non-OpenAI reasoning parts are not supported. Skipping reasoning part: ${JSON.stringify(F1)}.`})}break}}break}case"tool":{for(let r of a){if(r.type==="tool-approval-response"){let O1=r;if(f.has(O1.approvalId))continue;if(f.add(O1.approvalId),W)d.push({type:"item_reference",id:O1.approvalId});d.push({type:"mcp_approval_response",approval_request_id:O1.approvalId,approve:O1.approved});continue}let F1=r.output;if(F1.type==="execution-denied"){if((v=(_=F1.providerOptions)==null?void 0:_.openai)==null?void 0:v.approvalId)continue}let w1=Y.toProviderToolName(r.toolName);if(w1==="tool_search"&&F1.type==="json"){let O1=await L8({value:F1.value,schema:Xk0});d.push({type:"tool_search_output",execution:"client",call_id:r.toolCallId,status:"completed",tools:O1.tools});continue}if($&&w1==="local_shell"&&F1.type==="json"){let O1=await L8({value:F1.value,schema:eb6});d.push({type:"local_shell_call_output",call_id:r.toolCallId,output:O1.output});continue}if(K&&w1==="shell"&&F1.type==="json"){let O1=await L8({value:F1.value,schema:sS0});d.push({type:"shell_call_output",call_id:r.toolCallId,output:O1.output.map((v1)=>({stdout:v1.stdout,stderr:v1.stderr,outcome:v1.outcome.type==="timeout"?{type:"timeout"}:{type:"exit",exit_code:v1.outcome.exitCode}}))});continue}if(H&&r.toolName==="apply_patch"&&F1.type==="json"){let O1=await L8({value:F1.value,schema:ab6});d.push({type:"apply_patch_call_output",call_id:r.toolCallId,status:O1.status,output:O1.output});continue}if(U==null?void 0:U.has(w1)){let O1;switch(F1.type){case"text":case"error-text":O1=F1.value;break;case"execution-denied":O1=(y=F1.reason)!=null?y:"Tool execution denied.";break;case"json":case"error-json":O1=JSON.stringify(F1.value);break;case"content":O1=F1.value.map((v1)=>{var o1;switch(v1.type){case"text":return{type:"input_text",text:v1.text};case"image-data":return{type:"input_image",image_url:`data:${v1.mediaType};base64,${v1.data}`};case"image-url":return{type:"input_image",image_url:v1.url};case"file-data":return{type:"input_file",filename:(o1=v1.filename)!=null?o1:"data",file_data:`data:${v1.mediaType};base64,${v1.data}`};case"file-url":return{type:"input_file",file_url:v1.url};default:p.push({type:"other",message:`unsupported custom tool content part type: ${v1.type}`});return}}).filter(_R);break;default:O1=""}d.push({type:"custom_tool_call_output",call_id:r.toolCallId,output:O1});continue}let $1;switch(F1.type){case"text":case"error-text":$1=F1.value;break;case"execution-denied":$1=(h=F1.reason)!=null?h:"Tool execution denied.";break;case"json":case"error-json":$1=JSON.stringify(F1.value);break;case"content":$1=F1.value.map((O1)=>{var v1;switch(O1.type){case"text":return{type:"input_text",text:O1.text};case"image-data":return{type:"input_image",image_url:`data:${O1.mediaType};base64,${O1.data}`};case"image-url":return{type:"input_image",image_url:O1.url};case"file-data":return{type:"input_file",filename:(v1=O1.filename)!=null?v1:"data",file_data:`data:${O1.mediaType};base64,${O1.data}`};case"file-url":return{type:"input_file",file_url:O1.url};default:{p.push({type:"other",message:`unsupported tool content part type: ${O1.type}`});return}}}).filter(_R);break}d.push({type:"function_call_output",call_id:r.toolCallId,output:$1})}break}default:throw Error(`Unsupported role: ${u}`)}if(!W&&d.some((u)=>("type"in u)&&u.type==="reasoning"&&u.encrypted_content==null))p.push({type:"other",message:"Reasoning parts without encrypted content are not supported when store is false. Skipping reasoning parts."}),d=d.filter((u)=>!("type"in u)||u.type!=="reasoning"||u.encrypted_content!=null);return{input:d,warnings:p}}function oS0({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 Pn9({tools:X,toolChoice:Y,toolNameMapping:G,customProviderToolNames:Q}){var J,W;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 $=[],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;$.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 L8({value:U.args,schema:hp9});$.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":{$.push({type:"local_shell"});break}case"openai.shell":{let B=await L8({value:U.args,schema:tp9});$.push({type:"shell",...B.environment&&{environment:qn9(B.environment)}});break}case"openai.apply_patch":{$.push({type:"apply_patch"});break}case"openai.web_search_preview":{let B=await L8({value:U.args,schema:Jn9});$.push({type:"web_search_preview",search_context_size:B.searchContextSize,user_location:B.userLocation});break}case"openai.web_search":{let B=await L8({value:U.args,schema:ep9});$.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 L8({value:U.args,schema:Cp9});$.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 L8({value:U.args,schema:lp9});$.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 L8({value:U.args,schema:Kn9}),N=(D)=>({tool_names:D.toolNames}),z=B.requireApproval,O=z==null?void 0:typeof z==="string"?z:z.never!=null?{never:N(z.never)}:void 0;$.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:O!=null?O:"never",server_description:B.serverDescription,server_url:B.serverUrl});break}case"openai.custom":{let B=await L8({value:U.args,schema:fp9});$.push({type:"custom",name:B.name,description:B.description,format:B.format}),K.add(B.name);break}case"openai.tool_search":{let B=await L8({value:U.args,schema:rp9});$.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:$,toolChoice:void 0,toolWarnings:Z};let H=Y.type;switch(H){case"auto":case"none":case"required":return{tools:$,toolChoice:H,toolWarnings:Z};case"tool":{let U=(W=G==null?void 0:G.toProviderToolName(Y.toolName))!=null?W:Y.toolName;return{tools:$,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 I5({functionality:`tool choice type: ${H}`})}}function qn9(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:An9(G.skills)}}return{type:"local",skills:X.skills}}function An9(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 db6(X){var Y,G;let Q={};for(let J of X){if(J.role!=="assistant")continue;for(let W of J.content){if(W.type!=="tool-call")continue;let Z=(G=(Y=W.providerOptions)==null?void 0:Y.openai)==null?void 0:G.approvalRequestId;if(Z!=null)Q[Z]=W.toolCallId}}return Q}function In9(X){return X.type==="response.output_text.delta"}function Vn9(X){return X.type==="response.output_item.done"}function jn9(X){return X.type==="response.completed"||X.type==="response.incomplete"}function Mn9(X){return X.type==="response.failed"}function Rn9(X){return X.type==="response.created"}function Sn9(X){return X.type==="response.function_call_arguments.delta"}function kn9(X){return X.type==="response.custom_tool_call_input.delta"}function Cn9(X){return X.type==="response.image_generation_call.partial_image"}function vn9(X){return X.type==="response.code_interpreter_call_code.delta"}function _n9(X){return X.type==="response.code_interpreter_call_code.done"}function fn9(X){return X.type==="response.apply_patch_call_operation_diff.delta"}function bn9(X){return X.type==="response.apply_patch_call_operation_diff.done"}function cb6(X){return X.type==="response.output_item.added"}function yn9(X){return X.type==="response.output_text.annotation.added"}function xn9(X){return X.type==="error"}function ib6(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 cR(X){return JSON.stringify(X).slice(1,-1)}function Qk0(X={}){var Y,G;let Q=(Y=sA(vz({settingValue:X.baseURL,environmentVariableName:"OPENAI_BASE_URL"})))!=null?Y:"https://api.openai.com/v1",J=(G=X.name)!=null?G:"openai",W=()=>u9({Authorization:`Bearer ${xo({apiKey:X.apiKey,environmentVariableName:"OPENAI_API_KEY",description:"OpenAI"})}`,"OpenAI-Organization":X.organization,"OpenAI-Project":X.project,...X.headers},`ai-sdk/openai/${dn9}`),Z=(D)=>new zp9(D,{provider:`${J}.chat`,url:({path:E})=>`${Q}${E}`,headers:W,fetch:X.fetch}),$=(D)=>new Lp9(D,{provider:`${J}.completion`,url:({path:E})=>`${Q}${E}`,headers:W,fetch:X.fetch}),K=(D)=>new qp9(D,{provider:`${J}.embedding`,url:({path:E})=>`${Q}${E}`,headers:W,fetch:X.fetch}),H=(D)=>new Vp9(D,{provider:`${J}.image`,url:({path:E})=>`${Q}${E}`,headers:W,fetch:X.fetch}),U=(D)=>new mn9(D,{provider:`${J}.transcription`,url:({path:E})=>`${Q}${E}`,headers:W,fetch:X.fetch}),B=(D)=>new gn9(D,{provider:`${J}.speech`,url:({path:E})=>`${Q}${E}`,headers:W,fetch:X.fetch}),N=(D)=>{if(new.target)throw Error("The OpenAI model function cannot be called with the new keyword.");return z(D)},z=(D)=>{return new Tn9(D,{provider:`${J}.responses`,url:({path:E})=>`${Q}${E}`,headers:W,fetch:X.fetch,fileIdPrefixes:["file-"]})},O=function(D){return N(D)};return O.specificationVersion="v3",O.languageModel=N,O.chat=Z,O.completion=$,O.responses=z,O.embedding=K,O.embeddingModel=K,O.textEmbedding=K,O.textEmbeddingModel=K,O.image=H,O.imageModel=H,O.transcription=U,O.transcriptionModel=U,O.speech=B,O.speechModel=B,O.tools=Nn9,O}var Gk0,sU,Fp9,Up9,Bp9,zp9=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:W,presencePenalty:Z,stopSequences:$,responseFormat:K,seed:H,tools:U,toolChoice:B,providerOptions:N}){var z,O,D,E,P;let q=[],j=(z=await f5({provider:"openai",providerOptions:N,schema:Bp9}))!=null?z:{},M=nb6(this.modelId),I=(O=j.forceReasoning)!=null?O:M.isReasoningModel;if(J!=null)q.push({type:"unsupported",feature:"topK"});let{messages:R,warnings:C}=Hp9({prompt:X,systemMessageMode:(D=j.systemMessageMode)!=null?D:I?"developer":M.systemMessageMode});q.push(...C);let _=(E=j.strictJsonSchema)!=null?E:!0,v={model:this.modelId,logit_bias:j.logitBias,logprobs:j.logprobs===!0||typeof j.logprobs==="number"?!0:void 0,top_logprobs:typeof j.logprobs==="number"?j.logprobs:typeof j.logprobs==="boolean"?j.logprobs?0:void 0:void 0,user:j.user,parallel_tool_calls:j.parallelToolCalls,max_tokens:Y,temperature:G,top_p:Q,frequency_penalty:W,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:$,seed:H,verbosity:j.textVerbosity,max_completion_tokens:j.maxCompletionTokens,store:j.store,metadata:j.metadata,prediction:j.prediction,reasoning_effort:j.reasoningEffort,service_tier:j.serviceTier,prompt_cache_key:j.promptCacheKey,prompt_cache_retention:j.promptCacheRetention,safety_identifier:j.safetyIdentifier,messages:R};if(I){if(j.reasoningEffort!=="none"||!M.supportsNonReasoningParameters){if(v.temperature!=null)v.temperature=void 0,q.push({type:"unsupported",feature:"temperature",details:"temperature is not supported for reasoning models"});if(v.top_p!=null)v.top_p=void 0,q.push({type:"unsupported",feature:"topP",details:"topP is not supported for reasoning models"});if(v.logprobs!=null)v.logprobs=void 0,q.push({type:"other",message:"logprobs is not supported for reasoning models"})}if(v.frequency_penalty!=null)v.frequency_penalty=void 0,q.push({type:"unsupported",feature:"frequencyPenalty",details:"frequencyPenalty is not supported for reasoning models"});if(v.presence_penalty!=null)v.presence_penalty=void 0,q.push({type:"unsupported",feature:"presencePenalty",details:"presencePenalty is not supported for reasoning models"});if(v.logit_bias!=null)v.logit_bias=void 0,q.push({type:"other",message:"logitBias is not supported for reasoning models"});if(v.top_logprobs!=null)v.top_logprobs=void 0,q.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,q.push({type:"unsupported",feature:"temperature",details:"temperature is not supported for the search preview models and has been removed."})}if(j.serviceTier==="flex"&&!M.supportsFlexProcessing)q.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(j.serviceTier==="priority"&&!M.supportsPriorityProcessing)q.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:h,toolWarnings:d}=Np9({tools:U,toolChoice:B});return{args:{...v,tools:y,tool_choice:h},warnings:[...q,...d]}}async doGenerate(X){var Y,G,Q,J,W,Z,$;let{args:K,warnings:H}=await this.getArgs(X),{responseHeaders:U,value:B,rawValue:N}=await s8({url:this.config.url({path:"/chat/completions",modelId:this.modelId}),headers:f8(this.config.headers(),X.headers),body:K,failedResponseHandler:sU,successfulResponseHandler:i8(Fp9),abortSignal:X.abortSignal,fetch:this.config.fetch}),z=B.choices[0],O=[],D=z.message.content;if(D!=null&&D.length>0)O.push({type:"text",text:D});for(let j of(Y=z.message.tool_calls)!=null?Y:[])O.push({type:"tool-call",toolCallId:(G=j.id)!=null?G:G6(),toolName:j.function.name,input:j.function.arguments});for(let j of(Q=z.message.annotations)!=null?Q:[])O.push({type:"source",sourceType:"url",id:G6(),url:j.url_citation.url,title:j.url_citation.title});let E=(J=B.usage)==null?void 0:J.completion_tokens_details,P=(W=B.usage)==null?void 0:W.prompt_tokens_details,q={openai:{}};if((E==null?void 0:E.accepted_prediction_tokens)!=null)q.openai.acceptedPredictionTokens=E==null?void 0:E.accepted_prediction_tokens;if((E==null?void 0:E.rejected_prediction_tokens)!=null)q.openai.rejectedPredictionTokens=E==null?void 0:E.rejected_prediction_tokens;if(((Z=z.logprobs)==null?void 0:Z.content)!=null)q.openai.logprobs=z.logprobs.content;return{content:O,finishReason:{unified:_b6(z.finish_reason),raw:($=z.finish_reason)!=null?$:void 0},usage:vb6(B.usage),request:{body:K},response:{...rS0(B),headers:U,body:N},warnings:H,providerMetadata: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:W}=await s8({url:this.config.url({path:"/chat/completions",modelId:this.modelId}),headers:f8(this.config.headers(),X.headers),body:Q,failedResponseHandler:sU,successfulResponseHandler:mH(Up9),abortSignal:X.abortSignal,fetch:this.config.fetch}),Z=[],$={unified:"other",raw:void 0},K=void 0,H=!1,U=!1,B={openai:{}};return{stream:W.pipeThrough(new TransformStream({start(N){N.enqueue({type:"stream-start",warnings:G})},transform(N,z){var O,D,E,P,q,j,M,I,R,C,_,v,y,h,d,p,f;if(X.includeRawChunks)z.enqueue({type:"raw",rawValue:N.rawValue});if(!N.success){$={unified:"error",raw:void 0},z.enqueue({type:"error",error:N.error});return}let u=N.value;if("error"in u){$={unified:"error",raw:void 0},z.enqueue({type:"error",error:u.error});return}if(!H){let F1=rS0(u);if(Object.values(F1).some(Boolean))H=!0,z.enqueue({type:"response-metadata",...rS0(u)})}if(u.usage!=null){if(K=u.usage,((O=u.usage.completion_tokens_details)==null?void 0:O.accepted_prediction_tokens)!=null)B.openai.acceptedPredictionTokens=(D=u.usage.completion_tokens_details)==null?void 0:D.accepted_prediction_tokens;if(((E=u.usage.completion_tokens_details)==null?void 0:E.rejected_prediction_tokens)!=null)B.openai.rejectedPredictionTokens=(P=u.usage.completion_tokens_details)==null?void 0:P.rejected_prediction_tokens}let a=u.choices[0];if((a==null?void 0:a.finish_reason)!=null)$={unified:_b6(a.finish_reason),raw:a.finish_reason};if(((q=a==null?void 0:a.logprobs)==null?void 0:q.content)!=null)B.openai.logprobs=a.logprobs.content;if((a==null?void 0:a.delta)==null)return;let r=a.delta;if(r.content!=null){if(!U)z.enqueue({type:"text-start",id:"0"}),U=!0;z.enqueue({type:"text-delta",id:"0",delta:r.content})}if(r.tool_calls!=null)for(let F1 of r.tool_calls){let w1=F1.index;if(Z[w1]==null){if(F1.type!=null&&F1.type!=="function")throw new _o({data:F1,message:"Expected 'function' type."});if(F1.id==null)throw new _o({data:F1,message:"Expected 'id' to be a string."});if(((j=F1.function)==null?void 0:j.name)==null)throw new _o({data:F1,message:"Expected 'function.name' to be a string."});z.enqueue({type:"tool-input-start",id:F1.id,toolName:F1.function.name}),Z[w1]={id:F1.id,type:"function",function:{name:F1.function.name,arguments:(M=F1.function.arguments)!=null?M:""},hasFinished:!1};let O1=Z[w1];if(((I=O1.function)==null?void 0:I.name)!=null&&((R=O1.function)==null?void 0:R.arguments)!=null){if(O1.function.arguments.length>0)z.enqueue({type:"tool-input-delta",id:O1.id,delta:O1.function.arguments});if(zR0(O1.function.arguments))z.enqueue({type:"tool-input-end",id:O1.id}),z.enqueue({type:"tool-call",toolCallId:(C=O1.id)!=null?C:G6(),toolName:O1.function.name,input:O1.function.arguments}),O1.hasFinished=!0}continue}let $1=Z[w1];if($1.hasFinished)continue;if(((_=F1.function)==null?void 0:_.arguments)!=null)$1.function.arguments+=(y=(v=F1.function)==null?void 0:v.arguments)!=null?y:"";if(z.enqueue({type:"tool-input-delta",id:$1.id,delta:(h=F1.function.arguments)!=null?h:""}),((d=$1.function)==null?void 0:d.name)!=null&&((p=$1.function)==null?void 0:p.arguments)!=null&&zR0($1.function.arguments))z.enqueue({type:"tool-input-end",id:$1.id}),z.enqueue({type:"tool-call",toolCallId:(f=$1.id)!=null?f:G6(),toolName:$1.function.name,input:$1.function.arguments}),$1.hasFinished=!0}if(r.annotations!=null)for(let F1 of r.annotations)z.enqueue({type:"source",sourceType:"url",id:G6(),url:F1.url_citation.url,title:F1.url_citation.title})},flush(N){if(U)N.enqueue({type:"text-end",id:"0"});N.enqueue({type:"finish",finishReason:$,usage:vb6(K),...B!=null?{providerMetadata:B}:{}})}})),request:{body:Q},response:{headers:J}}}},Dp9,wp9,xb6,Lp9=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:W,presencePenalty:Z,stopSequences:$,responseFormat:K,tools:H,toolChoice:U,seed:B,providerOptions:N}){let z=[],O={...await f5({provider:"openai",providerOptions:N,schema:xb6}),...await f5({provider:this.providerOptionsName,providerOptions:N,schema:xb6})};if(J!=null)z.push({type:"unsupported",feature:"topK"});if(H==null?void 0:H.length)z.push({type:"unsupported",feature:"tools"});if(U!=null)z.push({type:"unsupported",feature:"toolChoice"});if(K!=null&&K.type!=="text")z.push({type:"unsupported",feature:"responseFormat",details:"JSON response format is not supported."});let{prompt:D,stopSequences:E}=Op9({prompt:X}),P=[...E!=null?E:[],...$!=null?$:[]];return{args:{model:this.modelId,echo:O.echo,logit_bias:O.logitBias,logprobs:(O==null?void 0:O.logprobs)===!0?0:(O==null?void 0:O.logprobs)===!1?void 0:O==null?void 0:O.logprobs,suffix:O.suffix,user:O.user,max_tokens:Y,temperature:G,top_p:Q,frequency_penalty:W,presence_penalty:Z,seed:B,prompt:D,stop:P.length>0?P:void 0},warnings:z}}async doGenerate(X){var Y;let{args:G,warnings:Q}=await this.getArgs(X),{responseHeaders:J,value:W,rawValue:Z}=await s8({url:this.config.url({path:"/completions",modelId:this.modelId}),headers:f8(this.config.headers(),X.headers),body:G,failedResponseHandler:sU,successfulResponseHandler:i8(Dp9),abortSignal:X.abortSignal,fetch:this.config.fetch}),$=W.choices[0],K={openai:{}};if($.logprobs!=null)K.openai.logprobs=$.logprobs;return{content:[{type:"text",text:$.text}],usage:fb6(W.usage),finishReason:{unified:yb6($.finish_reason),raw:(Y=$.finish_reason)!=null?Y:void 0},request:{body:G},response:{...bb6(W),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:W}=await s8({url:this.config.url({path:"/completions",modelId:this.modelId}),headers:f8(this.config.headers(),X.headers),body:Q,failedResponseHandler:sU,successfulResponseHandler:mH(wp9),abortSignal:X.abortSignal,fetch:this.config.fetch}),Z={unified:"other",raw:void 0},$={openai:{}},K=void 0,H=!0;return{stream:W.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",...bb6(N)}),B.enqueue({type:"text-start",id:"0"});if(N.usage!=null)K=N.usage;let z=N.choices[0];if((z==null?void 0:z.finish_reason)!=null)Z={unified:yb6(z.finish_reason),raw:z.finish_reason};if((z==null?void 0:z.logprobs)!=null)$.openai.logprobs=z.logprobs;if((z==null?void 0:z.text)!=null&&z.text.length>0)B.enqueue({type:"text-delta",id:"0",delta:z.text})},flush(U){if(!H)U.enqueue({type:"text-end",id:"0"});U.enqueue({type:"finish",finishReason:Z,providerMetadata:$,usage:fb6(K)})}})),request:{body:Q},response:{headers:J}}}},Ep9,Pp9,qp9=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 fo({provider:this.provider,modelId:this.modelId,maxEmbeddingsPerCall:this.maxEmbeddingsPerCall,values:X});let W=(J=await f5({provider:"openai",providerOptions:Q,schema:Ep9}))!=null?J:{},{responseHeaders:Z,value:$,rawValue:K}=await s8({url:this.config.url({path:"/embeddings",modelId:this.modelId}),headers:f8(this.config.headers(),Y),body:{model:this.modelId,input:X,encoding_format:"float",dimensions:W.dimensions,user:W.user},failedResponseHandler:sU,successfulResponseHandler:i8(Pp9),abortSignal:G,fetch:this.config.fetch});return{warnings:[],embeddings:$.data.map((H)=>H.embedding),usage:$.usage?{tokens:$.usage.prompt_tokens}:void 0,response:{headers:Z,body:K}}}},hb6,Ap9,Tp9,Vp9=class{constructor(X,Y){this.modelId=X,this.config=Y,this.specificationVersion="v3"}get maxImagesPerCall(){var X;return(X=Ap9[this.modelId])!=null?X:1}get provider(){return this.config.provider}async doGenerate({prompt:X,files:Y,mask:G,n:Q,size:J,aspectRatio:W,seed:Z,providerOptions:$,headers:K,abortSignal:H}){var U,B,N,z,O,D,E,P,q,j,M;let I=[];if(W!=null)I.push({type:"unsupported",feature:"aspectRatio",details:"This model does not support aspect ratio. Use `size` instead."});if(Z!=null)I.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 aR1({url:this.config.url({path:"/images/edits",modelId:this.modelId}),headers:f8(this.config.headers(),K),formData:Pv6({model:this.modelId,prompt:X,image:await Promise.all(Y.map((h)=>h.type==="file"?new Blob([h.data instanceof Uint8Array?new Blob([h.data],{type:h.mediaType}):new Blob([PG(h.data)],{type:h.mediaType})],{type:h.mediaType}):FR0(h.url))),mask:G!=null?await jp9(G):void 0,n:Q,size:J,...(z=$.openai)!=null?z:{}}),failedResponseHandler:sU,successfulResponseHandler:i8(hb6),abortSignal:H,fetch:this.config.fetch});return{images:v.data.map((h)=>h.b64_json),warnings:I,usage:v.usage!=null?{inputTokens:(O=v.usage.input_tokens)!=null?O:void 0,outputTokens:(D=v.usage.output_tokens)!=null?D: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((h,d)=>{var p,f,u,a,r,F1;return{...h.revised_prompt?{revisedPrompt:h.revised_prompt}:{},created:(p=v.created)!=null?p:void 0,size:(f=v.size)!=null?f:void 0,quality:(u=v.quality)!=null?u:void 0,background:(a=v.background)!=null?a:void 0,outputFormat:(r=v.output_format)!=null?r:void 0,...gb6((F1=v.usage)==null?void 0:F1.input_tokens_details,d,v.data.length)}})}}}}let{value:C,responseHeaders:_}=await s8({url:this.config.url({path:"/images/generations",modelId:this.modelId}),headers:f8(this.config.headers(),K),body:{model:this.modelId,prompt:X,n:Q,size:J,...(P=$.openai)!=null?P:{},...!Ip9(this.modelId)?{response_format:"b64_json"}:{}},failedResponseHandler:sU,successfulResponseHandler:i8(hb6),abortSignal:H,fetch:this.config.fetch});return{images:C.data.map((v)=>v.b64_json),warnings:I,usage:C.usage!=null?{inputTokens:(q=C.usage.input_tokens)!=null?q:void 0,outputTokens:(j=C.usage.output_tokens)!=null?j: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 h,d,p,f,u,a;return{...v.revised_prompt?{revisedPrompt:v.revised_prompt}:{},created:(h=C.created)!=null?h:void 0,size:(d=C.size)!=null?d:void 0,quality:(p=C.quality)!=null?p:void 0,background:(f=C.background)!=null?f:void 0,outputFormat:(u=C.output_format)!=null?u:void 0,...gb6((a=C.usage)==null?void 0:a.input_tokens_details,y,C.data.length)}})}}}}},tb6,ab6,OjY,Mp9,Rp9,Sp9,kp9,Cp9,vp9,_p9=(X={})=>{return vp9(X)},fp9,bp9,yp9,xp9=(X)=>yp9(X),rb6,ob6,hp9,gp9,up9,lp9,mp9,dp9,cp9,ip9=(X={})=>{return cp9(X)},sb6,eb6,pp9,Xy6,sS0,np9,tp9,ap9,rp9,eS0,Xk0,op9,sp9=(X={})=>op9(X),ep9,Xn9,Yn9,Gn9,Qn9=(X={})=>Gn9(X),Jn9,Zn9,Wn9,$n9,Yk0,Kn9,Hn9,Fn9,Un9,Bn9=(X)=>Un9(X),Nn9,Dn9,fZ1,wn9,Ln9,Yy6=20,En9,ijY,mb6,Tn9=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:W,frequencyPenalty:Z,seed:$,prompt:K,providerOptions:H,tools:U,toolChoice:B,responseFormat:N}){var z,O,D,E,P,q,j,M,I;let R=[],C=nb6(this.modelId);if(J!=null)R.push({type:"unsupported",feature:"topK"});if($!=null)R.push({type:"unsupported",feature:"seed"});if(W!=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 f5({provider:_,providerOptions:H,schema:mb6});if(v==null&&_!=="openai")v=await f5({provider:"openai",providerOptions:H,schema:mb6});let y=(z=v==null?void 0:v.forceReasoning)!=null?z: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 h=nR1({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:($0)=>$0.id==="openai.custom"?$0.args.name:void 0}),d=new Set,{tools:p,toolChoice:f,toolWarnings:u}=await Pn9({tools:U,toolChoice:B,toolNameMapping:h,customProviderToolNames:d}),{input:a,warnings:r}=await On9({prompt:K,toolNameMapping:h,systemMessageMode:(O=v==null?void 0:v.systemMessageMode)!=null?O:y?"developer":C.systemMessageMode,providerOptionsName:_,fileIdPrefixes:this.config.fileIdPrefixes,store:(D=v==null?void 0:v.store)!=null?D:!0,hasConversation:(v==null?void 0:v.conversation)!=null,hasLocalShellTool:O1("openai.local_shell"),hasShellTool:O1("openai.shell"),hasApplyPatchTool:O1("openai.apply_patch"),customProviderToolNames:d.size>0?d:void 0});R.push(...r);let F1=(E=v==null?void 0:v.strictJsonSchema)!=null?E:!0,w1=v==null?void 0:v.include;function $1($0){if(w1==null)w1=[$0];else if(!w1.includes($0))w1=[...w1,$0]}function O1($0){return(U==null?void 0:U.find((r1)=>r1.type==="provider"&&r1.id===$0))!=null}let v1=typeof(v==null?void 0:v.logprobs)==="number"?v==null?void 0:v.logprobs:(v==null?void 0:v.logprobs)===!0?Yy6:void 0;if(v1)$1("message.output_text.logprobs");let o1=(P=U==null?void 0:U.find(($0)=>$0.type==="provider"&&($0.id==="openai.web_search"||$0.id==="openai.web_search_preview")))==null?void 0:P.name;if(o1)$1("web_search_call.action.sources");if(O1("openai.code_interpreter"))$1("code_interpreter_call.outputs");let d1=v==null?void 0:v.store;if(d1===!1&&y)$1("reasoning.encrypted_content");let g1={model:this.modelId,input:a,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:F1,name:(q=N.name)!=null?q:"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:d1,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:v1,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(g1.temperature!=null)g1.temperature=void 0,R.push({type:"unsupported",feature:"temperature",details:"temperature is not supported for reasoning models"});if(g1.top_p!=null)g1.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 g1.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 g1.service_tier;let Y1=(I=(M=(j=U==null?void 0:U.find(($0)=>$0.type==="provider"&&$0.id==="openai.shell"))==null?void 0:j.args)==null?void 0:M.environment)==null?void 0:I.type,l1=Y1==="containerAuto"||Y1==="containerReference";return{webSearchToolName:o1,args:{...g1,tools:p,tool_choice:f},warnings:[...R,...u],store:d1,toolNameMapping:h,providerOptionsName:_,isShellProviderExecuted:l1}}async doGenerate(X){var Y,G,Q,J,W,Z,$,K,H,U,B,N,z,O,D,E,P,q,j,M,I,R,C,_,v,y,h,d;let{args:p,warnings:f,webSearchToolName:u,toolNameMapping:a,providerOptionsName:r,isShellProviderExecuted:F1}=await this.getArgs(X),w1=this.config.url({path:"/responses",modelId:this.modelId}),$1=db6(X.prompt),{responseHeaders:O1,value:v1,rawValue:o1}=await s8({url:w1,headers:f8(this.config.headers(),X.headers),body:p,failedResponseHandler:sU,successfulResponseHandler:i8(Ln9),abortSignal:X.abortSignal,fetch:this.config.fetch});if(v1.error)throw new c8({message:v1.error.message,url:w1,requestBodyValues:p,statusCode:400,responseHeaders:O1,responseBody:o1,isRetryable:!1});let d1=[],g1=[],Y1=!1,l1=[];for(let q1 of v1.output)switch(q1.type){case"reasoning":{if(q1.summary.length===0)q1.summary.push({type:"summary_text",text:""});for(let P1 of q1.summary)d1.push({type:"reasoning",text:P1.text,providerMetadata:{[r]:{itemId:q1.id,reasoningEncryptedContent:(Y=q1.encrypted_content)!=null?Y:null}}});break}case"image_generation_call":{d1.push({type:"tool-call",toolCallId:q1.id,toolName:a.toCustomToolName("image_generation"),input:"{}",providerExecuted:!0}),d1.push({type:"tool-result",toolCallId:q1.id,toolName:a.toCustomToolName("image_generation"),result:{result:q1.result}});break}case"tool_search_call":{let P1=(G=q1.call_id)!=null?G:q1.id,z1=q1.execution==="server";if(z1)l1.push(P1);d1.push({type:"tool-call",toolCallId:P1,toolName:a.toCustomToolName("tool_search"),input:JSON.stringify({arguments:q1.arguments,call_id:q1.call_id}),...z1?{providerExecuted:!0}:{},providerMetadata:{[r]:{itemId:q1.id}}});break}case"tool_search_output":{let P1=(J=(Q=q1.call_id)!=null?Q:l1.shift())!=null?J:q1.id;d1.push({type:"tool-result",toolCallId:P1,toolName:a.toCustomToolName("tool_search"),result:{tools:q1.tools},providerMetadata:{[r]:{itemId:q1.id}}});break}case"local_shell_call":{d1.push({type:"tool-call",toolCallId:q1.call_id,toolName:a.toCustomToolName("local_shell"),input:JSON.stringify({action:q1.action}),providerMetadata:{[r]:{itemId:q1.id}}});break}case"shell_call":{d1.push({type:"tool-call",toolCallId:q1.call_id,toolName:a.toCustomToolName("shell"),input:JSON.stringify({action:{commands:q1.action.commands}}),...F1&&{providerExecuted:!0},providerMetadata:{[r]:{itemId:q1.id}}});break}case"shell_call_output":{d1.push({type:"tool-result",toolCallId:q1.call_id,toolName:a.toCustomToolName("shell"),result:{output:q1.output.map((P1)=>({stdout:P1.stdout,stderr:P1.stderr,outcome:P1.outcome.type==="exit"?{type:"exit",exitCode:P1.outcome.exit_code}:{type:"timeout"}}))}});break}case"message":{for(let P1 of q1.content){if(((Z=(W=X.providerOptions)==null?void 0:W[r])==null?void 0:Z.logprobs)&&P1.logprobs)g1.push(P1.logprobs);let z1={itemId:q1.id,...q1.phase!=null&&{phase:q1.phase},...P1.annotations.length>0&&{annotations:P1.annotations}};d1.push({type:"text",text:P1.text,providerMetadata:{[r]:z1}});for(let W1 of P1.annotations)if(W1.type==="url_citation")d1.push({type:"source",sourceType:"url",id:(H=(K=($=this.config).generateId)==null?void 0:K.call($))!=null?H:G6(),url:W1.url,title:W1.title});else if(W1.type==="file_citation")d1.push({type:"source",sourceType:"document",id:(N=(B=(U=this.config).generateId)==null?void 0:B.call(U))!=null?N:G6(),mediaType:"text/plain",title:W1.filename,filename:W1.filename,providerMetadata:{[r]:{type:W1.type,fileId:W1.file_id,index:W1.index}}});else if(W1.type==="container_file_citation")d1.push({type:"source",sourceType:"document",id:(D=(O=(z=this.config).generateId)==null?void 0:O.call(z))!=null?D:G6(),mediaType:"text/plain",title:W1.filename,filename:W1.filename,providerMetadata:{[r]:{type:W1.type,fileId:W1.file_id,containerId:W1.container_id}}});else if(W1.type==="file_path")d1.push({type:"source",sourceType:"document",id:(q=(P=(E=this.config).generateId)==null?void 0:P.call(E))!=null?q:G6(),mediaType:"application/octet-stream",title:W1.file_id,filename:W1.file_id,providerMetadata:{[r]:{type:W1.type,fileId:W1.file_id,index:W1.index}}})}break}case"function_call":{Y1=!0,d1.push({type:"tool-call",toolCallId:q1.call_id,toolName:q1.name,input:q1.arguments,providerMetadata:{[r]:{itemId:q1.id}}});break}case"custom_tool_call":{Y1=!0;let P1=a.toCustomToolName(q1.name);d1.push({type:"tool-call",toolCallId:q1.call_id,toolName:P1,input:JSON.stringify(q1.input),providerMetadata:{[r]:{itemId:q1.id}}});break}case"web_search_call":{d1.push({type:"tool-call",toolCallId:q1.id,toolName:a.toCustomToolName(u!=null?u:"web_search"),input:JSON.stringify({}),providerExecuted:!0}),d1.push({type:"tool-result",toolCallId:q1.id,toolName:a.toCustomToolName(u!=null?u:"web_search"),result:ib6(q1.action)});break}case"mcp_call":{let P1=q1.approval_request_id!=null?(j=$1[q1.approval_request_id])!=null?j:q1.id:q1.id,z1=`mcp.${q1.name}`;d1.push({type:"tool-call",toolCallId:P1,toolName:z1,input:q1.arguments,providerExecuted:!0,dynamic:!0}),d1.push({type:"tool-result",toolCallId:P1,toolName:z1,result:{type:"call",serverLabel:q1.server_label,name:q1.name,arguments:q1.arguments,...q1.output!=null?{output:q1.output}:{},...q1.error!=null?{error:q1.error}:{}},providerMetadata:{[r]:{itemId:q1.id}}});break}case"mcp_list_tools":break;case"mcp_approval_request":{let P1=(M=q1.approval_request_id)!=null?M:q1.id,z1=(C=(R=(I=this.config).generateId)==null?void 0:R.call(I))!=null?C:G6(),W1=`mcp.${q1.name}`;d1.push({type:"tool-call",toolCallId:z1,toolName:W1,input:q1.arguments,providerExecuted:!0,dynamic:!0}),d1.push({type:"tool-approval-request",approvalId:P1,toolCallId:z1});break}case"computer_call":{d1.push({type:"tool-call",toolCallId:q1.id,toolName:a.toCustomToolName("computer_use"),input:"",providerExecuted:!0}),d1.push({type:"tool-result",toolCallId:q1.id,toolName:a.toCustomToolName("computer_use"),result:{type:"computer_use_tool_result",status:q1.status||"completed"}});break}case"file_search_call":{d1.push({type:"tool-call",toolCallId:q1.id,toolName:a.toCustomToolName("file_search"),input:"{}",providerExecuted:!0}),d1.push({type:"tool-result",toolCallId:q1.id,toolName:a.toCustomToolName("file_search"),result:{queries:q1.queries,results:(v=(_=q1.results)==null?void 0:_.map((P1)=>({attributes:P1.attributes,fileId:P1.file_id,filename:P1.filename,score:P1.score,text:P1.text})))!=null?v:null}});break}case"code_interpreter_call":{d1.push({type:"tool-call",toolCallId:q1.id,toolName:a.toCustomToolName("code_interpreter"),input:JSON.stringify({code:q1.code,containerId:q1.container_id}),providerExecuted:!0}),d1.push({type:"tool-result",toolCallId:q1.id,toolName:a.toCustomToolName("code_interpreter"),result:{outputs:q1.outputs}});break}case"apply_patch_call":{d1.push({type:"tool-call",toolCallId:q1.call_id,toolName:a.toCustomToolName("apply_patch"),input:JSON.stringify({callId:q1.call_id,operation:q1.operation}),providerMetadata:{[r]:{itemId:q1.id}}});break}}let $0={[r]:{responseId:v1.id,...g1.length>0?{logprobs:g1}:{},...typeof v1.service_tier==="string"?{serviceTier:v1.service_tier}:{}}},r1=v1.usage;return{content:d1,finishReason:{unified:oS0({finishReason:(y=v1.incomplete_details)==null?void 0:y.reason,hasFunctionCall:Y1}),raw:(d=(h=v1.incomplete_details)==null?void 0:h.reason)!=null?d:void 0},usage:ub6(r1),request:{body:p},response:{id:v1.id,timestamp:new Date(v1.created_at*1000),modelId:v1.model,headers:O1,body:o1},providerMetadata:$0,warnings:f}}async doStream(X){let{args:Y,warnings:G,webSearchToolName:Q,toolNameMapping:J,store:W,providerOptionsName:Z,isShellProviderExecuted:$}=await this.getArgs(X),{responseHeaders:K,value:H}=await s8({url:this.config.url({path:"/responses",modelId:this.modelId}),headers:f8(this.config.headers(),X.headers),body:{...Y,stream:!0},failedResponseHandler:sU,successfulResponseHandler:mH(wn9),abortSignal:X.abortSignal,fetch:this.config.fetch}),U=this,B=db6(X.prompt),N=new Map,z={unified:"other",raw:void 0},O=void 0,D=[],E=null,P={},q=[],j,M=!1,I={},R,C=[];return{stream:H.pipeThrough(new TransformStream({start(_){_.enqueue({type:"stream-start",warnings:G})},transform(_,v){var y,h,d,p,f,u,a,r,F1,w1,$1,O1,v1,o1,d1,g1,Y1,l1,$0,r1,q1,P1,z1,W1,S1,j1,p1,V1,x1,e1,Z0,L4,l0,U0,z0,f0,M0,R6;if(X.includeRawChunks)v.enqueue({type:"raw",rawValue:_.rawValue});if(!_.success){z={unified:"error",raw:void 0},v.enqueue({type:"error",error:_.error});return}let k1=_.value;if(cb6(k1)){if(k1.item.type==="function_call")P[k1.output_index]={toolName:k1.item.name,toolCallId:k1.item.call_id},v.enqueue({type:"tool-input-start",id:k1.item.call_id,toolName:k1.item.name});else if(k1.item.type==="custom_tool_call"){let X0=J.toCustomToolName(k1.item.name);P[k1.output_index]={toolName:X0,toolCallId:k1.item.call_id},v.enqueue({type:"tool-input-start",id:k1.item.call_id,toolName:X0})}else if(k1.item.type==="web_search_call")P[k1.output_index]={toolName:J.toCustomToolName(Q!=null?Q:"web_search"),toolCallId:k1.item.id},v.enqueue({type:"tool-input-start",id:k1.item.id,toolName:J.toCustomToolName(Q!=null?Q:"web_search"),providerExecuted:!0}),v.enqueue({type:"tool-input-end",id:k1.item.id}),v.enqueue({type:"tool-call",toolCallId:k1.item.id,toolName:J.toCustomToolName(Q!=null?Q:"web_search"),input:JSON.stringify({}),providerExecuted:!0});else if(k1.item.type==="computer_call")P[k1.output_index]={toolName:J.toCustomToolName("computer_use"),toolCallId:k1.item.id},v.enqueue({type:"tool-input-start",id:k1.item.id,toolName:J.toCustomToolName("computer_use"),providerExecuted:!0});else if(k1.item.type==="code_interpreter_call")P[k1.output_index]={toolName:J.toCustomToolName("code_interpreter"),toolCallId:k1.item.id,codeInterpreter:{containerId:k1.item.container_id}},v.enqueue({type:"tool-input-start",id:k1.item.id,toolName:J.toCustomToolName("code_interpreter"),providerExecuted:!0}),v.enqueue({type:"tool-input-delta",id:k1.item.id,delta:`{"containerId":"${k1.item.container_id}","code":"`});else if(k1.item.type==="file_search_call")v.enqueue({type:"tool-call",toolCallId:k1.item.id,toolName:J.toCustomToolName("file_search"),input:"{}",providerExecuted:!0});else if(k1.item.type==="image_generation_call")v.enqueue({type:"tool-call",toolCallId:k1.item.id,toolName:J.toCustomToolName("image_generation"),input:"{}",providerExecuted:!0});else if(k1.item.type==="tool_search_call"){let X0=k1.item.id,o0=J.toCustomToolName("tool_search"),h4=k1.item.execution==="server";if(P[k1.output_index]={toolName:o0,toolCallId:X0,toolSearchExecution:(y=k1.item.execution)!=null?y:"server"},h4)v.enqueue({type:"tool-input-start",id:X0,toolName:o0,providerExecuted:!0})}else if(k1.item.type==="tool_search_output");else if(k1.item.type==="mcp_call"||k1.item.type==="mcp_list_tools"||k1.item.type==="mcp_approval_request");else if(k1.item.type==="apply_patch_call"){let{call_id:X0,operation:o0}=k1.item;if(P[k1.output_index]={toolName:J.toCustomToolName("apply_patch"),toolCallId:X0,applyPatch:{hasDiff:o0.type==="delete_file",endEmitted:o0.type==="delete_file"}},v.enqueue({type:"tool-input-start",id:X0,toolName:J.toCustomToolName("apply_patch")}),o0.type==="delete_file"){let h4=JSON.stringify({callId:X0,operation:o0});v.enqueue({type:"tool-input-delta",id:X0,delta:h4}),v.enqueue({type:"tool-input-end",id:X0})}else v.enqueue({type:"tool-input-delta",id:X0,delta:`{"callId":"${cR(X0)}","operation":{"type":"${cR(o0.type)}","path":"${cR(o0.path)}","diff":"`})}else if(k1.item.type==="shell_call")P[k1.output_index]={toolName:J.toCustomToolName("shell"),toolCallId:k1.item.call_id};else if(k1.item.type==="shell_call_output");else if(k1.item.type==="message")q.splice(0,q.length),j=(h=k1.item.phase)!=null?h:void 0,v.enqueue({type:"text-start",id:k1.item.id,providerMetadata:{[Z]:{itemId:k1.item.id,...k1.item.phase!=null&&{phase:k1.item.phase}}}});else if(cb6(k1)&&k1.item.type==="reasoning")I[k1.item.id]={encryptedContent:k1.item.encrypted_content,summaryParts:{0:"active"}},v.enqueue({type:"reasoning-start",id:`${k1.item.id}:0`,providerMetadata:{[Z]:{itemId:k1.item.id,reasoningEncryptedContent:(d=k1.item.encrypted_content)!=null?d:null}}})}else if(Vn9(k1)){if(k1.item.type==="message"){let X0=(p=k1.item.phase)!=null?p:j;j=void 0,v.enqueue({type:"text-end",id:k1.item.id,providerMetadata:{[Z]:{itemId:k1.item.id,...X0!=null&&{phase:X0},...q.length>0&&{annotations:q}}}})}else if(k1.item.type==="function_call")P[k1.output_index]=void 0,M=!0,v.enqueue({type:"tool-input-end",id:k1.item.call_id}),v.enqueue({type:"tool-call",toolCallId:k1.item.call_id,toolName:k1.item.name,input:k1.item.arguments,providerMetadata:{[Z]:{itemId:k1.item.id}}});else if(k1.item.type==="custom_tool_call"){P[k1.output_index]=void 0,M=!0;let X0=J.toCustomToolName(k1.item.name);v.enqueue({type:"tool-input-end",id:k1.item.call_id}),v.enqueue({type:"tool-call",toolCallId:k1.item.call_id,toolName:X0,input:JSON.stringify(k1.item.input),providerMetadata:{[Z]:{itemId:k1.item.id}}})}else if(k1.item.type==="web_search_call")P[k1.output_index]=void 0,v.enqueue({type:"tool-result",toolCallId:k1.item.id,toolName:J.toCustomToolName(Q!=null?Q:"web_search"),result:ib6(k1.item.action)});else if(k1.item.type==="computer_call")P[k1.output_index]=void 0,v.enqueue({type:"tool-input-end",id:k1.item.id}),v.enqueue({type:"tool-call",toolCallId:k1.item.id,toolName:J.toCustomToolName("computer_use"),input:"",providerExecuted:!0}),v.enqueue({type:"tool-result",toolCallId:k1.item.id,toolName:J.toCustomToolName("computer_use"),result:{type:"computer_use_tool_result",status:k1.item.status||"completed"}});else if(k1.item.type==="file_search_call")P[k1.output_index]=void 0,v.enqueue({type:"tool-result",toolCallId:k1.item.id,toolName:J.toCustomToolName("file_search"),result:{queries:k1.item.queries,results:(u=(f=k1.item.results)==null?void 0:f.map((X0)=>({attributes:X0.attributes,fileId:X0.file_id,filename:X0.filename,score:X0.score,text:X0.text})))!=null?u:null}});else if(k1.item.type==="code_interpreter_call")P[k1.output_index]=void 0,v.enqueue({type:"tool-result",toolCallId:k1.item.id,toolName:J.toCustomToolName("code_interpreter"),result:{outputs:k1.item.outputs}});else if(k1.item.type==="image_generation_call")v.enqueue({type:"tool-result",toolCallId:k1.item.id,toolName:J.toCustomToolName("image_generation"),result:{result:k1.item.result}});else if(k1.item.type==="tool_search_call"){let X0=P[k1.output_index],o0=k1.item.execution==="server";if(X0!=null){let h4=o0?X0.toolCallId:(a=k1.item.call_id)!=null?a:k1.item.id;if(o0)C.push(h4);else v.enqueue({type:"tool-input-start",id:h4,toolName:X0.toolName});v.enqueue({type:"tool-input-end",id:h4}),v.enqueue({type:"tool-call",toolCallId:h4,toolName:X0.toolName,input:JSON.stringify({arguments:k1.item.arguments,call_id:o0?null:h4}),...o0?{providerExecuted:!0}:{},providerMetadata:{[Z]:{itemId:k1.item.id}}})}P[k1.output_index]=void 0}else if(k1.item.type==="tool_search_output"){let X0=(F1=(r=k1.item.call_id)!=null?r:C.shift())!=null?F1:k1.item.id;v.enqueue({type:"tool-result",toolCallId:X0,toolName:J.toCustomToolName("tool_search"),result:{tools:k1.item.tools},providerMetadata:{[Z]:{itemId:k1.item.id}}})}else if(k1.item.type==="mcp_call"){P[k1.output_index]=void 0;let X0=(w1=k1.item.approval_request_id)!=null?w1:void 0,o0=X0!=null?(O1=($1=N.get(X0))!=null?$1:B[X0])!=null?O1:k1.item.id:k1.item.id,h4=`mcp.${k1.item.name}`;v.enqueue({type:"tool-call",toolCallId:o0,toolName:h4,input:k1.item.arguments,providerExecuted:!0,dynamic:!0}),v.enqueue({type:"tool-result",toolCallId:o0,toolName:h4,result:{type:"call",serverLabel:k1.item.server_label,name:k1.item.name,arguments:k1.item.arguments,...k1.item.output!=null?{output:k1.item.output}:{},...k1.item.error!=null?{error:k1.item.error}:{}},providerMetadata:{[Z]:{itemId:k1.item.id}}})}else if(k1.item.type==="mcp_list_tools")P[k1.output_index]=void 0;else if(k1.item.type==="apply_patch_call"){let X0=P[k1.output_index];if((X0==null?void 0:X0.applyPatch)&&!X0.applyPatch.endEmitted&&k1.item.operation.type!=="delete_file"){if(!X0.applyPatch.hasDiff)v.enqueue({type:"tool-input-delta",id:X0.toolCallId,delta:cR(k1.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&&k1.item.status==="completed")v.enqueue({type:"tool-call",toolCallId:X0.toolCallId,toolName:J.toCustomToolName("apply_patch"),input:JSON.stringify({callId:k1.item.call_id,operation:k1.item.operation}),providerMetadata:{[Z]:{itemId:k1.item.id}}});P[k1.output_index]=void 0}else if(k1.item.type==="mcp_approval_request"){P[k1.output_index]=void 0;let X0=(d1=(o1=(v1=U.config).generateId)==null?void 0:o1.call(v1))!=null?d1:G6(),o0=(g1=k1.item.approval_request_id)!=null?g1:k1.item.id;N.set(o0,X0);let h4=`mcp.${k1.item.name}`;v.enqueue({type:"tool-call",toolCallId:X0,toolName:h4,input:k1.item.arguments,providerExecuted:!0,dynamic:!0}),v.enqueue({type:"tool-approval-request",approvalId:o0,toolCallId:X0})}else if(k1.item.type==="local_shell_call")P[k1.output_index]=void 0,v.enqueue({type:"tool-call",toolCallId:k1.item.call_id,toolName:J.toCustomToolName("local_shell"),input:JSON.stringify({action:{type:"exec",command:k1.item.action.command,timeoutMs:k1.item.action.timeout_ms,user:k1.item.action.user,workingDirectory:k1.item.action.working_directory,env:k1.item.action.env}}),providerMetadata:{[Z]:{itemId:k1.item.id}}});else if(k1.item.type==="shell_call")P[k1.output_index]=void 0,v.enqueue({type:"tool-call",toolCallId:k1.item.call_id,toolName:J.toCustomToolName("shell"),input:JSON.stringify({action:{commands:k1.item.action.commands}}),...$&&{providerExecuted:!0},providerMetadata:{[Z]:{itemId:k1.item.id}}});else if(k1.item.type==="shell_call_output")v.enqueue({type:"tool-result",toolCallId:k1.item.call_id,toolName:J.toCustomToolName("shell"),result:{output:k1.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(k1.item.type==="reasoning"){let X0=I[k1.item.id],o0=Object.entries(X0.summaryParts).filter(([h4,V])=>V==="active"||V==="can-conclude").map(([h4])=>h4);for(let h4 of o0)v.enqueue({type:"reasoning-end",id:`${k1.item.id}:${h4}`,providerMetadata:{[Z]:{itemId:k1.item.id,reasoningEncryptedContent:(Y1=k1.item.encrypted_content)!=null?Y1:null}}});delete I[k1.item.id]}}else if(Sn9(k1)){let X0=P[k1.output_index];if(X0!=null)v.enqueue({type:"tool-input-delta",id:X0.toolCallId,delta:k1.delta})}else if(kn9(k1)){let X0=P[k1.output_index];if(X0!=null)v.enqueue({type:"tool-input-delta",id:X0.toolCallId,delta:k1.delta})}else if(fn9(k1)){let X0=P[k1.output_index];if(X0==null?void 0:X0.applyPatch)v.enqueue({type:"tool-input-delta",id:X0.toolCallId,delta:cR(k1.delta)}),X0.applyPatch.hasDiff=!0}else if(bn9(k1)){let X0=P[k1.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:cR(k1.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(Cn9(k1))v.enqueue({type:"tool-result",toolCallId:k1.item_id,toolName:J.toCustomToolName("image_generation"),result:{result:k1.partial_image_b64},preliminary:!0});else if(vn9(k1)){let X0=P[k1.output_index];if(X0!=null)v.enqueue({type:"tool-input-delta",id:X0.toolCallId,delta:cR(k1.delta)})}else if(_n9(k1)){let X0=P[k1.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:k1.code,containerId:X0.codeInterpreter.containerId}),providerExecuted:!0})}else if(Rn9(k1))E=k1.response.id,v.enqueue({type:"response-metadata",id:k1.response.id,timestamp:new Date(k1.response.created_at*1000),modelId:k1.response.model});else if(In9(k1)){if(v.enqueue({type:"text-delta",id:k1.item_id,delta:k1.delta}),(($0=(l1=X.providerOptions)==null?void 0:l1[Z])==null?void 0:$0.logprobs)&&k1.logprobs)D.push(k1.logprobs)}else if(k1.type==="response.reasoning_summary_part.added"){if(k1.summary_index>0){let X0=I[k1.item_id];X0.summaryParts[k1.summary_index]="active";for(let o0 of Object.keys(X0.summaryParts))if(X0.summaryParts[o0]==="can-conclude")v.enqueue({type:"reasoning-end",id:`${k1.item_id}:${o0}`,providerMetadata:{[Z]:{itemId:k1.item_id}}}),X0.summaryParts[o0]="concluded";v.enqueue({type:"reasoning-start",id:`${k1.item_id}:${k1.summary_index}`,providerMetadata:{[Z]:{itemId:k1.item_id,reasoningEncryptedContent:(q1=(r1=I[k1.item_id])==null?void 0:r1.encryptedContent)!=null?q1:null}}})}}else if(k1.type==="response.reasoning_summary_text.delta")v.enqueue({type:"reasoning-delta",id:`${k1.item_id}:${k1.summary_index}`,delta:k1.delta,providerMetadata:{[Z]:{itemId:k1.item_id}}});else if(k1.type==="response.reasoning_summary_part.done")if(W)v.enqueue({type:"reasoning-end",id:`${k1.item_id}:${k1.summary_index}`,providerMetadata:{[Z]:{itemId:k1.item_id}}}),I[k1.item_id].summaryParts[k1.summary_index]="concluded";else I[k1.item_id].summaryParts[k1.summary_index]="can-conclude";else if(jn9(k1)){if(z={unified:oS0({finishReason:(P1=k1.response.incomplete_details)==null?void 0:P1.reason,hasFunctionCall:M}),raw:(W1=(z1=k1.response.incomplete_details)==null?void 0:z1.reason)!=null?W1:void 0},O=k1.response.usage,typeof k1.response.service_tier==="string")R=k1.response.service_tier}else if(Mn9(k1)){let X0=(S1=k1.response.incomplete_details)==null?void 0:S1.reason;z={unified:X0?oS0({finishReason:X0,hasFunctionCall:M}):"error",raw:X0!=null?X0:"error"},O=(j1=k1.response.usage)!=null?j1:void 0}else if(yn9(k1)){if(q.push(k1.annotation),k1.annotation.type==="url_citation")v.enqueue({type:"source",sourceType:"url",id:(x1=(V1=(p1=U.config).generateId)==null?void 0:V1.call(p1))!=null?x1:G6(),url:k1.annotation.url,title:k1.annotation.title});else if(k1.annotation.type==="file_citation")v.enqueue({type:"source",sourceType:"document",id:(L4=(Z0=(e1=U.config).generateId)==null?void 0:Z0.call(e1))!=null?L4:G6(),mediaType:"text/plain",title:k1.annotation.filename,filename:k1.annotation.filename,providerMetadata:{[Z]:{type:k1.annotation.type,fileId:k1.annotation.file_id,index:k1.annotation.index}}});else if(k1.annotation.type==="container_file_citation")v.enqueue({type:"source",sourceType:"document",id:(z0=(U0=(l0=U.config).generateId)==null?void 0:U0.call(l0))!=null?z0:G6(),mediaType:"text/plain",title:k1.annotation.filename,filename:k1.annotation.filename,providerMetadata:{[Z]:{type:k1.annotation.type,fileId:k1.annotation.file_id,containerId:k1.annotation.container_id}}});else if(k1.annotation.type==="file_path")v.enqueue({type:"source",sourceType:"document",id:(R6=(M0=(f0=U.config).generateId)==null?void 0:M0.call(f0))!=null?R6:G6(),mediaType:"application/octet-stream",title:k1.annotation.file_id,filename:k1.annotation.file_id,providerMetadata:{[Z]:{type:k1.annotation.type,fileId:k1.annotation.file_id,index:k1.annotation.index}}})}else if(xn9(k1))v.enqueue({type:"error",error:k1})},flush(_){let v={[Z]:{responseId:E,...D.length>0?{logprobs:D}:{},...R!==void 0?{serviceTier:R}:{}}};_.enqueue({type:"finish",finishReason:z,usage:ub6(O),providerMetadata:v})}})),request:{body:Y},response:{headers:K}}}},hn9,gn9=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:W,providerOptions:Z}){let $=[],K=await f5({provider:"openai",providerOptions:Z,schema:hn9}),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 $.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 "${W}" was ignored.`});return{requestBody:H,warnings:$}}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:W,warnings:Z}=await this.getArgs(X),{value:$,responseHeaders:K,rawValue:H}=await s8({url:this.config.url({path:"/audio/speech",modelId:this.modelId}),headers:f8(this.config.headers(),X.headers),body:W,failedResponseHandler:sU,successfulResponseHandler:fv6(),abortSignal:X.abortSignal,fetch:this.config.fetch});return{audio:$,warnings:Z,request:{body:JSON.stringify(W)},response:{timestamp:J,modelId:this.modelId,headers:K,body:H}}}},un9,ln9,pb6,mn9=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 f5({provider:"openai",providerOptions:G,schema:ln9}),W=new FormData,Z=X instanceof Uint8Array?new Blob([X]):new Blob([PG(X)]);W.append("model",this.modelId);let $=Mv6(Y);if(W.append("file",new File([Z],"audio",{type:Y}),`audio.${$}`),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)W.append(`${H}[]`,String(B));else W.append(H,String(U))}return{formData:W,warnings:Q}}async doGenerate(X){var Y,G,Q,J,W,Z,$,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:z,rawValue:O}=await aR1({url:this.config.url({path:"/audio/transcriptions",modelId:this.modelId}),headers:f8(this.config.headers(),X.headers),formData:U,failedResponseHandler:sU,successfulResponseHandler:i8(un9),abortSignal:X.abortSignal,fetch:this.config.fetch}),D=N.language!=null&&N.language in pb6?pb6[N.language]:void 0;return{text:N.text,segments:($=(Z=(J=N.segments)==null?void 0:J.map((E)=>({text:E.text,startSecond:E.start,endSecond:E.end})))!=null?Z:(W=N.words)==null?void 0:W.map((E)=>({text:E.word,startSecond:E.start,endSecond:E.end})))!=null?$:[],language:D,durationInSeconds:(K=N.duration)!=null?K:void 0,warnings:B,response:{timestamp:H,modelId:this.modelId,headers:z,body:O}}}},dn9="3.0.53",GMY;var Gy6=w(()=>{S0();m4();S0();i0();S0();m4();S0();S0();i0();S0();i0();m4();S0();m4();i0();S0();S0();i0();m4();S0();S0();i0();S0();i0();S0();S0();i0();S0();i0();S0();i0();S0();i0();S0();i0();S0();i0();S0();i0();S0();i0();S0();i0();S0();i0();S0();i0();S0();i0();m4();S0();m4();S0();i0();S0();i0();S0();i0();m4();S0();S0();S0();i0();S0();S0();i0();S0();i0();Gk0=F.object({error:F.object({message:F.string(),type:F.string().nullish(),param:F.any().nullish(),code:F.union([F.string(),F.number()]).nullish()})}),sU=bX({errorSchema:Gk0,errorToMessage:(X)=>X.error.message});Fp9=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()}))),Up9=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()}),Gk0]))),Bp9=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()})));Dp9=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()}))),wp9=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()}),Gk0]))),xb6=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()}))),Ep9=Q0(()=>n1(F.object({dimensions:F.number().optional(),user:F.string().optional()}))),Pp9=Q0(()=>n1(F.object({data:F.array(F.object({embedding:F.array(F.number())})),usage:F.object({prompt_tokens:F.number()}).nullish()}))),hb6=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()}))),Ap9={"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},Tp9=["chatgpt-image-","gpt-image-1-mini","gpt-image-1.5","gpt-image-1"];tb6=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()})])}))),ab6=Q0(()=>n1(F.object({status:F.enum(["completed","failed"]),output:F.string().optional()}))),OjY=Q0(()=>n1(F.object({}))),Mp9=E8({id:"openai.apply_patch",inputSchema:tb6,outputSchema:ab6}),Rp9=Mp9,Sp9=Q0(()=>n1(F.object({code:F.string().nullish(),containerId:F.string()}))),kp9=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()}))),Cp9=Q0(()=>n1(F.object({container:F.union([F.string(),F.object({fileIds:F.array(F.string()).optional()})]).optional()}))),vp9=E8({id:"openai.code_interpreter",inputSchema:Sp9,outputSchema:kp9}),fp9=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()}))),bp9=Q0(()=>n1(F.string())),yp9=p5({id:"openai.custom",inputSchema:bp9}),rb6=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())])}),ob6=F.object({type:F.enum(["and","or"]),filters:F.array(F.union([rb6,F.lazy(()=>ob6)]))}),hp9=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([rb6,ob6]).optional()}))),gp9=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()}))),up9=E8({id:"openai.file_search",inputSchema:F.object({}),outputSchema:gp9}),lp9=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())),mp9=Q0(()=>n1(F.object({}))),dp9=Q0(()=>n1(F.object({result:F.string()}))),cp9=E8({id:"openai.image_generation",inputSchema:mp9,outputSchema:dp9}),sb6=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()})}))),eb6=Q0(()=>n1(F.object({output:F.string()}))),pp9=E8({id:"openai.local_shell",inputSchema:sb6,outputSchema:eb6}),Xy6=Q0(()=>n1(F.object({action:F.object({commands:F.array(F.string()),timeoutMs:F.number().optional(),maxOutputLength:F.number().optional()})}))),sS0=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()})])}))}))),np9=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(),tp9=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:np9}),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()}))),ap9=E8({id:"openai.shell",inputSchema:Xy6,outputSchema:sS0}),rp9=Q0(()=>n1(F.object({execution:F.enum(["server","client"]).optional(),description:F.string().optional(),parameters:F.record(F.string(),F.unknown()).optional()}))),eS0=Q0(()=>n1(F.object({arguments:F.unknown().optional(),call_id:F.string().nullish()}))),Xk0=Q0(()=>n1(F.object({tools:F.array(F.record(F.string(),F.unknown()))}))),op9=E8({id:"openai.tool_search",inputSchema:eS0,outputSchema:Xk0}),ep9=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()}))),Xn9=Q0(()=>n1(F.object({}))),Yn9=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()}))),Gn9=E8({id:"openai.web_search",inputSchema:Xn9,outputSchema:Yn9}),Jn9=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()}))),Zn9=Q0(()=>n1(F.object({}))),Wn9=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()}))),$n9=E8({id:"openai.web_search_preview",inputSchema:Zn9,outputSchema:Wn9}),Yk0=F.lazy(()=>F.union([F.string(),F.number(),F.boolean(),F.null(),F.array(Yk0),F.record(F.string(),Yk0)])),Kn9=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."))),Hn9=Q0(()=>n1(F.object({}))),Fn9=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(),Yk0]).optional()}))),Un9=E8({id:"openai.mcp",inputSchema:Hn9,outputSchema:Fn9}),Nn9={applyPatch:Rp9,customTool:xp9,codeInterpreter:_p9,fileSearch:up9,imageGeneration:ip9,localShell:pp9,shell:ap9,webSearchPreview:$n9,webSearch:Qn9,mcp:Bn9,toolSearch:sp9};Dn9=F.object({itemId:F.string().nullish(),reasoningEncryptedContent:F.string().nullish()});fZ1=F.lazy(()=>F.union([F.string(),F.number(),F.boolean(),F.null(),F.array(fZ1),F.record(F.string(),fZ1.optional())])),wn9=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(),fZ1.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(),fZ1.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}))]))),Ln9=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(),fZ1.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()}))),En9=["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"],ijY=["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",...En9],mb6=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(Yy6)]).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()})));hn9=Q0(()=>n1(F.object({instructions:F.string().nullish(),speed:F.number().min(0.25).max(4).default(1).nullish()}))),un9=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()}))),ln9=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()}))),pb6={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"};GMY=Qk0()});function cn9(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 in9="https://assets.decocache.com/decocms/d138aa7e-5b8c-4821-9e64-6aff40df2cdc/ChatGPT_logo.svg",Qy6;var Jy6=w(()=>{Gy6();Qy6={info:{id:"openai-compatible",name:"OpenAI Compatible",description:"Custom OpenAI-compatible endpoint",logo:in9},supportedMethods:["api-key"],create(X){let{baseUrl:Y,apiKey:G}=cn9(X),Q=Qk0({baseURL:Y,apiKey:G||"not-needed",name:"openai-compatible"}),J=Object.assign((...W)=>Q.chat(...W),Q,{languageModel:Q.chat});return{info:this.info,aiSdk:J,async listModels(){let W={};if(G)W.Authorization=`Bearer ${G}`;let Z=await fetch(`${Y}/models`,{headers:W,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 zJ(){let X=u4();return{...X.aiGatewayEnabled&&{deco:SG1},...X.localMode&&{"claude-code":jS0,codex:cS0},anthropic:o_6,google:kb6,openrouter:Vj1,"openai-compatible":Qy6}}var OL=w(()=>{s_6();jS1();_S1();Cb6();Jy6();z20();D20();l9()});function pn9(X){return X.includes("/")?X.split("/").slice(1).join("/"):X}function nn9(X){let Y=X.supported_parameters.includes("tools"),G=X.supported_parameters.includes("reasoning");return{providerId:"openrouter",modelId:pn9(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 Wy6(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 tn9(X){if(X){let Y=await X.get(Zy6,"openrouter");if(Y)return Wy6(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(nn9);if(X)await X.set(Zy6,"openrouter",Q);return Wy6(Q)}catch{return new Map}}function an9(X){let Y=X.replace(/\./g,"-"),G=X.replace(/-\d{8}$/,""),Q=G.replace(/\./g,"-");return[...new Set([X,Y,G,Q])]}function rn9(X){return X.providerId==="anthropic"||X.modelId.startsWith("anthropic/")}function Ky6(X,Y){if(rn9(Y)&&X.includes("vision")&&!X.includes("file"))return[...X,"file"];return X}function on9(X,Y){return X.map((G)=>{let J=an9(G.modelId).map(($)=>Y.get($)).find(Boolean),W=G.capabilities.length?G.capabilities:J?.capabilities??[],Z=Ky6(W,G);if(!J)return Z===W?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 Jk0{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=zJ()[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,W=zJ()[J];if(!W)throw Error(`Unknown provider: ${J}`);if(this.cache){let B=await this.cache.get(Y,J);if(B)return $y6(B,W,Q)}let $=await W.create(Q).listModels(),K=new Set,H=$.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 tn9(this.cache);H=on9(H,B)}else H=H.map((B)=>({...B,capabilities:Ky6(B.capabilities,B)}));let U=H.map((B)=>({...B,providerId:J}));if(this.cache)await this.cache.set(Y,J,U);return $y6(U,W,Q)}}function $y6(X,Y,G){let J=Y.create(G).asyncResearch;if(!J)return X;return X.map((W)=>J.canHandle(W.modelId)?{...W,asyncResearch:!0}:W)}var Zy6="_global";var Hy6=w(()=>{OL()});function bS1(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 sn9,readdir as en9,readFile as Fy6,stat as yS1,unlink as Xt9,writeFile as Yt9}from"fs/promises";import{createHmac as Gt9}from"crypto";import{dirname as Qt9,join as yZ1}from"path";function Zk0(X){let Y=X.replace(/[^a-zA-Z0-9_-]/g,"_");return yZ1(Jt9,Y)}function bZ1(X,Y){return yZ1(Zk0(X),Qr(Y))}class xZ1{orgId;baseUrl;constructor(X,Y){this.orgId=X;this.baseUrl=Y}async get(X){let Y=bZ1(this.orgId,X),G=await yS1(Y),Q=QA(X),J=await Fy6(Y),W=kV1(Q);return{content:W?new TextDecoder().decode(J):Buffer.from(J).toString("base64"),contentType:Q,encoding:W?"utf-8":"base64",size:G.size,lastModified:G.mtime}}async put(X,Y,G){let Q=bZ1(this.orgId,X);return await sn9(Qt9(Q),{recursive:!0}),await Yt9(Q,typeof Y==="string"?Buffer.from(Y,"utf-8"):Y),{key:X}}async list(X){let Y=X?.prefix?yZ1(Zk0(this.orgId),Qr(X.prefix)):Zk0(this.orgId),G;try{G=await en9(Y,{withFileTypes:!0})}catch{return{objects:[],isTruncated:!1}}let Q=X?.maxKeys??1000,J=X?.prefix,W=G.filter(($)=>$.isFile());if(X?.delimiter){let $=[],K=G.filter((O)=>O.isDirectory());for(let O of K){let D=J?`${J}/${O.name}/`:`${O.name}/`;$.push(D)}$.sort();let H=Q,U=$.slice(0,H);H-=U.length;let B=W.slice(0,H),N=$.length+W.length;return{objects:await Promise.all(B.map(async(O)=>{let D=await yS1(yZ1(Y,O.name));return{key:J?`${J}/${O.name}`:O.name,size:D.size,lastModified:D.mtime}})),isTruncated:N>Q,commonPrefixes:U.length>0?U:void 0}}return{objects:await Promise.all(W.slice(0,Q).map(async($)=>{let K=await yS1(yZ1(Y,$.name));return{key:J?`${J}/${$.name}`:$.name,size:K.size,lastModified:K.mtime}})),isTruncated:W.length>Q}}async delete(X){await Xt9(bZ1(this.orgId,X))}async head(X){let Y=await yS1(bZ1(this.orgId,X));return{contentType:QA(X),size:Y.size,lastModified:Y.mtime}}async presignedGetUrl(X){let Y=bZ1(this.orgId,X),G=await Fy6(Y),Q=QA(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=Qr(X),Q=Math.floor(Date.now()/1000)+Y,J=u4().encryptionKey||"dev-secret",W=`${this.orgId}:${G}:${Q}:PUT`,Z=Gt9("sha256",J).update(W).digest("hex"),$=new URL(`/api/dev-assets/${this.orgId}/${G}`,this.baseUrl);return $.searchParams.set("expires",Q.toString()),$.searchParams.set("signature",Z),$.searchParams.set("method","PUT"),$.toString()}}var Jt9="./data/assets";var Wk0=w(()=>{nT0();l9()});function Zt9(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 Wt9(X,Y){for(let[G,Q]of Object.entries(Y)){let J=X[G];if(!J||J.length===0){let W=X["*"];if(!W||W.length===0)return!1;if(W.includes("*"))continue;for(let Z of Q)if(!W.includes(Z))return!1;continue}if(J.includes("*"))continue;for(let W of Q)if(!J.includes(W))return!1}return!0}function Kk0(X){let{auth:Y,headers:G,role:Q,permissions:J,userId:W}=X,Z=Y.api.hasPermission;return{hasPermission:async($,K)=>{if(Q&&XR0.includes(Q))return!0;if(J)return Wt9(J,$);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:$,...H}}))?.success===!0)return!0;let B={};for(let z of Object.keys($))B[z]=["*"];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($)=>{return Y.api.createOrganization({headers:G,body:$})},update:async($)=>{return Y.api.updateOrganization({headers:G,body:$})},delete:async($)=>{await Y.api.deleteOrganization({headers:G,body:{organizationId:$}})},get:async($)=>{return Y.api.getFullOrganization({headers:G,query:$?{organizationId:$}:void 0})},list:async($)=>{return Y.api.listOrganizations({headers:G,query:$?{userId:$}:void 0})},addMember:async($)=>{return Y.api.addMember({headers:G,body:$})},removeMember:async($)=>{await Y.api.removeMember({headers:G,body:$})},listMembers:async($)=>{return Y.api.listMembers({headers:G,query:$?{organizationId:$.organizationId,limit:$.limit,offset:$.offset}:void 0})},updateMemberRole:async($)=>{return Y.api.updateMemberRole({headers:G,body:$})}},apiKey:{create:async($)=>{return Y.api.createApiKey({body:{...$,userId:W}})},list:async()=>{return Y.api.listApiKeys({headers:G})},update:async($)=>{return Y.api.updateApiKey({body:{...$,userId:W}})},delete:async($)=>{await Y.api.deleteApiKey({headers:G,body:{keyId:$}})}}}}async function Hk0(X,Y,G){if(XR0.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 $t9(X,Y,G,Q=By6,J){let W=X.headers.get("Authorization");try{let Z=new Headers(X.headers);Z.set("X-MCP-Session-Auth","true");let $=await Q.measure("auth_get_mcp_session",()=>Y.api.getMcpSession({headers:Z}));if($){let K=$.userId,H=X.headers.get("x-org-id"),U=X.headers.get("x-org-slug"),B=await Q.measure("auth_query_membership",()=>{let D=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 D.where("organization.id","=",H).executeTakeFirst();if(U)return D.where("organization.slug","=",U).executeTakeFirst();return D.executeTakeFirst()}),N=B?.role,z=B?{id:B.orgId,slug:B.orgSlug,name:B.orgName}:void 0;if(B&&N)J?.set(K,B.organizationId,N);let O;if(B&&N)O=await Q.measure("auth_fetch_role_permissions",()=>Hk0(G,B.organizationId,N));return{user:{id:K,role:N},role:N,permissions:O,organization:z}}}catch(Z){console.error("[Auth] OAuth session check failed:",Z)}if(W?.startsWith("Bearer ")){let Z=W.replace("Bearer ","").trim();try{let $=await Q.measure("auth_verify_mesh_jwt",()=>CT6(Z));if($){let K,H=$.metadata?.organizationId;if($.sub&&H){let N=J?.get($.sub,H);if(N)K=N;else if(K=(await Q.measure("auth_query_membership",()=>G.selectFrom("member").select(["member.role"]).where("member.userId","=",$.sub).where("member.organizationId","=",H).executeTakeFirst()))?.role,K)J?.set($.sub,H,K)}let U,B=$.metadata?.organizationId;if(B){let N=$.metadata?.organizationName,z=$.metadata?.organizationSlug;if(N||z)U={id:B,name:N,slug:z};else{let O=await Q.measure("auth_query_org_for_mesh_jwt",()=>G.selectFrom("organization").select(["id","slug","name"]).where("id","=",B).executeTakeFirst());U=O?{id:O.id,slug:O.slug,name:O.name}:{id:B}}}return{user:{id:$.sub,connectionId:$.metadata?.connectionId,role:K},role:K,permissions:$.permissions,organization:U}}}catch{}try{let $=await Q.measure("auth_verify_api_key",()=>Y.api.verifyApiKey({body:{key:Z}}));if($?.valid&&$.key){let K=$.key.metadata?.organization,H=$.key.permissions,U,B=$.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:$.key.id,user:{id:$.key.userId,role:U},role:U,permissions:H,organization:K?{id:K.id,slug:K.slug,name:K.name}:void 0}}}catch($){console.error("[Auth] API key check failed:",$)}}try{let Z=new Headers(X.headers);Z.delete("Authorization");let $=await Q.measure("auth_get_session",()=>Y.api.getSession({headers:Z}));if($){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 z=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","=",$.user.id);if(U)z=z.where("organization.id","=",U);else if(B)z=z.where("organization.slug","=",B);return z.executeTakeFirst()});if(N)K={id:N.orgId,slug:N.orgSlug,name:N.orgName},H=N.role}else if($.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((O)=>O.userId===$.user.id)?.role;else K={id:$.session.activeOrganizationId,slug:"",name:""}}return{user:{id:$.user.id,email:$.user.email,emailVerified:!!$.user.emailVerified,name:$.user.name,image:$.user.image??void 0,role:H},role:H,organization:K}}}catch(Z){let $=Z;console.error("[Auth] Session check failed:",JSON.stringify({message:$.message,body:$.body,stack:$.stack},null,2))}return{user:void 0}}async function Ny6(X){let Y=new uM(X.encryption.key),G=u4().clickhouseUrl,Q=!!G,J=Q?"clickhouse":"duckdb",W,Z;if(Q)W=new SJ1(G),Z=new SJ1(G);else{let{engine:D}=await fM0({basePath:AD()}),{engine:E}=await fM0({basePath:RV()});W=D,Z=E}let{resolve:$}=await import("path"),K=$(AD()),H=$(RV()),U=Q?(D)=>"monitoring_logs":(D)=>`read_ndjson('${K}/${D}/**/*.ndjson', auto_detect=true)`,B=process.env.USE_METRICS_ROLLUP!=="false",N=Q?(D)=>B?"monitoring_metrics_rollup_1m":"monitoring_metrics":(D)=>`read_ndjson('${H}/${D}/**/*.ndjson', auto_detect=true)`,z=new yJ1(X.db),O={connections:new _G1(X.db,Y),organizationSettings:new bM0(X.db),monitoring:new bj0(W,U,Z,N,J),virtualMcps:new fG1(X.db),users:new nM0(X.db),tags:new pM0(X.db),virtualMcpPluginConfigs:new yM0(X.db),aiProviderKeys:new CG1(X.db,Y),oauthPkceStates:new GR0(X.db),automations:MR1(X.db),triggerCallbackTokens:new kJ1(X.db),orgSsoConfig:new uM0(X.db,Y),orgSsoSessions:new lM0(X.db),registry:{items:new Mo(X.db),publishRequests:new Ro(X.db),publishApiKeys:new So(X.db),monitorRuns:new bR1(X.db),monitorResults:new yR1(X.db),monitorConnections:new xR1(X.db)},brandContext:new CJ1(X.db),organizationDomains:new mw(X.db)};return async(D,E)=>{let P=E?.timings??By6,q=vo(),j=D?await X.observability.tracer.startActiveSpan("mesh.auth",async(u)=>{try{let a=await $t9(D,X.auth,X.db,P,X.memberRoleCache);return u.setStatus({code:$k0.SpanStatusCode.OK}),a}catch(a){throw u.setStatus({code:$k0.SpanStatusCode.ERROR,message:a.message}),u.recordException(a),a}finally{u.end()}}):{user:void 0},M=D?.headers.get("x-caller-id")??j.user?.connectionId??void 0,I=Kk0({auth:X.auth,headers:D?.headers??new Headers,role:j.role,permissions:j.permissions,userId:j.user?.id}),R={user:j.user};if(j.apiKeyId)R.apiKey={id:j.apiKeyId,name:"",userId:""};let C=j.organization,_=D?u4().baseUrl??`${new URL(D.url).origin}`:a$(),v=new RR(X.auth,R.user?.id,void 0,I,j.role,"self",void 0,C?.id),y={...O,threads:new bJ1(z,C?.id)},h=new Jk0(y.aiProviderKeys,X.modelListCache),d=Jr(),p=!C?null:d?bS1(d,C.id):new xZ1(C.id,_),f={timings:P,auth:R,connectionId:M,organization:C,storage:y,vault:Y,authInstance:X.auth,boundAuth:I,access:v,db:X.db,tracer:X.observability.tracer,meter:X.observability.meter,baseUrl:_,objectStorage:p,metadata:{requestId:crypto.randomUUID(),timestamp:new Date,wellKnownForwardableHeaders:Object.fromEntries(Kt9.map((u)=>[u,D?.headers.get(u)??null]).filter(([u,a])=>a!==null)),userAgent:D?.headers.get("x-mesh-client")||D?.headers.get("User-Agent")||void 0,ipAddress:(D?.headers.get("CF-Connecting-IP")||D?.headers.get("X-Forwarded-For"))??void 0,properties:Zt9(D?.headers.get("x-mesh-properties"))},eventBus:X.eventBus,aiProviders:h,createMCPProxy:async(u)=>{return await GC6(u,f)},invalidateMemberRole:X.memberRoleCache?(u,a)=>X.memberRoleCache.invalidate(u,a):void 0,getOrCreateClient:q,pendingRevalidations:[],firecrawlApiKey:u4().firecrawlApiKey};return f}}var $k0,Uy6,eU,By6,Kt9;var hZ1=w(()=>{lM();jj1();l9();lw();E20();P20();GR6();fk6();oK();bk6();xM0();gM0();pk6();nk6();hR1();uR1();_J1();dR1();cR1();w20();Hy6();CV1();Wk0();$k0=X1(x0(),1);eU={set:(X)=>{Uy6=X},create:async(X,Y)=>{return await Uy6(X,Y)}},By6={measure:async(X,Y)=>{return await Y()}},Kt9=["x-hub-signature-256"]});async function zy6(X,Y,G){return(await Y.storage.connections.findById(X,G))?.connection_url??null}function Ht9(X){let Y=X.toLowerCase();return Y.includes("resource_metadata=")||Y.includes("invalid_token")||Y.includes("oauth")}async function Oy6(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(Ht9(Q))return Q}if(await Ft9(X))return'Bearer realm="mcp"'}return null}catch{return null}}async function Ft9(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 Ys(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(!Fk0.includes(J.status))return J;let W=new URL(X);if(W.pathname=`/.well-known/oauth-protected-resource${G}`,J=await fetch(W.toString(),{method:"GET",headers:{Accept:"application/json"}}),!Fk0.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 Ut9(X,Y){let G=await zy6(X,Y);if(!G)return null;let Q;try{Q=new URL(G).origin}catch{return null}try{let J=await Ys(G);if(J.ok){let W=await J.json();if(W.authorization_servers?.[0])return W.authorization_servers[0]}}catch{}return Q}async function Dy6(X){let Y=X.get("meshContext");if(!Y)Y=await eU.create(X.req.raw),X.set("meshContext",Y);return Y}function wy6(X){return X?`/api/${X}`:""}async function Ly6({error:X,reqUrl:Y,connectionId:G,connectionUrl:Q,headers:J,orgSlug:W}){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 Oy6(Q,J))){let H=wy6(W);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 uZ1(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 $=new URL(X);$.pathname=`/.well-known/openid-configuration${G}`,J.push($);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 $=new URL(X);$.pathname="/.well-known/openid-configuration",J.push($)}let W=null;for(let Z of J){if(W=await fetch(Z.toString(),{method:"GET",headers:{Accept:"application/json"}}),W.ok)return W;if(W.status!==404&&W.status!==401)return W}return W}var Fk0,Ey6=(X)=>{if(!(X.hostname==="localhost"||X.hostname.endsWith(".localhost")||X.hostname==="127.0.0.1"))X.protocol="https:";return X},gZ1=async(X)=>{let Y=X.req.param("connectionId"),G=await Dy6(X),Q=Ey6(new URL(X.req.url)),J=X.req.param("org")??G.organization?.slug,W;if(J)if(G.organization?.id&&G.organization.slug===J)W=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);W=U.id}let Z=await zy6(Y,G,W);if(!Z)return X.json({error:"Connection not found"},404);let $=wy6(J),K=`${Q.origin}${$}/mcp/${Y}`,H=`${Q.origin}/oauth-proxy/${Y}`;try{let U=await Ys(Z);if(!U.ok&&Fk0.includes(U.status)){if(await Oy6(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 O={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(O),{status:200,headers:{"Content-Type":"application/json"}})}let z={...B,resource:K,authorization_servers:[H]};return new Response(JSON.stringify(z),{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)}},Uk0=()=>{let X=new A6;return X.get("/.well-known/oauth-protected-resource/mcp/:connectionId",(Y)=>gZ1(Y)),X.get("/mcp/:connectionId/.well-known/oauth-protected-resource",(Y)=>gZ1(Y)),X},Py6=()=>{let X=new A6;return X.get("/mcp/:connectionId/.well-known/oauth-protected-resource",(Y)=>gZ1(Y)),X},Bt9=async(X)=>{let Y=X.req.param("connectionId"),G=await Dy6(X),Q=await Ut9(Y,G);if(!Q)return X.json({error:"Connection not found or no auth server"},404);try{let J=await uZ1(Q);if(!J.ok)return new Response(J.body,{status:J.status,statusText:J.statusText,headers:{"Content-Type":"application/json"}});let W=await J.json(),$=`${Ey6(new URL(X.req.url)).origin}/oauth-proxy/${Y}`,K={...W,authorization_endpoint:W.authorization_endpoint?`${$}/authorize`:void 0,token_endpoint:W.token_endpoint?`${$}/token`:void 0,registration_endpoint:W.registration_endpoint?`${$}/register`:void 0};return new Response(JSON.stringify(K),{status:200,headers:{"Content-Type":"application/json"}})}catch(J){let W=J;return console.error("[oauth-proxy] Failed to proxy auth server metadata:",W),X.json({error:"Failed to proxy auth server metadata",message:W.message},502)}},Bk0=()=>{let X=new A6;return X.get("/.well-known/oauth-authorization-server/oauth-proxy/:connectionId",Bt9),X},qy6;var lZ1=w(()=>{iX();hZ1();Fk0=[404,401,406];qy6=new A6;qy6.route("/",Uk0());qy6.route("/",Bk0())});async function xS1(X){try{let Y;try{let Q=await Ys(X);if(Q.ok)Y=(await Q.json()).authorization_servers?.[0]}catch{}if(!Y)Y=new URL(X).origin;let G=await uZ1(Y);if(G.ok)return(await G.json()).token_endpoint??null;return null}catch{return null}}var Nk0=w(()=>{lZ1()});class V3{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(W)=>{let Z=await W.selectFrom("downstream_tokens").select(["id","createdAt"]).where("connectionId","=",X.connectionId).executeTakeFirst();if(Z)return await W.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 $=m7("dtok");return await W.insertInto("downstream_tokens").values({id:$,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:$,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 iR=w(()=>{kH()});function Nt9(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,...W}=Q;Y[G]=W}else Y[G]=Q;return Y}async function Ok0(X,Y,G){return Y.tracer.startActiveSpan("mesh.connection.build_headers",{attributes:{"connection.id":X.id}},async(Q)=>{try{let J=await zt9(X,Y,G);return Q.setStatus({code:zk0.SpanStatusCode.OK}),J}catch(J){throw Q.setStatus({code:zk0.SpanStatusCode.ERROR,message:J.message}),Q.recordException(J),J}finally{Q.end()}})}async function zt9(X,Y,G){let Q=X.id,J=Rj0(X.configuration_state,X.configuration_scopes),W=Y.auth.user,Z=W?.id??Y.auth.apiKey?.userId??(G?X.created_by:void 0),[$,K]=Z?await kT6({sub:Z,user:{id:Z,email:W?.email,name:W?.name,image:W?.image,role:W?.role},metadata:{state:Nt9(X.configuration_state),meshUrl:Y.baseUrl,connectionId:Q,organizationId:Y.organization?.id,organizationName:Y.organization?.name,organizationSlug:Y.organization?.slug},permissions:J}).then((O)=>[O,null]).catch((O)=>[null,O]):[null,Error("User ID required to issue configuration token")];if(K)console.error("Failed to issue configuration token:",$);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 V3(Y.db,Y.vault),z=await N.get(Q);if(z){let O=!!z.refreshToken&&!!z.tokenEndpoint;if(N.isExpired(z,O?300000:0))if(O){let E=z.tokenEndpoint;if(X.connection_url&&z.tokenEndpoint?.includes("/oauth-proxy/")){let q=await xS1(X.connection_url);if(q)E=q}let P=await qQ1({...z,tokenEndpoint:E});if(P.success&&P.accessToken)await N.upsert({connectionId:Q,accessToken:P.accessToken,refreshToken:P.refreshToken??z.refreshToken,scope:P.scope??z.scope,expiresAt:P.expiresIn?new Date(Date.now()+P.expiresIn*1000):null,clientId:z.clientId,clientSecret:z.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: ${!!z.refreshToken}, tokenEndpoint: ${!!z.tokenEndpoint})`);else B=z.accessToken}if(!B&&X.connection_token)B=X.connection_token;if(B)U.Authorization=`Bearer ${B}`;if($)U["x-mesh-token"]=$;return U}var zk0;var Ay6=w(()=>{Sj0();lM();nM1();Nk0();iR();zk0=X1(x0(),1)});function Ty6(X){let Y=new bG1({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",(W)=>{let Z=W.toString().trimEnd();if(Z)console.error(`${Z} \x1B[2m[${G}]\x1B[0m`)}),Y}var Iy6=w(()=>{C20()});var Ot9="mcp.mesh",Gs;var Vy6=w(()=>{gH();hR1();Et();Gs=class Gs extends Ot{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??UQ(),Y=await IA("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 W=async()=>{return(await this.ensureToolsMap()).get(G)?._meta};await new RR(Q.authInstance,Q.auth.user?.id??Q.auth.apiKey?.userId,G,Q.boundAuth,Q.organization?.role??Q.auth.user?.role,J.id,W,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[Ot9]?.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 Dk0{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 dZ1(X,Y){try{if(!X.organizationId)return;let G=wk0.redact(X.toolArguments??{}),Q=wk0.redact(X.result??{}),J=X.errorMessage?wk0.redactString(X.errorMessage):"";mZ1.logs.getLogger("mesh.monitoring","1.0.0").emit({severityNumber:X.isError?mZ1.SeverityNumber.ERROR:mZ1.SeverityNumber.INFO,severityText:X.isError?"ERROR":"INFO",body:X.toolName,attributes:{[R5.TYPE]:X.type??K51,[R5.ORGANIZATION_ID]:X.organizationId,[R5.CONNECTION_ID]:X.connectionId,[R5.CONNECTION_TITLE]:"",[R5.TOOL_NAME]:X.toolName,[R5.INPUT]:B51(JSON.stringify(G)),[R5.OUTPUT]:B51(JSON.stringify(Q)),[R5.IS_ERROR]:X.isError,[R5.ERROR_MESSAGE]:J,[R5.DURATION_MS]:X.duration,[R5.USER_ID]:X.userId||"",[R5.REQUEST_ID]:X.requestId,[R5.USER_AGENT]:X.userAgent||"",[R5.VIRTUAL_MCP_ID]:X.virtualMcpId||"",[R5.PROPERTIES]:X.properties?JSON.stringify(X.properties):""},context:Y})}catch{}}var mZ1,wk0;var hS1=w(()=>{oK();fG0();mZ1=X1(N81(),1),wk0=new Dk0});function Lk0(X){let{ctx:Y,organizationId:G,connectionId:Q,toolName:J,durationMs:W,isError:Z}=X;if(!G||!Q||!J)return;let $={"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,$)}function jy6(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 My6(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,W]of Object.entries(G))if(typeof W==="string")Q[J]=W;return Object.keys(Q).length>0?Q:void 0}function Ry6(X,Y){if(!X&&!Y)return;if(!X)return Y;if(!Y)return X;return{...Y,...X}}var Sy6=w(()=>{q7();hS1();oK()});var cZ1,Qs;var ky6=w(()=>{Et();hS1();Sy6();cZ1=X1(x0(),1);Qs=class Qs extends Ot{options;inflightRequests=new Map;requestContext;constructor(X,Y){super(X);this.options=Y;this.requestContext=cZ1.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 W;if(X.method==="tools/call"&&Q)W=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:W})}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:W,toolName:Z,toolArguments:$,span:K}=Y,H=Date.now()-J;if(this.inflightRequests.delete(X.id),W!=="tools/call"||!Z)return;let U=G.organization?.id??"",B="error"in X,N=B?X.error:X.result,z=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)Lk0({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 O=My6($),D=Ry6(G.metadata.properties,O),E=cZ1.trace.setSpan(cZ1.context.active(),K);dZ1({organizationId:G.organization?.id??"",connectionId:Q,toolName:Z,toolArguments:$,result:z,duration:H,isError:Boolean(B),errorMessage:jy6(z)||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:D||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 Cy6=w(()=>{Et();Vy6();ky6()});async function vy6(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(!u4().localMode)throw Error("STDIO connections are only available in local mode (--local-mode).");let W=X.connection_headers;if(!tN(W))throw Error("STDIO connection missing parameters");let Z=Ty6({id:Q,name:X.title,command:W.command,args:W.args,env:W.envVars,cwd:W.cwd});return Z=Dt(Z,($)=>new Gs($,{ctx:Y,connection:X,superUser:G}),($)=>new Qs($,{ctx:Y,connectionId:Q,virtualMcpId:J})),Dt9(Z,Q)}case"HTTP":case"Websocket":{if(!X.connection_url)throw Error(`${X.connection_type} connection missing URL`);let W=await Ok0(X,Y,G),Z=X.connection_headers;if(Z&&"headers"in Z)Object.assign(W,Z.headers);let $=new pN(new URL(X.connection_url),{requestInit:{headers:W}});return $=Dt($,(K)=>new Gs(K,{ctx:Y,connection:X,superUser:G}),(K)=>new Qs(K,{ctx:Y,connectionId:Q,virtualMcpId:J})),Y.getOrCreateClient($,Q)}case"SSE":{if(!X.connection_url)throw Error("SSE connection missing URL");let W=await Ok0(X,Y,G),Z=X.connection_headers;if(Z&&"headers"in Z)Object.assign(W,Z.headers);let $=new Xw(new URL(X.connection_url),{requestInit:{headers:W}});return $=Dt($,(K)=>new Gs(K,{ctx:Y,connection:X,superUser:G}),(K)=>new Qs(K,{ctx:Y,connectionId:Q,virtualMcpId:J})),Y.getOrCreateClient($,Q)}default:throw Error(`Unknown connection type: ${X.connection_type}`)}}var Dt9;var _y6=w(()=>{l9();cw();c71();Bt();Ay6();cR1();Iy6();Cy6();Dt9=vo()});function gS1(X){return X.toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-|-$/g,"")}function Ek0(X){if(X&&typeof X==="object"&&"gatewayClientId"in X&&typeof X.gatewayClientId==="string")return X.gatewayClientId;return}function Pk0(X,Y){if(!Y)return X;let G=`${gS1(Y)}_`;return X.startsWith(G)?X.slice(G.length):X}function wt9(X){return X.split(/[-_]/).map((Y)=>Y?Y.charAt(0).toUpperCase()+Y.slice(1):Y).join(" ")}var uS1;var fy6=w(()=>{cN();uS1=class uS1 extends uY{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=gS1(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`${gS1(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=Ek0(Q._meta);if(!J)continue;if(Pk0(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=Ek0(Q._meta);if(!J)continue;if(Pk0(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,W=(typeof Q==="function"?Promise.resolve(Q()):Promise.resolve(Q)).catch((Z)=>{throw this.resolvedClients.delete(X),Z});return this.resolvedClients.set(X,W),W}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),W=G.tools,Z=W?new Set(W):null;for(let $ of J){if(Z&&!Z.has($.name))continue;X.push({...$,name:this.namespace(Y,$.name),_meta:{...$._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 W=await this.resolveClient(Q),Z=await this.fetchAllResources(W),$=J.resources,K=$?new Set($):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),W=await this.fetchAllResourceTemplates(J);for(let Z of W){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),W=G.prompts,Z=W?new Set(W):null;for(let $ of J){if(Z&&!Z.has($.name))continue;X.push({...$,name:this.namespace(Y,$.name),title:$.title??wt9($.name),_meta:{...$._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 by6=w(()=>{fy6()});var qk0;var yy6=w(()=>{by6();gR1();qk0=class qk0 extends uS1{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 W=G.get(J.id);Q[J.id]={client:()=>ko(J,Y,X.superUser??!1,X.mcpListCache),...W?.selected_tools!=null?{tools:W.selected_tools}:{},...W?.selected_resources!=null?{resources:W.selected_resources}:{},...W?.selected_prompts!=null?{prompts:W.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 Lt9(X,Y){if(X.connection_type!=="VIRTUAL")return!1;if(!Y||nN(Y))return!1;return X.id===Y}async function xy6(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 pR(J,Y,"passthrough",G)}async function pR(X,Y,G,Q=!1,J){let W=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":W.length}},async(H)=>{try{let U=await Promise.all(W.map((B)=>Y.storage.connections.findById(B)));return H.setStatus({code:Ak0.SpanStatusCode.OK}),U}catch(U){throw H.setStatus({code:Ak0.SpanStatusCode.ERROR,message:U.message}),H.recordException(U),U}finally{H.end()}})).filter((H)=>H!==null&&H.status==="active"&&!Lt9(H,X.id)),virtualMcp:X,superUser:Q,mcpListCache:UQ()??void 0,listTimeoutMs:J?.listTimeoutMs};return new qk0(K,Y)}var Ak0;var iZ1=w(()=>{q7();gH();yy6();Ak0=X1(x0(),1)});async function bW(X,Y,G=!1){if(X.connection_type==="VIRTUAL")return xy6(X,Y,G);return vy6(X,Y,G)}var sM0=w(()=>{_y6();iZ1()});function lS1(X){return(Y)=>{if(Y instanceof D4&&Y.code===V4.MethodNotFound)return X;throw Y}}var hy6=w(()=>{eX()});function Tk0(X,Y,G){let Q=ko(X,Y,G,UQ()??void 0),J=sD(Q,{name:"mcp-mesh-enhanced",version:"1.0.0"},{capabilities:Et9,toolCallTimeoutMs:nA});return J.server.setRequestHandler(Qq,async()=>{return await Q.listResources().catch(lS1({resources:[]}))}),J.server.setRequestHandler(Jq,async()=>{return await Q.listResourceTemplates().catch(lS1({resourceTemplates:[]}))}),J.server.setRequestHandler(Zq,async()=>{return await Q.listPrompts().catch(lS1({prompts:[]}))}),J}var Et9;var gy6=w(()=>{q7();eX();gR1();gH();hy6();Et9={tools:{},resources:{},prompts:{}}});var Js=w(()=>{sM0();gy6()});var Pt9,qt9,At9,Tt9,Ik0;var uy6=w(()=>{EQ1();hM6();PW();dM6();iM6();QG1();Ej();nM6();q7();K0();h0();lw();gH();Js();Wr();cw();L20();Pt9=[{name:/^(COLLECTION_REGISTRY_APP_LIST|REGISTRY_ITEM_LIST)$/,inputSchema:F.object({})}],qt9={LLM:cM1,LLMS:cM1,ASSISTANTS:xM6,MCP:cM6,OBJECT_STORAGE:jM,WORKFLOW:eF0,WORKFLOW_EXECUTION:Tn4,AI_GATEWAY_BILLING:pM6,EVENT_BUS:hM1,TRIGGER:gM1,REGISTRY:Pt9,BRAND:dM1},At9=OU.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.")}),Tt9=Gw(W3),Ik0=m1({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:At9,outputSchema:Tt9,handler:async(X,Y)=>{await Y.access.check();let G=s1(Y),Q=X.binding?typeof X.binding==="string"?(()=>{let B=qt9[X.binding.toUpperCase()];if(!B)throw Error(`Unknown binding: ${X.binding}`);return B})():X.binding:void 0,J=Q?Rq1(Q):void 0,W=!!J,Z=X.limit??100,$=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:W?void 0:Z,offset:W?void 0:$});if(J){let B=UQ(),N=P7.SELF(G.id);await Promise.all(K.map(async(z)=>{if(z.tools!==null)return;let O=z.id===N?async()=>{let{listManagementTools:E}=await Promise.resolve().then(() => (Zs(),mS1));return E(Y)}:async()=>{let E=await bW(z,Y,!0);try{return(await E.listTools()).tools}finally{await E.close().catch(()=>{})}},D=await IA("tools",z.id,O,B);if(D!==null)z.tools=D}))}if(CU()){let B=a$(),N=P7.DEV_ASSETS(G.id);if(!K.some((z)=>z.id===N)){let z=Zr(G.id,B);if(!X.slug||vG1(z)===X.slug)K.unshift(z)}}if(W){let B=(await Promise.all(K.map(async(D)=>{if(!D.tools||D.tools.length===0)return null;return J.isImplementedBy(D.tools.map((P)=>({name:P.name,inputSchema:P.inputSchema,outputSchema:P.outputSchema})))?D:null}))).filter((D)=>D!==null),N=B.length,z=B.slice($,$+Z),O=$+Z<N;return{items:z,totalCount:N,hasMore:O}}let U=$+Z<H;return{items:K,totalCount:H,hasMore:U}}})});var It9,Vk0;var ly6=w(()=>{PW();q7();h0();lw();gH();Js();Wr();cw();It9=p71(W3),Vk0=m1({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:i71,outputSchema:It9,handler:async(X,Y)=>{let G=s1(Y);if(await Y.access.check(),CU()&&vV1(X.id,G.id))return{item:Zr(G.id,a$())};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=P7.SELF(G.id),W=Q.id===J?async()=>{let{listManagementTools:$}=await Promise.resolve().then(() => (Zs(),mS1));return $(Y)}:async()=>{let $=await bW(Q,Y,!0);try{return(await $.listTools()).tools}finally{await $.close().catch(()=>{})}},Z=await IA("tools",Q.id,W,UQ(),($)=>Y.pendingRevalidations.push($));if(Z!==null)Q.tools=Z}return{item:Q}}})});function my6(X,Y,G){if(Y.some((Q)=>Q!=="*"&&Q.startsWith("SELF::"))&&X.SELF===void 0)X.SELF={value:`${G}_self`}}async function Mt9(X,Y,G,Q){for(let W of Y){if(W==="*")continue;let[Z]=tM6(W),$=iM1(Z,X);if($===void 0||$===null)throw Error(`Scope references key "${Z}" but it's not present in state`)}let J=aM6(X,Y);for(let W of J){if(W.endsWith("_self"))continue;let Z=await Q.storage.connections.findById(W);if(!Z||Z.organization_id!==G)throw Error(`Referenced connection not found: ${W}`);try{await Q.access.check(W)}catch($){throw Error(`Access denied to referenced connection: ${W}. ${$.message}`)}}}var Vt9,jt9,jk0;var dy6=w(()=>{Sj0();Js();iR();K0();h0();gH();yG1();cw();Vt9=F.object({id:F.string().describe("ID of the connection to update"),data:S71.describe("Partial connection data to update")}),jt9=F.object({item:W3.describe("The updated connection entity")});jk0=m1({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:Vt9,outputSchema:jt9,handler:async(X,Y)=>{N0(Y);let G=s1(Y);await Y.access.check();let Q=H6(Y);if(!Q)throw Error("User ID required to update connection");let{id:J,data:W}=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=W.connection_url??Z.connection_url;if($==="VIRTUAL"){let E=Nj(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=zj(E)}let H=W.configuration_state??Z.configuration_state??{},U=W.configuration_scopes??Z.configuration_scopes??[];if(W.configuration_state!==void 0||W.configuration_scopes!==void 0){if(W.configuration_state!==void 0)H=W.configuration_state??{};else if(H===null||H===void 0)H={};if(W.configuration_scopes!==void 0)U=W.configuration_scopes??[];if(U.length>0){let E=H;my6(E,U,G.id),await Mt9(E,U,G.id,Y)}}let B=W.connection_token??Z.connection_token;if(!B)try{let P=await new V3(Y.db,Y.vault).get(J);if(P?.accessToken)B=P.accessToken}catch{}let N=await UA({id:Z.id,title:W.title??Z.title,connection_type:$,connection_url:K,connection_token:B,connection_headers:W.connection_headers??Z.connection_headers}).catch(()=>null),z=N?.tools?.length?N.tools:null;if(W.configuration_scopes===void 0&&N?.scopes?.length)U=N.scopes;my6(H,U,G.id);let O={...W,connection_url:K,tools:null,configuration_state:H,configuration_scopes:U,updated_by:Q},D=await Y.storage.connections.update(J,O);if(z)UQ()?.set("tools",J,z).catch(()=>{});if((W.configuration_state!==void 0||W.configuration_scopes!==void 0)&&H&&U)try{await(await bW(D,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:D}}})});var Rt9,Mk0;var cy6=w(()=>{PW();K0();CX();h0();gH();cw();Rt9=n71.extend({force:F.boolean().optional().describe("If true, removes this connection from all agents that reference it before deleting")}),Mk0=m1({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:Rt9,outputSchema:t71(W3),handler:async(X,Y)=>{N0(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 W=await Y.storage.virtualMcps.listByConnectionId(G.id,X.id);if(W.length>0)if(X.force)await Y.storage.virtualMcps.removeConnectionReferences(X.id);else throw Error(JSON.stringify({code:"CONNECTION_IN_USE",agentNames:W.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}})}}UQ()?.invalidate(X.id).catch(()=>{});let $=H6(Y);if($)M6.capture({distinctId:$,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 Rk0;var iy6=w(()=>{K0();h0();Rk0=m1({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 py6=w(()=>{LM6();uy6();ly6();dy6();cy6();iy6()});function ny6(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 Ct9(X,Y){let G=X;for(let J=Y.length;J>=1;J--){let W=`$${J}`;if(G.includes(W))G=G.replaceAll(W,ny6(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 W=Q[J],Z=ny6(Y[J]);G=G.slice(0,W)+Z+G.slice(W+1)}return G}function ty6(X){return X.replace(/-/g,"_")}function _t9(X){return`app_${ty6(X)}`}function ft9(X){return`app_role_${ty6(X)}`}function bt9(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 yt9(X,Y,G){if(await U1`CREATE SCHEMA IF NOT EXISTS ${U1.id(Y)}`.execute(X),!(await U1`
|
|
2406
2406
|
SELECT EXISTS (SELECT 1 FROM pg_roles WHERE rolname = ${G}) as exists
|
|
2407
2407
|
`.execute(X)).rows[0]?.exists)await U1`CREATE ROLE ${U1.id(G)} NOLOGIN`.execute(X);await U1`GRANT ${U1.id(G)} TO CURRENT_USER`.execute(X),await U1`GRANT USAGE, CREATE ON SCHEMA ${U1.id(Y)} TO ${U1.id(G)}`.execute(X),await U1`GRANT ALL ON ALL TABLES IN SCHEMA ${U1.id(Y)} TO ${U1.id(G)}`.execute(X),await U1`GRANT ALL ON ALL SEQUENCES IN SCHEMA ${U1.id(Y)} TO ${U1.id(G)}`.execute(X),await U1`ALTER DEFAULT PRIVILEGES IN SCHEMA ${U1.id(Y)} GRANT ALL ON TABLES TO ${U1.id(G)}`.execute(X),await U1`ALTER DEFAULT PRIVILEGES IN SCHEMA ${U1.id(Y)} GRANT ALL ON SEQUENCES TO ${U1.id(G)}`.execute(X),await U1`REVOKE ALL ON SCHEMA public FROM ${U1.id(G)}`.execute(X)}async function xt9(X,Y,G,Q){try{return await X.transaction().execute(async(J)=>{return await U1`SET LOCAL ROLE ${U1.id(G)}`.execute(J),await U1`SET LOCAL search_path TO ${U1.id(Y)}`.execute(J),await U1.raw(Q).execute(J)})}catch(J){if(bt9(J))return await yt9(X,Y,G),await X.transaction().execute(async(W)=>{return await U1`SET LOCAL ROLE ${U1.id(G)}`.execute(W),await U1`SET LOCAL search_path TO ${U1.id(Y)}`.execute(W),await U1.raw(Q).execute(W)});throw J}}var kt9,vt9,ay6;var ry6=w(()=>{B6();K0();h0();kt9=F.object({results:F.array(F.unknown()).optional(),success:F.boolean().optional()});vt9=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()});ay6=m1({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:vt9,outputSchema:F.object({result:F.array(kt9)}),handler:async(X,Y)=>{N0(Y),await Y.access.check();let G=Ct9(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=_t9(Y.connectionId),J=ft9(Y.connectionId);return{result:[{results:(await xt9(Y.db,Q,J,G)).rows,success:!0}]}}})});var oy6,gt9,sy6;var DL=w(()=>{K0();EQ1();oy6=F.object({connectionId:F.string().optional().describe("Filter subscriptions by connection ID (optional)")}),gt9=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)")}),sy6=F.object({subscriptions:F.array(gt9).describe("List of subscriptions")})});var Sk0;var ey6=w(()=>{h0();DL();Sk0=m1({name:"EVENT_PUBLISH",description:`Publish an event. Supports immediate, scheduled (deliverAt), and recurring (cron) delivery.
|
|
2408
2408
|
|