eve 0.31.2 → 0.32.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +30 -0
- package/dist/src/chunks/{use-eve-agent-CF5D6jSV.js → use-eve-agent-CX87G1vU.js} +30 -5
- package/dist/src/chunks/{use-eve-agent-DbYZLG0h.js → use-eve-agent-DwyRde1N.js} +30 -5
- package/dist/src/cli/commands/integration-connect.d.ts +1 -0
- package/dist/src/cli/commands/integration-connect.js +1 -1
- package/dist/src/cli/commands/integration-setup.d.ts +4 -0
- package/dist/src/cli/commands/integration-setup.js +1 -1
- package/dist/src/cli/commands/register-integration-commands.js +1 -1
- package/dist/src/cli/commands/register-registry-commands.js +1 -1
- package/dist/src/cli/commands/registry-declared-setups.d.ts +23 -0
- package/dist/src/cli/commands/registry-declared-setups.js +1 -0
- package/dist/src/cli/commands/registry-metadata.d.ts +69 -0
- package/dist/src/cli/commands/registry-metadata.js +1 -1
- package/dist/src/cli/commands/registry-package.d.ts +3 -3
- package/dist/src/cli/commands/registry-package.js +1 -1
- package/dist/src/cli/commands/registry-presentation.d.ts +20 -0
- package/dist/src/cli/commands/registry-presentation.js +7 -0
- package/dist/src/cli/commands/registry-search-presentation.d.ts +16 -0
- package/dist/src/cli/commands/registry-search-presentation.js +6 -0
- package/dist/src/cli/commands/registry-setup-command.d.ts +5 -2
- package/dist/src/cli/commands/registry-setup-command.js +1 -2
- package/dist/src/cli/commands/registry.d.ts +16 -7
- package/dist/src/cli/commands/registry.js +1 -6
- package/dist/src/cli/commands/setup-answers.d.ts +2 -0
- package/dist/src/cli/commands/setup-answers.js +1 -0
- package/dist/src/cli/commands/setup-headless.d.ts +79 -0
- package/dist/src/cli/commands/setup-headless.js +1 -0
- package/dist/src/cli/dev/tui/runner.js +1 -1
- package/dist/src/cli/dev/tui/setup-commands.js +3 -3
- package/dist/src/cli/dev/tui/setup-flow.d.ts +8 -1
- package/dist/src/cli/dev/tui/terminal-renderer.js +12 -12
- package/dist/src/cli/dev/tui/traces/trace-conversation.d.ts +1 -1
- package/dist/src/cli/dev/tui/tui-prompter.js +1 -1
- package/dist/src/client/url.d.ts +5 -0
- package/dist/src/client/url.js +1 -1
- package/dist/src/compiled/.vendor-stamp.json +8 -8
- package/dist/src/compiled/@ai-sdk/anthropic/index.d.ts +33 -13
- package/dist/src/compiled/@ai-sdk/anthropic/index.js +4 -2
- package/dist/src/compiled/@ai-sdk/google/index.d.ts +50 -3
- package/dist/src/compiled/@ai-sdk/google/index.js +7 -7
- package/dist/src/compiled/@ai-sdk/mcp/index.d.ts +33 -3
- package/dist/src/compiled/@ai-sdk/mcp/index.js +1 -1
- package/dist/src/compiled/@ai-sdk/openai/index.d.ts +140 -9
- package/dist/src/compiled/@ai-sdk/openai/index.js +9 -6
- package/dist/src/compiled/@ai-sdk/otel/index.js +1 -1
- package/dist/src/compiled/@ai-sdk/provider/index.d.ts +300 -6
- package/dist/src/compiled/@ai-sdk/provider-utils/index.d.ts +70 -20
- package/dist/src/compiled/@opentelemetry/api/index.d.ts +2 -1
- package/dist/src/compiled/@photon-ai/chat-adapter-imessage/index.js +1 -1
- package/dist/src/compiled/@vercel/otel/index.d.ts +6 -0
- package/dist/src/compiled/@vercel/sandbox/index.js +1 -1
- package/dist/src/compiled/_chunks/node/undici-CUIybhQ2.js +95 -0
- package/dist/src/compiled/_chunks/workflow/dist-eUxFublw.js +77 -0
- package/dist/src/compiled/shadcn-registry/index.js +309 -215
- package/dist/src/compiler/extension-compatibility.d.ts +10 -10
- package/dist/src/compiler/extension-compatibility.js +1 -1
- package/dist/src/context/build-callback-context.js +1 -1
- package/dist/src/execution/authorization-callback-match.d.ts +14 -0
- package/dist/src/execution/authorization-callback-match.js +1 -0
- package/dist/src/execution/next-driver-action.d.ts +1 -0
- package/dist/src/execution/parked-delivery-wait.d.ts +16 -1
- package/dist/src/execution/parked-delivery-wait.js +1 -1
- package/dist/src/execution/sandbox/abort-bound-session.d.ts +1 -1
- package/dist/src/execution/sandbox/bindings/docker.js +1 -1
- package/dist/src/execution/sandbox/bindings/just-bash-runtime.js +1 -1
- package/dist/src/execution/sandbox/bindings/microsandbox-lifecycle.js +1 -1
- package/dist/src/execution/sandbox/bindings/microsandbox-runtime.d.ts +1 -0
- package/dist/src/execution/sandbox/bindings/microsandbox-runtime.js +1 -1
- package/dist/src/execution/sandbox/bindings/vercel.js +1 -1
- package/dist/src/execution/sandbox/ensure.js +1 -1
- package/dist/src/execution/session-command-inbox.d.ts +26 -1
- package/dist/src/execution/session-command-inbox.js +1 -1
- package/dist/src/execution/turn-execution-cursor.d.ts +1 -0
- package/dist/src/execution/turn-workflow.js +1 -1
- package/dist/src/execution/workflow-entry.js +1 -1
- package/dist/src/execution/workflow-steps.d.ts +3 -4
- package/dist/src/execution/workflow-steps.js +1 -1
- package/dist/src/harness/authorization.d.ts +24 -11
- package/dist/src/harness/authorization.js +1 -1
- package/dist/src/harness/input-extraction.js +1 -1
- package/dist/src/harness/input-requests.js +1 -1
- package/dist/src/harness/provider-tools.d.ts +1 -1
- package/dist/src/harness/provider-tools.js +1 -1
- package/dist/src/harness/tool-loop.js +2 -2
- package/dist/src/internal/application/package.js +1 -1
- package/dist/src/internal/authored-definition/connection.js +1 -1
- package/dist/src/packages/eve-catalog/src/index.js +1 -1
- package/dist/src/protocol/routes.d.ts +8 -6
- package/dist/src/protocol/routes.js +1 -1
- package/dist/src/public/channels/linear/linearChannel.d.ts +2 -0
- package/dist/src/public/channels/linear/linearChannel.js +1 -1
- package/dist/src/public/channels/linear/verify.js +1 -1
- package/dist/src/public/channels/slack/attachments.js +1 -1
- package/dist/src/public/channels/slack/defaults.js +1 -1
- package/dist/src/public/channels/slack/hitl.d.ts +14 -1
- package/dist/src/public/channels/slack/hitl.js +2 -2
- package/dist/src/public/connections/index.d.ts +1 -0
- package/dist/src/public/definitions/callback-context.d.ts +2 -2
- package/dist/src/public/definitions/connections/mcp.d.ts +9 -0
- package/dist/src/public/definitions/connections/openapi.d.ts +9 -0
- package/dist/src/public/definitions/connections/tool-call.d.ts +21 -0
- package/dist/src/public/definitions/connections/tool-call.js +1 -0
- package/dist/src/public/definitions/sandbox.d.ts +1 -1
- package/dist/src/public/definitions/tool.d.ts +9 -9
- package/dist/src/public/sandbox/index.d.ts +1 -1
- package/dist/src/public/tools/web-search.d.ts +2 -2
- package/dist/src/runtime/connections/callback-route.d.ts +4 -5
- package/dist/src/runtime/connections/callback-route.js +1 -1
- package/dist/src/runtime/connections/mcp-client.js +1 -1
- package/dist/src/runtime/connections/openapi-client.js +1 -1
- package/dist/src/runtime/connections/provided-arguments.d.ts +9 -0
- package/dist/src/runtime/connections/provided-arguments.js +1 -0
- package/dist/src/runtime/connections/scoped-authorization.js +1 -1
- package/dist/src/runtime/framework-tools/connection-search-dynamic.js +2 -2
- package/dist/src/runtime/framework-tools/todo.js +1 -1
- package/dist/src/runtime/input/types.d.ts +1 -4
- package/dist/src/runtime/resolve-connection.js +1 -1
- package/dist/src/runtime/types.d.ts +2 -0
- package/dist/src/sandbox/state.d.ts +1 -0
- package/dist/src/setup/ask-editable.d.ts +22 -0
- package/dist/src/setup/ask-editable.js +1 -0
- package/dist/src/setup/ask-signals.d.ts +23 -0
- package/dist/src/setup/ask-signals.js +1 -0
- package/dist/src/setup/ask.d.ts +24 -25
- package/dist/src/setup/ask.js +1 -1
- package/dist/src/setup/boxes/deploy-project.js +1 -1
- package/dist/src/setup/boxes/resolve-provisioning.js +1 -1
- package/dist/src/setup/connection-connector.js +3 -2
- package/dist/src/setup/flows/registry-session.d.ts +33 -0
- package/dist/src/setup/flows/registry-session.js +1 -0
- package/dist/src/setup/flows/registry.d.ts +16 -0
- package/dist/src/setup/flows/registry.js +1 -1
- package/dist/src/setup/index.js +1 -1
- package/dist/src/setup/integrations/discord/setup.d.ts +19 -7
- package/dist/src/setup/integrations/discord/setup.js +4 -3
- package/dist/src/setup/integrations/github/setup.d.ts +36 -7
- package/dist/src/setup/integrations/github/setup.js +2 -2
- package/dist/src/setup/integrations/linear/setup.d.ts +21 -9
- package/dist/src/setup/integrations/linear/setup.js +2 -2
- package/dist/src/setup/integrations/photon/management.d.ts +8 -1
- package/dist/src/setup/integrations/photon/management.js +1 -1
- package/dist/src/setup/integrations/photon/setup-flow.d.ts +28 -24
- package/dist/src/setup/integrations/photon/setup-flow.js +3 -3
- package/dist/src/setup/integrations/photon/setup.d.ts +1 -3
- package/dist/src/setup/integrations/photon/setup.js +1 -1
- package/dist/src/setup/integrations/registry.d.ts +1 -1
- package/dist/src/setup/integrations/registry.js +1 -1
- package/dist/src/setup/integrations/runner.d.ts +14 -11
- package/dist/src/setup/integrations/runner.js +1 -1
- package/dist/src/setup/integrations/shared/prerequisite.d.ts +17 -0
- package/dist/src/setup/integrations/shared/prerequisite.js +1 -0
- package/dist/src/setup/integrations/shared/ui.d.ts +22 -15
- package/dist/src/setup/integrations/shared/ui.js +2 -2
- package/dist/src/setup/integrations/shared/vercel-project.d.ts +11 -0
- package/dist/src/setup/integrations/shared/vercel-project.js +1 -0
- package/dist/src/setup/integrations/slack/setup.d.ts +25 -10
- package/dist/src/setup/integrations/slack/setup.js +1 -1
- package/dist/src/setup/integrations/types.d.ts +43 -13
- package/dist/src/setup/integrations/types.js +1 -1
- package/dist/src/setup/integrations/web/setup.d.ts +22 -3
- package/dist/src/setup/integrations/web/setup.js +1 -1
- package/dist/src/setup/prompter.d.ts +8 -0
- package/dist/src/setup/question-options.d.ts +15 -0
- package/dist/src/setup/question-options.js +1 -0
- package/dist/src/setup/registry-setup-client.d.ts +3 -4
- package/dist/src/setup/registry-setup-client.js +2 -2
- package/dist/src/setup/registry-setup-completion.d.ts +3 -0
- package/dist/src/setup/registry-setup-completion.js +1 -0
- package/dist/src/setup/registry-setup-protocol.d.ts +22 -3
- package/dist/src/setup/registry-setup-protocol.js +1 -1
- package/dist/src/setup/scaffold/create/add-to-project.js +1 -1
- package/dist/src/setup/scaffold/create/project.js +55 -3
- package/dist/src/setup/scaffold/update/channels.js +1 -1
- package/dist/src/setup/setup-question-wire.d.ts +48 -0
- package/dist/src/setup/setup-question-wire.js +1 -0
- package/dist/src/setup/slackbot.d.ts +5 -1
- package/dist/src/setup/slackbot.js +1 -1
- package/dist/src/setup/state.d.ts +2 -2
- package/dist/src/shared/sandbox-backend.d.ts +6 -0
- package/dist/src/shared/sandbox-session.d.ts +15 -0
- package/dist/src/shared/tool-definition.d.ts +2 -2
- package/dist/src/shared/tool-schema.d.ts +5 -4
- package/dist/src/shared/tool-schema.js +1 -1
- package/dist/src/svelte/index.js +1 -1
- package/dist/src/svelte/use-eve-agent.js +1 -1
- package/dist/src/tracing/agent-otel-provider.d.ts +5 -38
- package/dist/src/tracing/agent-otel-provider.js +2 -2
- package/dist/src/tracing/agent-span-id-generator.d.ts +15 -0
- package/dist/src/tracing/agent-span-id-generator.js +1 -0
- package/dist/src/tracing/agent-trace-context-store.d.ts +1 -1
- package/dist/src/tracing/agent-trace-context-store.js +1 -1
- package/dist/src/tracing/agent-trace-state.d.ts +41 -0
- package/dist/src/tracing/agent-trace-state.js +1 -0
- package/dist/src/tracing/local-instrumentation-runtime.js +1 -1
- package/dist/src/vue/index.js +1 -1
- package/dist/src/vue/use-eve-agent.js +1 -1
- package/docs/channels/chat-sdk.mdx +1 -1
- package/docs/channels/github.mdx +1 -1
- package/docs/channels/linear.mdx +4 -2
- package/docs/channels/overview.mdx +2 -2
- package/docs/channels/slack.mdx +154 -40
- package/docs/concepts/default-harness.md +3 -3
- package/docs/concepts/sessions-runs-and-streaming.md +1 -1
- package/docs/connections/mcp.mdx +35 -1
- package/docs/connections/openapi.mdx +24 -0
- package/docs/guides/dev-tui.md +58 -142
- package/docs/guides/dynamic-workflows.md +2 -0
- package/docs/guides/frontend/overview.mdx +4 -2
- package/docs/guides/hooks.md +25 -3
- package/docs/guides/session-context.md +18 -0
- package/docs/install-integrations.mdx +2 -0
- package/docs/reference/cli.md +5 -3
- package/docs/reference/typescript-api.md +1 -1
- package/docs/sandbox.mdx +25 -5
- package/docs/skills.mdx +12 -1
- package/docs/subagents.mdx +1 -1
- package/docs/tools/human-in-the-loop.md +1 -1
- package/docs/tutorial/ship-it.mdx +1 -1
- package/package.json +10 -10
- package/dist/src/compiled/_chunks/node/undici-DWL_MYmT.js +0 -95
- package/dist/src/compiled/_chunks/workflow/dist-CZxNEvEs.js +0 -79
|
@@ -1,11 +1,14 @@
|
|
|
1
|
-
import{$ as e,At as t,B as n,Ct as r,E as i,Et as a,G as o,H as s,I as c,J as l,L as u,M as d,N as f,O as p,Ot as m,Q as h,R as g,St as _,U as v,Y as y,Z as b,_ as x,a as S,at as C,c as w,ct as T,d as E,dt as D,et as O,f as ee,ft as k,g as A,gt as j,h as M,ht as N,i as te,it as ne,j as P,jt as F,m as re,nt as I,o as ie,ot as ae,p as L,pt as R,r as z,s as B,st as V,t as oe,tt as se,u as ce,ut as H,vt as U,w as W,x as G,xt as K,y as le,yt as q,z as ue}from"../../_chunks/workflow/dist-CZxNEvEs.js";import{n as J,t as Y}from"../../_chunks/workflow/dist-DsNhwdzf.js";function de(e){return r(ne,e)}var fe=j({error:j({message:q(),type:q().nullish(),param:V().nullish(),code:K([q(),N()]).nullish()})}),X=ee({errorSchema:fe,errorToMessage:e=>e.error.message});function pe(e){let t=e.startsWith(`o3`)||e.startsWith(`o4-mini`)||e.startsWith(`gpt-5`)&&!e.startsWith(`gpt-5-chat`),n=e.startsWith(`gpt-4`)||e.startsWith(`gpt-5`)&&!e.startsWith(`gpt-5-nano`)&&!e.startsWith(`gpt-5-chat`)&&!e.startsWith(`gpt-5.4-nano`)||e.startsWith(`o3`)||e.startsWith(`o4-mini`),r=e.startsWith(`o1`)||e.startsWith(`o3`)||e.startsWith(`o4-mini`)||e.startsWith(`gpt-5`)&&!e.startsWith(`gpt-5-chat`),i=e.startsWith(`gpt-5.1`)||e.startsWith(`gpt-5.2`)||e.startsWith(`gpt-5.3`)||e.startsWith(`gpt-5.4`)||e.startsWith(`gpt-5.5`)||e.startsWith(`gpt-5.6`);return{supportsFlexProcessing:t,supportsPriorityProcessing:n,isReasoningModel:r,systemMessageMode:r?`developer`:`system`,supportsNonReasoningParameters:i}}async function me({stream:e,getError:t,isOutputChunk:n,url:r,requestBodyValues:i,responseHeaders:a}){let[o,s]=e.tee(),c=o.getReader();try{for(;;){let e=await c.read();if(e.done)return s;let o=e.value;if(!o.success)return s;let l=t(o.value);if(l!=null)throw s.cancel().catch(()=>{}),he({frame:l,url:r,requestBodyValues:i,responseHeaders:a});if(n(o.value))return s}}finally{c.cancel().catch(()=>{}),c.releaseLock()}}function he({frame:e,url:t,requestBodyValues:n,responseHeaders:r}){let i=ge(e);return new a({message:i?.message??`OpenAI stream failed before any output was generated`,url:t,requestBodyValues:n,statusCode:i==null?500:_e(i),responseHeaders:r,responseBody:JSON.stringify(e),data:e})}function ge(e){let t=ve(e);if(t==null)return;if(t.type===`response.failed`){let n=ve(ve(t.response)?.error);return typeof n?.message==`string`?{message:n.message,code:ye(n.code),type:`response.failed`,frame:e}:void 0}let n=ve(t.error)??t;return typeof n.message==`string`&&(ve(t.error)!=null||typeof n.type==`string`||`code`in n||`param`in n)?{message:n.message,code:ye(n.code),type:typeof n.type==`string`?n.type:void 0,frame:e}:void 0}function _e(e){if(typeof e.code==`number`&&be(e.code))return e.code;if(typeof e.code==`string`&&/^\d{3}$/.test(e.code)){let t=Number(e.code);if(be(t))return t}let t=[e.code,e.type].filter(e=>typeof e==`string`||typeof e==`number`).join(` `).toLowerCase();return[`insufficient_quota`,`rate_limit`].some(e=>t.includes(e))?429:t.includes(`authentication`)?401:t.includes(`permission`)?403:t.includes(`not_found`)?404:[`invalid`,`bad_request`,`context_length`].some(e=>t.includes(e))?400:t.includes(`overload`)?503:t.includes(`timeout`)?504:500}function ve(e){return typeof e==`object`&&e?e:void 0}function ye(e){return typeof e==`string`||typeof e==`number`?e:void 0}function be(e){return Number.isInteger(e)&&e>=400&&e<=599}function xe(e){if(e==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 t=e.prompt_tokens??0,n=e.completion_tokens??0,r=e.prompt_tokens_details?.cached_tokens??0,i=e.prompt_tokens_details?.cache_write_tokens??void 0,a=e.completion_tokens_details?.reasoning_tokens??0;return{inputTokens:{total:t,noCache:t-r-(i??0),cacheRead:r,cacheWrite:i},outputTokens:{total:n,text:n-a,reasoning:a},raw:e}}function Se(e){return JSON.stringify(e===void 0?{}:e)}function Z(e){return e?.openai?.promptCacheBreakpoint}function Ce({prompt:e,systemMessageMode:t=`system`}){let n=[],r=[];for(let{role:i,content:a,providerOptions:o}of e)switch(i){case`system`:switch(t){case`system`:{let e=Z(o);n.push({role:`system`,content:e==null?a:[{type:`text`,text:a,prompt_cache_breakpoint:e}]});break}case`developer`:{let e=Z(o);n.push({role:`developer`,content:e==null?a:[{type:`text`,text:a,prompt_cache_breakpoint:e}]});break}case`remove`:r.push({type:`other`,message:`system messages are removed for this model`});break;default:throw Error(`Unsupported system message mode: ${t}`)}break;case`user`:if(a.length===1&&a[0].type===`text`&&Z(a[0].providerOptions)==null){n.push({role:`user`,content:a[0].text});break}n.push({role:`user`,content:a.map((e,t)=>{switch(e.type){case`text`:{let t=Z(e.providerOptions);return{type:`text`,text:e.text,...t!=null&&{prompt_cache_breakpoint:t}}}case`file`:{let n=Z(e.providerOptions);switch(e.data.type){case`reference`:return{type:`file`,file:{file_id:v({reference:e.data.reference,provider:`openai`})},...n!=null&&{prompt_cache_breakpoint:n}};case`text`:throw new F({functionality:`text file parts`});case`url`:case`data`:{let r=W(e.mediaType);if(r===`image`)return{type:`image_url`,image_url:{url:e.data.type===`url`?e.data.url.toString():`data:${s({part:e})};base64,${B(e.data.data)}`,detail:e.providerOptions?.openai?.imageDetail},...n!=null&&{prompt_cache_breakpoint:n}};if(r===`audio`){if(e.data.type===`url`)throw new F({functionality:`audio file parts with URLs`});let t=s({part:e});switch(t){case`audio/wav`:return{type:`input_audio`,input_audio:{data:B(e.data.data),format:`wav`},...n!=null&&{prompt_cache_breakpoint:n}};case`audio/mp3`:case`audio/mpeg`:return{type:`input_audio`,input_audio:{data:B(e.data.data),format:`mp3`},...n!=null&&{prompt_cache_breakpoint:n}};default:throw new F({functionality:`audio content parts with media type ${t}`})}}{let r=s({part:e});if(r!==`application/pdf`)throw new F({functionality:`file part media type ${r}`});if(e.data.type===`url`)throw new F({functionality:`PDF file parts with URLs`});return{type:`file`,file:{filename:e.filename??`part-${t}.pdf`,file_data:`data:application/pdf;base64,${B(e.data.data)}`},...n!=null&&{prompt_cache_breakpoint:n}}}}}}}})});break;case`assistant`:{let e=``,t=[],r=!1,i=[];for(let n of a)switch(n.type){case`text`:{let i=Z(n.providerOptions);e+=n.text,t.push({type:`text`,text:n.text,...i!=null&&{prompt_cache_breakpoint:i}}),r||=i!=null;break}case`tool-call`:i.push({id:n.toolCallId,type:`function`,function:{name:n.toolName,arguments:Se(n.input)}});break}n.push({role:`assistant`,content:r?t:i.length>0?e||null:e,tool_calls:i.length>0?i:void 0});break}case`tool`:for(let e of a){if(e.type===`tool-approval-response`)continue;let t=e.output,r=(t.type===`content`?t.value.map(e=>Z(e.providerOptions)).find(e=>e!=null):Z(t.providerOptions))??Z(e.providerOptions),i;switch(t.type){case`text`:case`error-text`:i=t.value;break;case`execution-denied`:i=t.reason??`Tool call execution denied.`;break;case`content`:case`json`:case`error-json`:i=JSON.stringify(t.value);break}n.push({role:`tool`,tool_call_id:e.toolCallId,content:r==null?i:[{type:`text`,text:i,prompt_cache_breakpoint:r}]})}break;default:throw Error(`Unsupported role: ${i}`)}return{messages:n,warnings:r}}function we({id:e,model:t,created:n}){return{id:e??void 0,modelId:t??void 0,timestamp:n?new Date(n*1e3):void 0}}function Te(e){switch(e){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`}}var Ee=P(()=>I(j({id:q().nullish(),created:N().nullish(),model:q().nullish(),choices:T(j({message:j({role:R(`assistant`).nullish(),content:q().nullish(),tool_calls:T(j({id:q().nullish(),type:R(`function`),function:j({name:q(),arguments:q()})})).nullish(),annotations:T(j({type:R(`url_citation`),url_citation:j({start_index:N(),end_index:N(),url:q(),title:q()})})).nullish()}),index:N(),logprobs:j({content:T(j({token:q(),logprob:N(),top_logprobs:T(j({token:q(),logprob:N()}))})).nullish()}).nullish(),finish_reason:q().nullish()})),usage:j({prompt_tokens:N().nullish(),completion_tokens:N().nullish(),total_tokens:N().nullish(),prompt_tokens_details:j({cached_tokens:N().nullish(),cache_write_tokens:N().nullish()}).nullish(),completion_tokens_details:j({reasoning_tokens:N().nullish(),accepted_prediction_tokens:N().nullish(),rejected_prediction_tokens:N().nullish()}).nullish()}).nullish()}))),De=P(()=>I(K([j({id:q().nullish(),created:N().nullish(),model:q().nullish(),choices:T(j({delta:j({role:C([`assistant`]).nullish(),content:q().nullish(),tool_calls:T(j({index:N(),id:q().nullish(),type:R(`function`).nullish(),function:j({name:q().nullish(),arguments:q().nullish()})})).nullish(),annotations:T(j({type:R(`url_citation`),url_citation:j({start_index:N(),end_index:N(),url:q(),title:q()})})).nullish()}).nullish(),logprobs:j({content:T(j({token:q(),logprob:N(),top_logprobs:T(j({token:q(),logprob:N()}))})).nullish()}).nullish(),finish_reason:q().nullish(),index:N()})),usage:j({prompt_tokens:N().nullish(),completion_tokens:N().nullish(),total_tokens:N().nullish(),prompt_tokens_details:j({cached_tokens:N().nullish(),cache_write_tokens:N().nullish()}).nullish(),completion_tokens_details:j({reasoning_tokens:N().nullish(),accepted_prediction_tokens:N().nullish(),rejected_prediction_tokens:N().nullish()}).nullish()}).nullish()}),fe]))),Oe=P(()=>I(j({logitBias:U(de(),N()).optional(),logprobs:K([H(),N()]).optional(),parallelToolCalls:H().optional(),user:q().optional(),reasoningEffort:C([`none`,`minimal`,`low`,`medium`,`high`,`xhigh`,`max`]).optional(),maxCompletionTokens:N().optional(),store:H().optional(),metadata:U(q().max(64),q().max(512)).optional(),prediction:U(q(),V()).optional(),serviceTier:C([`auto`,`flex`,`priority`,`default`]).optional(),strictJsonSchema:H().optional(),textVerbosity:C([`low`,`medium`,`high`]).optional(),promptCacheKey:q().optional(),promptCacheOptions:j({mode:C([`implicit`,`explicit`]).optional(),ttl:R(`30m`).optional()}).optional(),promptCacheRetention:C([`in_memory`,`24h`]).optional(),safetyIdentifier:q().optional(),systemMessageMode:C([`system`,`developer`,`remove`]).optional(),forceReasoning:H().optional()})));function ke({tools:e,toolChoice:t}){e=e?.length?e:void 0;let n=[];if(e==null)return{tools:void 0,toolChoice:void 0,toolWarnings:n};let r=[];for(let t of e)switch(t.type){case`function`:r.push({type:`function`,function:{name:t.name,description:t.description,parameters:t.inputSchema,...t.strict==null?{}:{strict:t.strict}}});break;default:n.push({type:`unsupported`,feature:`tool type: ${t.type}`});break}if(t==null)return{tools:r,toolChoice:void 0,toolWarnings:n};let i=t.type;switch(i){case`auto`:case`none`:case`required`:return{tools:r,toolChoice:i,toolWarnings:n};case`tool`:return{tools:r,toolChoice:{type:`function`,function:{name:t.toolName}},toolWarnings:n};default:throw new F({functionality:`tool choice type: ${i}`})}}var Ae=class e{constructor(e,t){this.specificationVersion=`v4`,this.supportedUrls={"image/*":[/^https?:\/\/.*$/]},this.modelId=e,this.config=t}static[J](e){return l({modelId:e.modelId,config:e.config})}static[Y](t){return new e(t.modelId,t.config)}get provider(){return this.config.provider}async getArgs({prompt:e,maxOutputTokens:t,temperature:n,topP:r,topK:a,frequencyPenalty:o,presencePenalty:s,stopSequences:c,responseFormat:l,seed:u,tools:d,toolChoice:f,reasoning:p,providerOptions:m}){let h=[],_=await g({provider:`openai`,providerOptions:m,schema:Oe})??{},v=pe(this.modelId),y=_.reasoningEffort??(i(p)?p:void 0),b=_.forceReasoning??v.isReasoningModel;a!=null&&h.push({type:`unsupported`,feature:`topK`});let{messages:x,warnings:S}=Ce({prompt:e,systemMessageMode:_.systemMessageMode??(b?`developer`:v.systemMessageMode)});h.push(...S);let C=_.strictJsonSchema??!0,w={model:this.modelId,logit_bias:_.logitBias,logprobs:_.logprobs===!0||typeof _.logprobs==`number`||void 0,top_logprobs:typeof _.logprobs==`number`?_.logprobs:typeof _.logprobs==`boolean`&&_.logprobs?0:void 0,user:_.user,parallel_tool_calls:_.parallelToolCalls,max_tokens:t,temperature:n,top_p:r,frequency_penalty:o,presence_penalty:s,response_format:l?.type===`json`?l.schema==null?{type:`json_object`}:{type:`json_schema`,json_schema:{schema:l.schema,strict:C,name:l.name??`response`,description:l.description}}:void 0,stop:c,seed:u,verbosity:_.textVerbosity,max_completion_tokens:_.maxCompletionTokens,store:_.store,metadata:_.metadata,prediction:_.prediction,reasoning_effort:y,service_tier:_.serviceTier,prompt_cache_key:_.promptCacheKey,prompt_cache_options:_.promptCacheOptions,prompt_cache_retention:_.promptCacheRetention,safety_identifier:_.safetyIdentifier,messages:x};b?((y!==`none`||!v.supportsNonReasoningParameters)&&(w.temperature!=null&&(w.temperature=void 0,h.push({type:`unsupported`,feature:`temperature`,details:`temperature is not supported for reasoning models`})),w.top_p!=null&&(w.top_p=void 0,h.push({type:`unsupported`,feature:`topP`,details:`topP is not supported for reasoning models`})),w.logprobs!=null&&(w.logprobs=void 0,h.push({type:`other`,message:`logprobs is not supported for reasoning models`}))),w.frequency_penalty!=null&&(w.frequency_penalty=void 0,h.push({type:`unsupported`,feature:`frequencyPenalty`,details:`frequencyPenalty is not supported for reasoning models`})),w.presence_penalty!=null&&(w.presence_penalty=void 0,h.push({type:`unsupported`,feature:`presencePenalty`,details:`presencePenalty is not supported for reasoning models`})),w.logit_bias!=null&&(w.logit_bias=void 0,h.push({type:`other`,message:`logitBias is not supported for reasoning models`})),w.top_logprobs!=null&&(w.top_logprobs=void 0,h.push({type:`other`,message:`topLogprobs is not supported for reasoning models`})),w.max_tokens!=null&&(w.max_completion_tokens??=w.max_tokens,w.max_tokens=void 0)):(this.modelId.startsWith(`gpt-4o-search-preview`)||this.modelId.startsWith(`gpt-4o-mini-search-preview`))&&w.temperature!=null&&(w.temperature=void 0,h.push({type:`unsupported`,feature:`temperature`,details:`temperature is not supported for the search preview models and has been removed.`})),_.serviceTier===`flex`&&!v.supportsFlexProcessing&&(h.push({type:`unsupported`,feature:`serviceTier`,details:`flex processing is only available for o3, o4-mini, and gpt-5 models`}),w.service_tier=void 0),_.serviceTier===`priority`&&!v.supportsPriorityProcessing&&(h.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`}),w.service_tier=void 0);let{tools:T,toolChoice:E,toolWarnings:D}=ke({tools:d,toolChoice:f});return{args:{...w,tools:T,tool_choice:E},warnings:[...h,...D]}}async doGenerate(e){var t;let{args:r,warnings:i}=await this.getArgs(e),{responseHeaders:a,value:o,rawValue:s}=await n({url:this.config.url({path:`/chat/completions`,modelId:this.modelId}),headers:z((t=this.config).headers?.call(t),e.headers),body:r,failedResponseHandler:X,successfulResponseHandler:L(Ee),abortSignal:e.abortSignal,fetch:this.config.fetch}),c=o.choices[0],l=[],u=c.message.content;u!=null&&u.length>0&&l.push({type:`text`,text:u});for(let e of c.message.tool_calls??[])l.push({type:`tool-call`,toolCallId:e.id??G(),toolName:e.function.name,input:e.function.arguments});for(let e of c.message.annotations??[])l.push({type:`source`,sourceType:`url`,id:G(),url:e.url_citation.url,title:e.url_citation.title});let d=o.usage?.completion_tokens_details,f={openai:{}};return d?.accepted_prediction_tokens!=null&&(f.openai.acceptedPredictionTokens=d?.accepted_prediction_tokens),d?.rejected_prediction_tokens!=null&&(f.openai.rejectedPredictionTokens=d?.rejected_prediction_tokens),c.logprobs?.content!=null&&(f.openai.logprobs=c.logprobs.content),{content:l,finishReason:{unified:Te(c.finish_reason),raw:c.finish_reason??void 0},usage:xe(o.usage),request:{body:r},response:{...we(o),headers:a,body:s},warnings:i,providerMetadata:f}}async doStream(e){var t;let{args:r,warnings:i}=await this.getArgs(e),a={...r,stream:!0,stream_options:{include_usage:!0}},o=this.config.url({path:`/chat/completions`,modelId:this.modelId}),{responseHeaders:s,value:c}=await n({url:o,headers:z((t=this.config).headers?.call(t),e.headers),body:a,failedResponseHandler:X,successfulResponseHandler:E(De),abortSignal:e.abortSignal,fetch:this.config.fetch}),l=await me({stream:c,getError:e=>`error`in e?e.error:void 0,isOutputChunk:je,url:o,requestBodyValues:a,responseHeaders:s}),u,d={unified:`other`,raw:void 0},f,p=!1,m=!1,h={openai:{}};return{stream:l.pipeThrough(new TransformStream({start(e){u=new oe(e,{generateId:G,typeValidation:`if-present`}),e.enqueue({type:`stream-start`,warnings:i})},transform(t,n){if(e.includeRawChunks&&n.enqueue({type:`raw`,rawValue:t.rawValue}),!t.success){d={unified:`error`,raw:void 0},n.enqueue({type:`error`,error:t.error});return}let r=t.value;if(`error`in r){d={unified:`error`,raw:void 0},n.enqueue({type:`error`,error:r.error});return}if(!p){let e=we(r);Object.values(e).some(Boolean)&&(p=!0,n.enqueue({type:`response-metadata`,...we(r)}))}r.usage!=null&&(f=r.usage,r.usage.completion_tokens_details?.accepted_prediction_tokens!=null&&(h.openai.acceptedPredictionTokens=r.usage.completion_tokens_details?.accepted_prediction_tokens),r.usage.completion_tokens_details?.rejected_prediction_tokens!=null&&(h.openai.rejectedPredictionTokens=r.usage.completion_tokens_details?.rejected_prediction_tokens));let i=r.choices[0];if(i?.finish_reason!=null&&(d={unified:Te(i.finish_reason),raw:i.finish_reason}),i?.logprobs?.content!=null&&(h.openai.logprobs=i.logprobs.content),i?.delta==null)return;let a=i.delta;if(a.content!=null&&(m||=(n.enqueue({type:`text-start`,id:`0`}),!0),n.enqueue({type:`text-delta`,id:`0`,delta:a.content})),a.tool_calls!=null)for(let e of a.tool_calls)u.processDelta(e);if(a.annotations!=null)for(let e of a.annotations)n.enqueue({type:`source`,sourceType:`url`,id:G(),url:e.url_citation.url,title:e.url_citation.title})},flush(e){m&&e.enqueue({type:`text-end`,id:`0`}),u.flush(),e.enqueue({type:`finish`,finishReason:d,usage:xe(f),...h==null?{}:{providerMetadata:h}})}})),request:{body:a},response:{headers:s}}}};function je(e){return`error`in e?!1:e.choices.some(e=>{let t=e.delta;return t?.content!=null&&t.content.length>0||t?.tool_calls!=null&&t.tool_calls.length>0||t?.annotations!=null&&t.annotations.length>0})}function Me(e){if(e==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 t=e.prompt_tokens??0,n=e.completion_tokens??0;return{inputTokens:{total:e.prompt_tokens??void 0,noCache:t,cacheRead:void 0,cacheWrite:void 0},outputTokens:{total:e.completion_tokens??void 0,text:n,reasoning:void 0},raw:e}}function Ne({prompt:e,user:t=`user`,assistant:n=`assistant`}){let r=``;e[0].role===`system`&&(r+=`${e[0].content}
|
|
1
|
+
import{APICallError as e,EmptyResponseBodyError as t,InvalidArgumentError as n,InvalidPromptError as r,TooManyEmbeddingValuesForCallError as i,UnsupportedFunctionalityError as a}from"../provider/index.js";import{At as o,B as s,Ct as c,D as l,Et as u,F as d,G as f,H as p,I as m,J as h,K as g,L as _,Ot as v,Q as y,S as b,St as x,T as S,Tt as C,U as w,W as T,Y as E,Z as D,_ as O,_t as k,a as ee,at as A,b as te,bt as j,c as M,ct as ne,d as re,dt as ie,et as N,f as P,ft as F,g as ae,h as oe,ht as I,i as se,it as ce,j as le,k as ue,kt as L,l as de,lt as R,m as z,mt as B,o as fe,ot as pe,p as me,pt as he,r as V,rt as ge,s as _e,st as ve,t as ye,tt as be,v as H,vt as U,w as W,y as G,yt as xe}from"../../_chunks/workflow/dist-eUxFublw.js";import{n as K,t as q}from"../../_chunks/workflow/dist-DsNhwdzf.js";function Se(e){return o(ie,e)}var Ce=c({error:c({message:u(),type:u().nullish(),param:B().nullish(),code:v([u(),x()]).nullish()})}),J=me({errorSchema:Ce,errorToMessage:e=>e.error.message});function we(e){let t=Te(e),n=Ee(e),r=n?.minor==null&&((n?.variant)?.startsWith(`chat`)??!1),i=(n?.variant)?.startsWith(`nano`)??!1,a=t!=null&&t>=3||n!=null&&n.major>=5&&!r,o=e.startsWith(`gpt-4`)||n!=null&&n.major>=5&&!i&&!r||t!=null&&t>=3,s=t!=null||n!=null&&n.major>=5&&!r,c=n!=null&&(n.major>5||n.major===5&&(n.minor??0)>=1);return{supportsFlexProcessing:a,supportsPriorityProcessing:o,isReasoningModel:s,systemMessageMode:s?`developer`:`system`,supportsNonReasoningParameters:c}}function Te(e){let t=/^o(\d+)(?:-|$)/.exec(e);return t==null?void 0:Number(t[1])}function Ee(e){let t=/^gpt-(\d+)(?:\.(\d+))?(?:-(.+))?$/.exec(e);if(t!=null)return{major:Number(t[1]),minor:t[2]==null?void 0:Number(t[2]),variant:t[3]}}async function De({stream:e,getError:t,isOutputChunk:n,isAcceptedChunk:r,acceptedGraceMs:i=50,url:a,requestBodyValues:o,responseHeaders:s}){let[c,l]=e.tee(),u=c.getReader(),d=!1;try{let e=!1;for(;;){let c;if(e){let e=await ke(u.read(),i);if(e.timedOut)return l;c=e.value}else c=await u.read();if(c.done)return l;let f=c.value;if(!f.success)return l;let p=t(f.value);if(p!=null)throw d=!0,Oe(u).catch(()=>{}),Oe(l.getReader()).catch(()=>{}),Ae({frame:p,url:a,requestBodyValues:o,responseHeaders:s});if(n(f.value))return l;!e&&r?.(f.value)===!0&&(e=!0)}}finally{d||(u.cancel().catch(()=>{}),u.releaseLock())}}async function Oe(e){try{for(;!(await e.read()).done;);}catch{}finally{e.releaseLock()}}async function ke(e,t){let n,r=e.then(e=>({timedOut:!1,value:e}));try{let e=await Promise.race([r,new Promise(e=>{n=setTimeout(()=>e({timedOut:!0}),t)})]);return e.timedOut&&r.catch(()=>{}),e}finally{clearTimeout(n)}}function Ae({frame:t,url:n,requestBodyValues:r,responseHeaders:i}){let a=je(t);return new e({message:a?.message??`OpenAI stream failed before any output was generated`,url:n,requestBodyValues:r,statusCode:a==null?500:Me(a),responseHeaders:i,responseBody:JSON.stringify(t),data:t})}function je(e){let t=Y(e);if(t==null)return;if(t.type===`response.failed`){let n=Y(Y(t.response)?.error);return typeof n?.message==`string`?{message:n.message,code:Ne(n.code),type:`response.failed`,frame:e}:void 0}let n=Y(t.error)??t;return typeof n.message==`string`&&(Y(t.error)!=null||typeof n.type==`string`||`code`in n||`param`in n)?{message:n.message,code:Ne(n.code),type:typeof n.type==`string`?n.type:void 0,frame:e}:void 0}function Me(e){if(typeof e.code==`number`&&Pe(e.code))return e.code;if(typeof e.code==`string`&&/^\d{3}$/.test(e.code)){let t=Number(e.code);if(Pe(t))return t}let t=[e.code,e.type].filter(e=>typeof e==`string`||typeof e==`number`).join(` `).toLowerCase();return[`insufficient_quota`,`rate_limit`].some(e=>t.includes(e))?429:t.includes(`authentication`)?401:t.includes(`permission`)?403:t.includes(`not_found`)?404:[`invalid`,`bad_request`,`context_length`].some(e=>t.includes(e))?400:t.includes(`overload`)?503:t.includes(`timeout`)?504:500}function Y(e){return typeof e==`object`&&e?e:void 0}function Ne(e){return typeof e==`string`||typeof e==`number`?e:void 0}function Pe(e){return Number.isInteger(e)&&e>=400&&e<=599}function Fe(e){if(e==null)return ae();let t=e.prompt_tokens??0,n=e.completion_tokens??0,r=e.prompt_tokens_details?.cached_tokens??0,i=e.prompt_tokens_details?.cache_write_tokens??void 0,a=e.completion_tokens_details?.reasoning_tokens??0;return{inputTokens:{total:t,noCache:t-r-(i??0),cacheRead:r,cacheWrite:i},outputTokens:{total:n,text:n-a,reasoning:a},raw:e}}function Ie(e){return JSON.stringify(e===void 0?{}:e)}function X(e){return e?.openai?.promptCacheBreakpoint}function Le({prompt:e,systemMessageMode:t=`system`}){let n=[],r=[];for(let{role:i,content:o,providerOptions:s}of e)switch(i){case`system`:switch(t){case`system`:{let e=X(s);n.push({role:`system`,content:e==null?o:[{type:`text`,text:o,prompt_cache_breakpoint:e}]});break}case`developer`:{let e=X(s);n.push({role:`developer`,content:e==null?o:[{type:`text`,text:o,prompt_cache_breakpoint:e}]});break}case`remove`:r.push({type:`other`,message:`system messages are removed for this model`});break;default:throw Error(`Unsupported system message mode: ${t}`)}break;case`user`:if(o.length===1&&o[0].type===`text`&&X(o[0].providerOptions)==null){n.push({role:`user`,content:o[0].text});break}n.push({role:`user`,content:o.map((e,t)=>{switch(e.type){case`text`:{let t=X(e.providerOptions);return{type:`text`,text:e.text,...t!=null&&{prompt_cache_breakpoint:t}}}case`file`:{let n=X(e.providerOptions);switch(e.data.type){case`reference`:return{type:`file`,file:{file_id:E({reference:e.data.reference,provider:`openai`})},...n!=null&&{prompt_cache_breakpoint:n}};case`text`:throw new a({functionality:`text file parts`});case`url`:case`data`:{let r=l(e.mediaType);if(r===`image`)return{type:`image_url`,image_url:{url:e.data.type===`url`?e.data.url.toString():`data:${h({part:e})};base64,${M(e.data.data)}`,detail:e.providerOptions?.openai?.imageDetail},...n!=null&&{prompt_cache_breakpoint:n}};if(r===`audio`){if(e.data.type===`url`)throw new a({functionality:`audio file parts with URLs`});let t=h({part:e});switch(t){case`audio/wav`:return{type:`input_audio`,input_audio:{data:M(e.data.data),format:`wav`},...n!=null&&{prompt_cache_breakpoint:n}};case`audio/mp3`:case`audio/mpeg`:return{type:`input_audio`,input_audio:{data:M(e.data.data),format:`mp3`},...n!=null&&{prompt_cache_breakpoint:n}};default:throw new a({functionality:`audio content parts with media type ${t}`})}}{let r=h({part:e});if(r!==`application/pdf`)throw new a({functionality:`file part media type ${r}`});if(e.data.type===`url`)throw new a({functionality:`PDF file parts with URLs`});return{type:`file`,file:{filename:e.filename??`part-${t}.pdf`,file_data:`data:application/pdf;base64,${M(e.data.data)}`},...n!=null&&{prompt_cache_breakpoint:n}}}}}}}})});break;case`assistant`:{let e=``,t=[],r=!1,i=[];for(let n of o)switch(n.type){case`text`:{let i=X(n.providerOptions);e+=n.text,t.push({type:`text`,text:n.text,...i!=null&&{prompt_cache_breakpoint:i}}),r||=i!=null;break}case`tool-call`:i.push({id:n.toolCallId,type:`function`,function:{name:n.toolName,arguments:Ie(n.input)}});break}n.push({role:`assistant`,content:r?t:i.length>0?e||null:e,tool_calls:i.length>0?i:void 0});break}case`tool`:for(let e of o){if(e.type===`tool-approval-response`)continue;let t=e.output,r=(t.type===`content`?t.value.map(e=>X(e.providerOptions)).find(e=>e!=null):X(t.providerOptions))??X(e.providerOptions),i;switch(t.type){case`text`:case`error-text`:i=t.value;break;case`execution-denied`:i=t.reason??`Tool call execution denied.`;break;case`content`:case`json`:case`error-json`:i=JSON.stringify(t.value);break}n.push({role:`tool`,tool_call_id:e.toolCallId,content:r==null?i:[{type:`text`,text:i,prompt_cache_breakpoint:r}]})}break;default:throw Error(`Unsupported role: ${i}`)}return{messages:n,warnings:r}}function Re({id:e,model:t,created:n}){return oe({id:e,model:t,created:n||void 0})}function ze(e){switch(e){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`}}var Be=d(()=>R(c({id:u().nullish(),created:x().nullish(),model:u().nullish(),choices:I(c({message:c({role:j(`assistant`).nullish(),content:u().nullish(),tool_calls:I(c({id:u().nullish(),type:j(`function`),function:c({name:u(),arguments:u()})})).nullish(),annotations:I(c({type:j(`url_citation`),url_citation:c({start_index:x(),end_index:x(),url:u(),title:u()})})).nullish()}),index:x(),logprobs:c({content:I(c({token:u(),logprob:x(),top_logprobs:I(c({token:u(),logprob:x()}))})).nullish()}).nullish(),finish_reason:u().nullish()})),usage:c({prompt_tokens:x().nullish(),completion_tokens:x().nullish(),total_tokens:x().nullish(),prompt_tokens_details:c({cached_tokens:x().nullish(),cache_write_tokens:x().nullish()}).nullish(),completion_tokens_details:c({reasoning_tokens:x().nullish(),accepted_prediction_tokens:x().nullish(),rejected_prediction_tokens:x().nullish()}).nullish()}).nullish()}))),Ve=d(()=>R(v([c({id:u().nullish(),created:x().nullish(),model:u().nullish(),choices:I(c({delta:c({role:F([`assistant`]).nullish(),content:u().nullish(),tool_calls:I(c({index:x(),id:u().nullish(),type:j(`function`).nullish(),function:c({name:u().nullish(),arguments:u().nullish()})})).nullish(),annotations:I(c({type:j(`url_citation`),url_citation:c({start_index:x(),end_index:x(),url:u(),title:u()})})).nullish()}).nullish(),logprobs:c({content:I(c({token:u(),logprob:x(),top_logprobs:I(c({token:u(),logprob:x()}))})).nullish()}).nullish(),finish_reason:u().nullish(),index:x()})),usage:c({prompt_tokens:x().nullish(),completion_tokens:x().nullish(),total_tokens:x().nullish(),prompt_tokens_details:c({cached_tokens:x().nullish(),cache_write_tokens:x().nullish()}).nullish(),completion_tokens_details:c({reasoning_tokens:x().nullish(),accepted_prediction_tokens:x().nullish(),rejected_prediction_tokens:x().nullish()}).nullish()}).nullish()}),Ce]))),He=d(()=>R(c({logitBias:C(Se(),x()).optional(),logprobs:v([k(),x()]).optional(),parallelToolCalls:k().optional(),user:u().optional(),reasoningEffort:F([`none`,`minimal`,`low`,`medium`,`high`,`xhigh`,`max`]).optional(),maxCompletionTokens:x().optional(),store:k().optional(),metadata:C(u().max(64),u().max(512)).optional(),prediction:C(u(),B()).optional(),serviceTier:F([`auto`,`flex`,`priority`,`fast`,`default`]).optional(),strictJsonSchema:k().optional(),textVerbosity:F([`low`,`medium`,`high`]).optional(),promptCacheKey:u().optional(),promptCacheOptions:c({mode:F([`implicit`,`explicit`]).optional(),ttl:j(`30m`).optional()}).optional(),promptCacheRetention:F([`in_memory`,`24h`]).optional(),safetyIdentifier:u().optional(),systemMessageMode:F([`system`,`developer`,`remove`]).optional(),forceReasoning:k().optional()})));function Ue({tools:e,toolChoice:t}){e=e?.length?e:void 0;let n=[];if(e==null)return{tools:void 0,toolChoice:void 0,toolWarnings:n};let r=[];for(let t of e)switch(t.type){case`function`:r.push({type:`function`,function:{name:t.name,description:t.description,parameters:t.inputSchema,...t.strict==null?{}:{strict:t.strict}}});break;default:n.push({type:`unsupported`,feature:`tool type: ${t.type}`});break}if(t==null)return{tools:r,toolChoice:void 0,toolWarnings:n};let i=t.type;switch(i){case`auto`:case`none`:case`required`:return{tools:r,toolChoice:i,toolWarnings:n};case`tool`:return{tools:r,toolChoice:{type:`function`,function:{name:t.toolName}},toolWarnings:n};default:throw new a({functionality:`tool choice type: ${i}`})}}var We=class e{constructor(e,t){this.specificationVersion=`v4`,this.supportedUrls={"image/*":[/^https?:\/\/.*$/]},this.modelId=e,this.config=t}static[K](e){return N({modelId:e.modelId,config:e.config})}static[q](t){return new e(t.modelId,t.config)}get provider(){return this.config.provider}async getArgs({prompt:e,maxOutputTokens:t,temperature:n,topP:r,topK:i,frequencyPenalty:a,presencePenalty:o,stopSequences:s,responseFormat:c,seed:l,tools:u,toolChoice:d,reasoning:f,providerOptions:p}){let m=[],h=await w({provider:`openai`,providerOptions:p,schema:He})??{},g=we(this.modelId),_=h.reasoningEffort??(ue(f)?f:void 0),v=h.forceReasoning??g.isReasoningModel;i!=null&&m.push({type:`unsupported`,feature:`topK`});let{messages:y,warnings:b}=Le({prompt:e,systemMessageMode:h.systemMessageMode??(v?`developer`:g.systemMessageMode)});m.push(...b);let x=h.strictJsonSchema??!0,S={model:this.modelId,logit_bias:h.logitBias,logprobs:h.logprobs===!0||typeof h.logprobs==`number`||void 0,top_logprobs:typeof h.logprobs==`number`?h.logprobs:typeof h.logprobs==`boolean`&&h.logprobs?0:void 0,user:h.user,parallel_tool_calls:h.parallelToolCalls,max_tokens:t,temperature:n,top_p:r,frequency_penalty:a,presence_penalty:o,response_format:c?.type===`json`?c.schema==null?{type:`json_object`}:{type:`json_schema`,json_schema:{schema:c.schema,strict:x,name:c.name??`response`,description:c.description}}:void 0,stop:s,seed:l,verbosity:h.textVerbosity,max_completion_tokens:h.maxCompletionTokens,store:h.store,metadata:h.metadata,prediction:h.prediction,reasoning_effort:_,service_tier:h.serviceTier,prompt_cache_key:h.promptCacheKey,prompt_cache_options:h.promptCacheOptions,prompt_cache_retention:h.promptCacheRetention,safety_identifier:h.safetyIdentifier,messages:y};v?((_!==`none`||!g.supportsNonReasoningParameters)&&(S.temperature!=null&&(S.temperature=void 0,m.push({type:`unsupported`,feature:`temperature`,details:`temperature is not supported for reasoning models`})),S.top_p!=null&&(S.top_p=void 0,m.push({type:`unsupported`,feature:`topP`,details:`topP is not supported for reasoning models`})),S.logprobs!=null&&(S.logprobs=void 0,m.push({type:`other`,message:`logprobs is not supported for reasoning models`}))),S.frequency_penalty!=null&&(S.frequency_penalty=void 0,m.push({type:`unsupported`,feature:`frequencyPenalty`,details:`frequencyPenalty is not supported for reasoning models`})),S.presence_penalty!=null&&(S.presence_penalty=void 0,m.push({type:`unsupported`,feature:`presencePenalty`,details:`presencePenalty is not supported for reasoning models`})),S.logit_bias!=null&&(S.logit_bias=void 0,m.push({type:`other`,message:`logitBias is not supported for reasoning models`})),S.top_logprobs!=null&&(S.top_logprobs=void 0,m.push({type:`other`,message:`topLogprobs is not supported for reasoning models`})),S.max_tokens!=null&&(S.max_completion_tokens??=S.max_tokens,S.max_tokens=void 0)):(this.modelId.startsWith(`gpt-4o-search-preview`)||this.modelId.startsWith(`gpt-4o-mini-search-preview`))&&S.temperature!=null&&(S.temperature=void 0,m.push({type:`unsupported`,feature:`temperature`,details:`temperature is not supported for the search preview models and has been removed.`})),h.serviceTier===`flex`&&!g.supportsFlexProcessing&&(m.push({type:`unsupported`,feature:`serviceTier`,details:`flex processing is only available for o3, o4-mini, and gpt-5 models`}),S.service_tier=void 0),(h.serviceTier===`priority`||h.serviceTier===`fast`)&&!g.supportsPriorityProcessing&&(m.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`}),S.service_tier=void 0);let{tools:C,toolChoice:T,toolWarnings:E}=Ue({tools:u,toolChoice:d});return{args:{...S,tools:C,tool_choice:T},warnings:[...m,...E]}}async doGenerate(e){var t;let{args:n,warnings:r}=await this.getArgs(e),{responseHeaders:i,value:a,rawValue:o}=await f({url:this.config.url({path:`/chat/completions`,modelId:this.modelId}),headers:V((t=this.config).headers?.call(t),e.headers),body:n,failedResponseHandler:J,successfulResponseHandler:z(Be),abortSignal:e.abortSignal,fetch:this.config.fetch}),s=a.choices[0],c=[],l=s.message.content;l!=null&&l.length>0&&c.push({type:`text`,text:l});for(let e of s.message.tool_calls??[])c.push({type:`tool-call`,toolCallId:e.id??W(),toolName:e.function.name,input:e.function.arguments});for(let e of s.message.annotations??[])c.push({type:`source`,sourceType:`url`,id:W(),url:e.url_citation.url,title:e.url_citation.title});let u=a.usage?.completion_tokens_details,d={openai:{}};return u?.accepted_prediction_tokens!=null&&(d.openai.acceptedPredictionTokens=u?.accepted_prediction_tokens),u?.rejected_prediction_tokens!=null&&(d.openai.rejectedPredictionTokens=u?.rejected_prediction_tokens),s.logprobs?.content!=null&&(d.openai.logprobs=s.logprobs.content),{content:c,finishReason:{unified:ze(s.finish_reason),raw:s.finish_reason??void 0},usage:Fe(a.usage),request:{body:n},response:{...Re(a),headers:i,body:o},warnings:r,providerMetadata:d}}async doStream(e){var t;let{args:n,warnings:r}=await this.getArgs(e),i={...n,stream:!0,stream_options:{include_usage:!0}},a=this.config.url({path:`/chat/completions`,modelId:this.modelId}),{responseHeaders:o,value:s}=await f({url:a,headers:V((t=this.config).headers?.call(t),e.headers),body:i,failedResponseHandler:J,successfulResponseHandler:P(Ve),abortSignal:e.abortSignal,fetch:this.config.fetch}),c=await De({stream:s,getError:e=>`error`in e?e.error:void 0,isOutputChunk:Ge,url:a,requestBodyValues:i,responseHeaders:o}),l,u={unified:`other`,raw:void 0},d,p=!1,m=!1,h={openai:{}};return{stream:c.pipeThrough(new TransformStream({start(e){l=new ye(e,{generateId:W,typeValidation:`if-present`}),e.enqueue({type:`stream-start`,warnings:r})},transform(t,n){if(e.includeRawChunks&&n.enqueue({type:`raw`,rawValue:t.rawValue}),!t.success){u={unified:`error`,raw:void 0},n.enqueue({type:`error`,error:t.error});return}let r=t.value;if(`error`in r){u={unified:`error`,raw:void 0},n.enqueue({type:`error`,error:r.error});return}if(!p){let e=Re(r);Object.values(e).some(Boolean)&&(p=!0,n.enqueue({type:`response-metadata`,...Re(r)}))}r.usage!=null&&(d=r.usage,r.usage.completion_tokens_details?.accepted_prediction_tokens!=null&&(h.openai.acceptedPredictionTokens=r.usage.completion_tokens_details?.accepted_prediction_tokens),r.usage.completion_tokens_details?.rejected_prediction_tokens!=null&&(h.openai.rejectedPredictionTokens=r.usage.completion_tokens_details?.rejected_prediction_tokens));let i=r.choices[0];if(i?.finish_reason!=null&&(u={unified:ze(i.finish_reason),raw:i.finish_reason}),i?.logprobs?.content!=null&&(h.openai.logprobs=i.logprobs.content),i?.delta==null)return;let a=i.delta;if(a.content!=null&&(m||=(n.enqueue({type:`text-start`,id:`0`}),!0),n.enqueue({type:`text-delta`,id:`0`,delta:a.content})),a.tool_calls!=null)for(let e of a.tool_calls)l.processDelta(e);if(a.annotations!=null)for(let e of a.annotations)n.enqueue({type:`source`,sourceType:`url`,id:W(),url:e.url_citation.url,title:e.url_citation.title})},flush(e){m&&e.enqueue({type:`text-end`,id:`0`}),l.flush(),e.enqueue({type:`finish`,finishReason:u,usage:Fe(d),...h==null?{}:{providerMetadata:h}})}})),request:{body:i},response:{headers:o}}}};function Ge(e){return`error`in e?!1:e.choices.some(e=>{let t=e.delta;return t?.content!=null&&t.content.length>0||t?.tool_calls!=null&&t.tool_calls.length>0||t?.annotations!=null&&t.annotations.length>0})}function Ke(e){if(e==null)return ae();let t=e.prompt_tokens??0,n=e.completion_tokens??0;return{inputTokens:{total:e.prompt_tokens??void 0,noCache:t,cacheRead:void 0,cacheWrite:void 0},outputTokens:{total:e.completion_tokens??void 0,text:n,reasoning:void 0},raw:e}}function qe({prompt:e,user:t=`user`,assistant:n=`assistant`}){let i=``;e[0].role===`system`&&(i+=`${e[0].content}
|
|
2
2
|
|
|
3
|
-
`,e=e.slice(1));for(let{role:
|
|
3
|
+
`,e=e.slice(1));for(let{role:o,content:s}of e)switch(o){case`system`:throw new r({message:"Unexpected system message in prompt: ${content}",prompt:e});case`user`:{let e=s.map(e=>{switch(e.type){case`text`:return e.text}}).filter(Boolean).join(``);i+=`${t}:
|
|
4
4
|
${e}
|
|
5
5
|
|
|
6
|
-
`;break}case`assistant`:{let e=
|
|
6
|
+
`;break}case`assistant`:{let e=s.map(e=>{switch(e.type){case`text`:return e.text;case`tool-call`:throw new a({functionality:`tool-call messages`})}}).join(``);i+=`${n}:
|
|
7
7
|
${e}
|
|
8
8
|
|
|
9
|
-
`;break}case`tool`:throw new
|
|
10
|
-
`,{prompt:
|
|
11
|
-
${t}:`]}}function Pe({id:e,model:t,created:n}){return{id:e??void 0,modelId:t??void 0,timestamp:n==null?void 0:new Date(n*1e3)}}function Fe(e){switch(e){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`}}var Ie=P(()=>I(j({id:q().nullish(),created:N().nullish(),model:q().nullish(),choices:T(j({text:q(),finish_reason:q(),logprobs:j({tokens:T(q()),token_logprobs:T(N()),top_logprobs:T(U(q(),N())).nullish()}).nullish()})),usage:j({prompt_tokens:N(),completion_tokens:N(),total_tokens:N()}).nullish()}))),Le=P(()=>I(K([j({id:q().nullish(),created:N().nullish(),model:q().nullish(),choices:T(j({text:q(),finish_reason:q().nullish(),index:N(),logprobs:j({tokens:T(q()),token_logprobs:T(N()),top_logprobs:T(U(q(),N())).nullish()}).nullish()})),usage:j({prompt_tokens:N(),completion_tokens:N(),total_tokens:N()}).nullish()}),fe]))),Re=P(()=>I(j({echo:H().optional(),logitBias:U(q(),N()).optional(),suffix:q().optional(),user:q().optional(),logprobs:K([H(),N()]).optional()}))),ze=class e{constructor(e,t){this.specificationVersion=`v4`,this.supportedUrls={},this.modelId=e,this.config=t}get providerOptionsName(){return this.config.provider.split(`.`)[0].trim()}static[J](e){return l({modelId:e.modelId,config:e.config})}static[Y](t){return new e(t.modelId,t.config)}get provider(){return this.config.provider}async getArgs({prompt:e,maxOutputTokens:t,temperature:n,topP:r,topK:i,frequencyPenalty:a,presencePenalty:o,stopSequences:s,responseFormat:c,tools:l,toolChoice:u,seed:d,providerOptions:f}){let p=[],m={...await g({provider:`openai`,providerOptions:f,schema:Re}),...await g({provider:this.providerOptionsName,providerOptions:f,schema:Re})};i!=null&&p.push({type:`unsupported`,feature:`topK`}),l?.length&&p.push({type:`unsupported`,feature:`tools`}),u!=null&&p.push({type:`unsupported`,feature:`toolChoice`}),c!=null&&c.type!==`text`&&p.push({type:`unsupported`,feature:`responseFormat`,details:`JSON response format is not supported.`});let{prompt:h,stopSequences:_}=Ne({prompt:e}),v=[..._??[],...s??[]];return{args:{model:this.modelId,echo:m.echo,logit_bias:m.logitBias,logprobs:m?.logprobs===!0?0:m?.logprobs===!1?void 0:m?.logprobs,suffix:m.suffix,user:m.user,max_tokens:t,temperature:n,top_p:r,frequency_penalty:a,presence_penalty:o,seed:d,prompt:h,stop:v.length>0?v:void 0},warnings:p}}async doGenerate(e){var t;let{args:r,warnings:i}=await this.getArgs(e),{responseHeaders:a,value:o,rawValue:s}=await n({url:this.config.url({path:`/completions`,modelId:this.modelId}),headers:z((t=this.config).headers?.call(t),e.headers),body:r,failedResponseHandler:X,successfulResponseHandler:L(Ie),abortSignal:e.abortSignal,fetch:this.config.fetch}),c=o.choices[0],l={openai:{}};return c.logprobs!=null&&(l.openai.logprobs=c.logprobs),{content:[{type:`text`,text:c.text}],usage:Me(o.usage),finishReason:{unified:Fe(c.finish_reason),raw:c.finish_reason??void 0},request:{body:r},response:{...Pe(o),headers:a,body:s},providerMetadata:l,warnings:i}}async doStream(e){var t;let{args:r,warnings:i}=await this.getArgs(e),a={...r,stream:!0,stream_options:{include_usage:!0}},o=this.config.url({path:`/completions`,modelId:this.modelId}),{responseHeaders:s,value:c}=await n({url:o,headers:z((t=this.config).headers?.call(t),e.headers),body:a,failedResponseHandler:X,successfulResponseHandler:E(Le),abortSignal:e.abortSignal,fetch:this.config.fetch}),l=await me({stream:c,getError:e=>`error`in e?e.error:void 0,isOutputChunk:Be,url:o,requestBodyValues:a,responseHeaders:s}),u={unified:`other`,raw:void 0},d={openai:{}},f,p=!0;return{stream:l.pipeThrough(new TransformStream({start(e){e.enqueue({type:`stream-start`,warnings:i})},transform(t,n){if(e.includeRawChunks&&n.enqueue({type:`raw`,rawValue:t.rawValue}),!t.success){u={unified:`error`,raw:void 0},n.enqueue({type:`error`,error:t.error});return}let r=t.value;if(`error`in r){u={unified:`error`,raw:void 0},n.enqueue({type:`error`,error:r.error});return}p&&(p=!1,n.enqueue({type:`response-metadata`,...Pe(r)}),n.enqueue({type:`text-start`,id:`0`})),r.usage!=null&&(f=r.usage);let i=r.choices[0];i?.finish_reason!=null&&(u={unified:Fe(i.finish_reason),raw:i.finish_reason}),i?.logprobs!=null&&(d.openai.logprobs=i.logprobs),i?.text!=null&&i.text.length>0&&n.enqueue({type:`text-delta`,id:`0`,delta:i.text})},flush(e){p||e.enqueue({type:`text-end`,id:`0`}),e.enqueue({type:`finish`,finishReason:u,providerMetadata:d,usage:Me(f)})}})),request:{body:a},response:{headers:s}}}};function Be(e){return!(`error`in e)&&e.choices.some(e=>e.text.length>0)}var Ve=P(()=>I(j({dimensions:N().optional(),user:q().optional()}))),He=P(()=>I(j({data:T(j({embedding:T(N())})),usage:j({prompt_tokens:N()}).nullish()}))),Ue=class e{constructor(e,t){this.specificationVersion=`v4`,this.maxEmbeddingsPerCall=2048,this.supportsParallelCalls=!0,this.modelId=e,this.config=t}static[J](e){return l({modelId:e.modelId,config:e.config})}static[Y](t){return new e(t.modelId,t.config)}get provider(){return this.config.provider}async doEmbed({values:e,headers:r,abortSignal:i,providerOptions:a}){var o;if(e.length>this.maxEmbeddingsPerCall)throw new t({provider:this.provider,modelId:this.modelId,maxEmbeddingsPerCall:this.maxEmbeddingsPerCall,values:e});let s=await g({provider:`openai`,providerOptions:a,schema:Ve})??{},{responseHeaders:c,value:l,rawValue:u}=await n({url:this.config.url({path:`/embeddings`,modelId:this.modelId}),headers:z((o=this.config).headers?.call(o),r),body:{model:this.modelId,input:e,encoding_format:`float`,dimensions:s.dimensions,user:s.user},failedResponseHandler:X,successfulResponseHandler:L(He),abortSignal:i,fetch:this.config.fetch});return{warnings:[],embeddings:l.data.map(e=>e.embedding),usage:l.usage?{tokens:l.usage.prompt_tokens}:void 0,response:{headers:c,body:u}}}},We=P(()=>I(j({id:q(),object:q().nullish(),bytes:N().nullish(),created_at:N().nullish(),filename:q().nullish(),purpose:q().nullish(),status:q().nullish(),expires_at:N().nullish()}))),Ge=P(()=>I(j({purpose:q().optional(),expiresAfter:N().optional()}))),Ke=class{constructor(e){this.config=e,this.specificationVersion=`v4`}get provider(){return this.config.provider}async uploadFile({data:e,mediaType:t,filename:n,providerOptions:r}){let i=await g({provider:`openai`,providerOptions:r,schema:Ge}),a=ie(e),o=new Blob([a],{type:t}),s=new FormData;n==null?s.append(`file`,o):s.append(`file`,o,n),s.append(`purpose`,i?.purpose??`assistants`),i?.expiresAfter!=null&&s.append(`expires_after`,String(i.expiresAfter));let{value:c}=await ue({url:`${this.config.baseURL}/files`,headers:z(this.config.headers()),formData:s,failedResponseHandler:X,successfulResponseHandler:L(We),fetch:this.config.fetch});return{warnings:[],providerReference:{openai:c.id},...c.filename??n?{filename:c.filename??n}:{},...t==null?{}:{mediaType:t},providerMetadata:{openai:{...c.filename==null?{}:{filename:c.filename},...c.purpose==null?{}:{purpose:c.purpose},...c.bytes==null?{}:{bytes:c.bytes},...c.created_at==null?{}:{createdAt:c.created_at},...c.status==null?{}:{status:c.status},...c.expires_at==null?{}:{expiresAt:c.expires_at}}}}}},qe=P(()=>I(j({created:N().nullish(),data:T(j({b64_json:q(),revised_prompt:q().nullish()})),background:q().nullish(),output_format:q().nullish(),size:q().nullish(),quality:q().nullish(),usage:j({input_tokens:N().nullish(),output_tokens:N().nullish(),total_tokens:N().nullish(),input_tokens_details:j({image_tokens:N().nullish(),text_tokens:N().nullish()}).nullish()}).nullish()}))),Je={"dall-e-3":1,"dall-e-2":10,"gpt-image-1":10,"gpt-image-1-mini":10,"gpt-image-1.5":10,"gpt-image-2":10,"chatgpt-image-latest":10},Ye=[`chatgpt-image-`,`gpt-image-1-mini`,`gpt-image-1.5`,`gpt-image-1`,`gpt-image-2`];function Xe(e){return Ye.some(t=>e.startsWith(t))}var Ze=j({quality:C([`standard`,`hd`,`low`,`medium`,`high`,`auto`]).optional(),background:C([`transparent`,`opaque`,`auto`]).optional(),outputFormat:C([`png`,`jpeg`,`webp`]).optional(),outputCompression:N().int().min(0).max(100).optional(),user:q().optional()});P(()=>I(Ze));var Qe=P(()=>I(Ze.extend({style:C([`vivid`,`natural`]).optional(),moderation:C([`auto`,`low`]).optional()}))),$e=P(()=>I(Ze.extend({inputFidelity:C([`high`,`low`]).optional()}))),et=class e{constructor(e,t){this.modelId=e,this.config=t,this.specificationVersion=`v4`}static[J](e){return l({modelId:e.modelId,config:e.config})}static[Y](t){return new e(t.modelId,t.config)}get maxImagesPerCall(){return Je[this.modelId]??1}get provider(){return this.config.provider}async doGenerate({prompt:e,files:t,mask:r,n:i,size:a,aspectRatio:o,seed:s,providerOptions:c,headers:l,abortSignal:u}){var d,f,p;let m=[];o!=null&&m.push({type:`unsupported`,feature:`aspectRatio`,details:"This model does not support aspect ratio. Use `size` instead."}),s!=null&&m.push({type:`unsupported`,feature:`seed`});let h=((d=this.config._internal)?.currentDate)?.call(d)??new Date;if(t!=null){let n=await g({provider:`openai`,providerOptions:c,schema:$e})??{},{value:o,responseHeaders:s}=await ue({url:this.config.url({path:`/images/edits`,modelId:this.modelId}),headers:z((f=this.config).headers?.call(f),l),formData:w({model:this.modelId,prompt:e,image:await Promise.all(t.map(e=>e.type===`file`?new Blob([e.data instanceof Uint8Array?new Blob([e.data],{type:e.mediaType}):new Blob([S(e.data)],{type:e.mediaType})],{type:e.mediaType}):le(e.url))),mask:r==null?void 0:await nt(r),n:i,size:a,quality:n.quality,background:n.background,output_format:n.outputFormat,output_compression:n.outputCompression,input_fidelity:n.inputFidelity,user:n.user}),failedResponseHandler:X,successfulResponseHandler:L(qe),abortSignal:u,fetch:this.config.fetch});return{images:o.data.map(e=>e.b64_json),warnings:m,usage:o.usage==null?void 0:{inputTokens:o.usage.input_tokens??void 0,outputTokens:o.usage.output_tokens??void 0,totalTokens:o.usage.total_tokens??void 0},response:{timestamp:h,modelId:this.modelId,headers:s},providerMetadata:{openai:{images:o.data.map((e,t)=>({...e.revised_prompt?{revisedPrompt:e.revised_prompt}:{},created:o.created??void 0,size:o.size??void 0,quality:o.quality??void 0,background:o.background??void 0,outputFormat:o.output_format??void 0,...tt(o.usage?.input_tokens_details,t,o.data.length)}))}}}}let _=await g({provider:`openai`,providerOptions:c,schema:Qe})??{},{value:v,responseHeaders:y}=await n({url:this.config.url({path:`/images/generations`,modelId:this.modelId}),headers:z((p=this.config).headers?.call(p),l),body:{model:this.modelId,prompt:e,n:i,size:a,quality:_.quality,style:_.style,background:_.background,moderation:_.moderation,output_format:_.outputFormat,output_compression:_.outputCompression,user:_.user,...Xe(this.modelId)?{}:{response_format:`b64_json`}},failedResponseHandler:X,successfulResponseHandler:L(qe),abortSignal:u,fetch:this.config.fetch});return{images:v.data.map(e=>e.b64_json),warnings:m,usage:v.usage==null?void 0:{inputTokens:v.usage.input_tokens??void 0,outputTokens:v.usage.output_tokens??void 0,totalTokens:v.usage.total_tokens??void 0},response:{timestamp:h,modelId:this.modelId,headers:y},providerMetadata:{openai:{images:v.data.map((e,t)=>({...e.revised_prompt?{revisedPrompt:e.revised_prompt}:{},created:v.created??void 0,size:v.size??void 0,quality:v.quality??void 0,background:v.background??void 0,outputFormat:v.output_format??void 0,...tt(v.usage?.input_tokens_details,t,v.data.length)}))}}}}};function tt(e,t,n){if(e==null)return{};let r={};if(e.image_tokens!=null){let i=Math.floor(e.image_tokens/n),a=e.image_tokens-i*(n-1);r.imageTokens=t===n-1?a:i}if(e.text_tokens!=null){let i=Math.floor(e.text_tokens/n),a=e.text_tokens-i*(n-1);r.textTokens=t===n-1?a:i}return r}async function nt(e){if(!e)return;if(e.type===`url`)return le(e.url);let t=e.data instanceof Uint8Array?e.data:S(e.data);return new Blob([t],{type:e.mediaType})}var rt=P(()=>I(j({callId:q(),operation:D(`type`,[j({type:R(`create_file`),path:q(),diff:q()}),j({type:R(`delete_file`),path:q()}),j({type:R(`update_file`),path:q(),diff:q()})])}))),it=P(()=>I(j({status:C([`completed`,`failed`]),output:q().optional()})));P(()=>I(j({})));var at=M({id:`openai.apply_patch`,inputSchema:rt,outputSchema:it}),ot=P(()=>I(j({code:q().nullish(),containerId:q()}))),st=P(()=>I(j({outputs:T(D(`type`,[j({type:R(`logs`),logs:q()}),j({type:R(`image`),url:q()})])).nullish()}))),ct=P(()=>I(j({container:K([q(),j({fileIds:T(q()).optional()})]).optional()}))),lt=A({id:`openai.code_interpreter`,inputSchema:ot,outputSchema:st}),ut=(e={})=>lt(e),dt=j({id:q(),code:q().optional(),message:q().optional()}),ft=D(`type`,[j({type:R(`click`),button:C([`left`,`right`,`wheel`,`back`,`forward`]),x:N(),y:N(),keys:T(q()).optional()}),j({type:R(`double_click`),x:N(),y:N(),keys:T(q()).optional()}),j({type:R(`drag`),path:T(j({x:N(),y:N()})),keys:T(q()).optional()}),j({type:R(`keypress`),keys:T(q())}),j({type:R(`move`),x:N(),y:N(),keys:T(q()).optional()}),j({type:R(`screenshot`)}),j({type:R(`scroll`),x:N(),y:N(),scrollX:N(),scrollY:N(),keys:T(q()).optional()}),j({type:R(`type`),text:q()}),j({type:R(`wait`)})]),pt=P(()=>I(j({actions:T(ft),pendingSafetyChecks:T(dt),status:C([`in_progress`,`completed`,`incomplete`])}))),mt=P(()=>I(j({output:K([j({type:R(`computer_screenshot`),imageUrl:q(),fileId:q().optional(),detail:C([`auto`,`low`,`high`,`original`]).optional()}),j({type:R(`computer_screenshot`),fileId:q(),imageUrl:q().optional(),detail:C([`auto`,`low`,`high`,`original`]).optional()})]),acknowledgedSafetyChecks:T(dt).optional()}))),ht=M({id:`openai.computer`,inputSchema:pt,outputSchema:mt}),gt=(e={})=>ht(e),_t=P(()=>I(j({description:q().optional(),format:K([j({type:R(`grammar`),syntax:C([`regex`,`lark`]),definition:q()}),j({type:R(`text`)})]).optional()}))),vt=re({id:`openai.custom`,inputSchema:P(()=>I(q()))}),yt=e=>vt(e),bt=j({key:q(),type:C([`eq`,`ne`,`gt`,`gte`,`lt`,`lte`,`in`,`nin`]),value:K([q(),N(),H(),T(q())])}),xt=j({type:C([`and`,`or`]),filters:T(K([bt,k(()=>xt)]))}),St=P(()=>I(j({vectorStoreIds:T(q()),maxNumResults:N().optional(),ranking:j({ranker:q().optional(),scoreThreshold:N().optional()}).optional(),filters:K([bt,xt]).optional()}))),Ct=P(()=>I(j({queries:T(q()),results:T(j({attributes:U(q(),_()),fileId:q(),filename:q(),score:N(),text:q()})).nullable()}))),wt=A({id:`openai.file_search`,inputSchema:j({}),outputSchema:Ct}),Tt=P(()=>I(j({background:C([`auto`,`opaque`,`transparent`]).optional(),inputFidelity:C([`low`,`high`]).optional(),inputImageMask:j({fileId:q().optional(),imageUrl:q().optional()}).optional(),model:q().optional(),moderation:C([`auto`]).optional(),outputCompression:N().int().min(0).max(100).optional(),outputFormat:C([`png`,`jpeg`,`webp`]).optional(),partialImages:N().int().min(0).max(3).optional(),quality:C([`auto`,`low`,`medium`,`high`]).optional(),size:C([`1024x1024`,`1024x1536`,`1536x1024`,`auto`]).optional()}).strict())),Et=A({id:`openai.image_generation`,inputSchema:P(()=>I(j({}))),outputSchema:P(()=>I(j({result:q()})))}),Dt=(e={})=>Et(e),Ot=P(()=>I(j({action:j({type:R(`exec`),command:T(q()),timeoutMs:N().optional(),user:q().optional(),workingDirectory:q().optional(),env:U(q(),q()).optional()})}))),kt=P(()=>I(j({output:q()}))),At=M({id:`openai.local_shell`,inputSchema:Ot,outputSchema:kt}),jt=P(()=>I(j({action:j({commands:T(q()),timeoutMs:N().optional(),maxOutputLength:N().optional()})}))),Mt=P(()=>I(j({output:T(j({stdout:q(),stderr:q(),outcome:D(`type`,[j({type:R(`timeout`)}),j({type:R(`exit`),exitCode:N()})])}))}))),Nt=T(D(`type`,[j({type:R(`skillReference`),providerReference:U(q(),q()),version:q().optional()}),j({type:R(`inline`),name:q(),description:q(),source:j({type:R(`base64`),mediaType:R(`application/zip`),data:q()})})])).optional(),Pt=P(()=>I(j({environment:K([j({type:R(`containerAuto`),fileIds:T(q()).optional(),memoryLimit:C([`1g`,`4g`,`16g`,`64g`]).optional(),networkPolicy:D(`type`,[j({type:R(`disabled`)}),j({type:R(`allowlist`),allowedDomains:T(q()),domainSecrets:T(j({domain:q(),name:q(),value:q()})).optional()})]).optional(),skills:Nt}),j({type:R(`containerReference`),containerId:q()}),j({type:R(`local`).optional(),skills:T(j({name:q(),description:q(),path:q()})).optional()})]).optional()}))),Ft=M({id:`openai.shell`,inputSchema:jt,outputSchema:Mt}),It=P(()=>I(j({execution:C([`server`,`client`]).optional(),description:q().optional(),parameters:U(q(),_()).optional()}))),Lt=P(()=>I(j({arguments:_().optional(),call_id:q().nullish()}))),Rt=P(()=>I(j({tools:T(U(q(),_()))}))),zt=M({id:`openai.tool_search`,inputSchema:Lt,outputSchema:Rt}),Bt=(e={})=>zt(e),Vt=P(()=>I(j({externalWebAccess:H().optional(),filters:j({allowedDomains:T(q()).optional()}).optional(),searchContextSize:C([`low`,`medium`,`high`]).optional(),userLocation:j({type:R(`approximate`),country:q().optional(),city:q().optional(),region:q().optional(),timezone:q().optional()}).optional()}))),Ht=A({id:`openai.web_search`,inputSchema:P(()=>I(j({}))),outputSchema:P(()=>I(j({action:D(`type`,[j({type:R(`search`),query:q().optional(),queries:T(q()).optional()}),j({type:R(`openPage`),url:q().nullish()}),j({type:R(`findInPage`),url:q().nullish(),pattern:q().nullish()})]).optional(),sources:T(D(`type`,[j({type:R(`url`),url:q()}),j({type:R(`api`),name:q()})])).optional()})))}),Ut=(e={})=>Ht(e),Wt=P(()=>I(j({searchContextSize:C([`low`,`medium`,`high`]).optional(),userLocation:j({type:R(`approximate`),country:q().optional(),city:q().optional(),region:q().optional(),timezone:q().optional()}).optional()}))),Gt=A({id:`openai.web_search_preview`,inputSchema:P(()=>I(j({}))),outputSchema:P(()=>I(j({action:D(`type`,[j({type:R(`search`),query:q().optional()}),j({type:R(`openPage`),url:q().nullish()}),j({type:R(`findInPage`),url:q().nullish(),pattern:q().nullish()})]).optional()})))}),Kt=k(()=>K([q(),N(),H(),ae(),T(Kt),U(q(),Kt)])),qt=P(()=>I(j({serverLabel:q(),allowedTools:K([T(q()),j({readOnly:H().optional(),toolNames:T(q()).optional()})]).optional(),authorization:q().optional(),connectorId:q().optional(),headers:U(q(),q()).optional(),requireApproval:K([C([`always`,`never`]),j({never:j({toolNames:T(q()).optional()}).optional()})]).optional(),serverDescription:q().optional(),serverUrl:q().optional()}).refine(e=>e.serverUrl!=null||e.connectorId!=null,`One of serverUrl or connectorId must be provided.`))),Jt=A({id:`openai.mcp`,inputSchema:P(()=>I(j({}))),outputSchema:P(()=>I(j({type:R(`call`),serverLabel:q(),name:q(),arguments:q(),output:q().nullish(),error:K([q(),Kt]).optional()})))}),Yt={applyPatch:at,customTool:yt,codeInterpreter:ut,computer:gt,fileSearch:wt,imageGeneration:Dt,localShell:At,shell:Ft,webSearchPreview:Gt,webSearch:Ut,mcp:e=>Jt(e),toolSearch:Bt};function Xt(e){let t=e,n=t.type;switch(n){case`session.created`:return{type:`session-created`,sessionId:t.session?.id,raw:e};case`session.updated`:return{type:`session-updated`,raw:e};case`input_audio_buffer.speech_started`:return{type:`speech-started`,itemId:t.item_id,raw:e};case`input_audio_buffer.speech_stopped`:return{type:`speech-stopped`,itemId:t.item_id,raw:e};case`input_audio_buffer.committed`:return{type:`audio-committed`,itemId:t.item_id,previousItemId:t.previous_item_id,raw:e};case`conversation.item.added`:return{type:`conversation-item-added`,itemId:t.item?.id??t.item_id,item:t.item,raw:e};case`conversation.item.input_audio_transcription.completed`:return{type:`input-transcription-completed`,itemId:t.item_id,transcript:t.transcript??``,raw:e};case`response.created`:return{type:`response-created`,responseId:t.response?.id??t.response_id,raw:e};case`response.done`:return{type:`response-done`,responseId:t.response?.id??t.response_id,status:t.response?.status??`completed`,raw:e};case`response.output_item.added`:return{type:`output-item-added`,responseId:t.response_id,itemId:t.item?.id??t.item_id,raw:e};case`response.output_item.done`:return{type:`output-item-done`,responseId:t.response_id,itemId:t.item?.id??t.item_id,raw:e};case`response.content_part.added`:return{type:`content-part-added`,responseId:t.response_id,itemId:t.item_id,raw:e};case`response.content_part.done`:return{type:`content-part-done`,responseId:t.response_id,itemId:t.item_id,raw:e};case`response.output_audio.delta`:return{type:`audio-delta`,responseId:t.response_id,itemId:t.item_id,delta:t.delta,raw:e};case`response.output_audio.done`:return{type:`audio-done`,responseId:t.response_id,itemId:t.item_id,raw:e};case`response.output_audio_transcript.delta`:return{type:`audio-transcript-delta`,responseId:t.response_id,itemId:t.item_id,delta:t.delta,raw:e};case`response.output_audio_transcript.done`:return{type:`audio-transcript-done`,responseId:t.response_id,itemId:t.item_id,transcript:t.transcript,raw:e};case`response.output_text.delta`:return{type:`text-delta`,responseId:t.response_id,itemId:t.item_id,delta:t.delta,raw:e};case`response.output_text.done`:return{type:`text-done`,responseId:t.response_id,itemId:t.item_id,text:t.text,raw:e};case`response.function_call_arguments.delta`:return{type:`function-call-arguments-delta`,responseId:t.response_id,itemId:t.item_id,callId:t.call_id,delta:t.delta,raw:e};case`response.function_call_arguments.done`:return{type:`function-call-arguments-done`,responseId:t.response_id,itemId:t.item_id,callId:t.call_id,name:t.name,arguments:t.arguments,raw:e};case`error`:return{type:`error`,message:t.error?.message??t.message??`Unknown error`,code:t.error?.code??t.code,raw:e};default:return{type:`custom`,rawType:n,raw:e}}}function Zt(e,t){switch(e.type){case`session-update`:return{type:`session.update`,session:Qt(e.config,t)};case`input-audio-append`:return{type:`input_audio_buffer.append`,audio:e.audio};case`input-audio-commit`:return{type:`input_audio_buffer.commit`};case`input-audio-clear`:return{type:`input_audio_buffer.clear`};case`conversation-item-create`:{let t=e.item;switch(t.type){case`text-message`:return{type:`conversation.item.create`,item:{type:`message`,role:t.role,content:[{type:`input_text`,text:t.text}]}};case`audio-message`:return{type:`conversation.item.create`,item:{type:`message`,role:t.role,content:[{type:`input_audio`,audio:t.audio}]}};case`function-call-output`:return{type:`conversation.item.create`,item:{type:`function_call_output`,call_id:t.callId,output:t.output}}}break}case`conversation-item-truncate`:return{type:`conversation.item.truncate`,item_id:e.itemId,content_index:e.contentIndex,audio_end_ms:e.audioEndMs};case`response-create`:return{type:`response.create`,...e.options==null?{}:{response:{...e.options.modalities==null?{}:{output_modalities:e.options.modalities},...e.options.instructions==null?{}:{instructions:e.options.instructions},...e.options.metadata==null?{}:{metadata:e.options.metadata}}}};case`response-cancel`:return{type:`response.cancel`}}}function Qt(e,t){let n={type:`realtime`,model:t};e.instructions!=null&&(n.instructions=e.instructions),e.outputModalities!=null&&(n.output_modalities=e.outputModalities);let r={};if(e.inputAudioFormat!=null||e.inputAudioTranscription!=null||e.turnDetection!=null){let t={};if(e.inputAudioFormat!=null&&(t.format={type:e.inputAudioFormat.type,...e.inputAudioFormat.rate==null?{}:{rate:e.inputAudioFormat.rate}}),e.turnDetection!=null)if(e.turnDetection.type===`disabled`)t.turn_detection=null;else{let n={type:e.turnDetection.type===`server-vad`?`server_vad`:`semantic_vad`};e.turnDetection.threshold!=null&&(n.threshold=e.turnDetection.threshold),e.turnDetection.silenceDurationMs!=null&&(n.silence_duration_ms=e.turnDetection.silenceDurationMs),e.turnDetection.prefixPaddingMs!=null&&(n.prefix_padding_ms=e.turnDetection.prefixPaddingMs),t.turn_detection=n}e.inputAudioTranscription!=null&&(t.transcription={model:e.inputAudioTranscription.model??`gpt-realtime-whisper`,...e.inputAudioTranscription.language==null?{}:{language:e.inputAudioTranscription.language},...e.inputAudioTranscription.prompt==null?{}:{prompt:e.inputAudioTranscription.prompt}}),r.input=t}if(e.outputAudioFormat!=null||e.voice!=null){let t={};e.outputAudioFormat!=null&&(t.format={type:e.outputAudioFormat.type,...e.outputAudioFormat.rate==null?{}:{rate:e.outputAudioFormat.rate}}),e.voice!=null&&(t.voice=e.voice),r.output=t}return Object.keys(r).length>0&&(n.audio=r),e.tools!=null&&e.tools.length>0&&(n.tools=e.tools.map(e=>({type:e.type,name:e.name,description:e.description,parameters:e.parameters})),n.tool_choice=`auto`),e.providerOptions!=null&&Object.assign(n,e.providerOptions),n}var $t=class{constructor(e,t){this.specificationVersion=`v4`,this.modelId=e,this.provider=t.provider,this.config=t}async doCreateClientSecret(e){let t=this.config.fetch??fetch,n=`${this.config.baseURL}/realtime/client_secrets`,r=e.sessionConfig==null?{type:`realtime`,model:this.modelId}:Qt(e.sessionConfig,this.modelId),i=await t(n,{method:`POST`,headers:{...this.config.headers(),"Content-Type":`application/json`},body:JSON.stringify({session:r,...e.expiresAfterSeconds==null?{}:{expires_after:{anchor:`created_at`,seconds:e.expiresAfterSeconds}}})});if(!i.ok){let e=await i.text();throw Error(`OpenAI realtime client secret request failed: ${i.status} ${e}`)}let a=await i.json();return{token:a.value,url:`wss://${new URL(this.config.baseURL).host}/v1/realtime?model=${encodeURIComponent(this.modelId)}`,expiresAt:a.expires_at}}getWebSocketConfig(e){return{url:e.url,protocols:[`realtime`,`openai-insecure-api-key.${e.token}`]}}parseServerEvent(e){return Xt(e)}serializeClientEvent(e){return Zt(e,this.modelId)}buildSessionConfig(e){return Qt(e,this.modelId)}};function en(e){if(e==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 t=e.input_tokens,n=e.output_tokens,r=e.input_tokens_details?.cached_tokens??0,i=e.input_tokens_details?.cache_write_tokens??void 0,a=e.output_tokens_details?.reasoning_tokens??0;return{inputTokens:{total:t,noCache:t-r-(i??0),cacheRead:r,cacheWrite:i},outputTokens:{total:n,text:n-a,reasoning:a},raw:e}}function tn(e){return JSON.stringify(e===void 0?{}:e)}function Q(e,t){return e?.[t]?.promptCacheBreakpoint}function nn(e,t){return t?t.some(t=>e.startsWith(t)):!1}async function rn({prompt:e,toolNameMapping:t,systemMessageMode:n,providerOptionsName:r,fileIdPrefixes:i,passThroughUnsupportedFiles:a=!1,store:o,hasConversation:c=!1,hasPreviousResponseId:l=!1,hasLocalShellTool:d=!1,hasShellTool:f=!1,hasApplyPatchTool:m=!1,hasComputerTool:_=!1,customProviderToolNames:y}){let b=[],x=[],S=new Set;for(let{role:C,content:w,providerOptions:T}of e)switch(C){case`system`:switch(n){case`system`:{let e=Q(T,r);b.push({role:`system`,content:e==null?w:[{type:`input_text`,text:w,prompt_cache_breakpoint:e}]});break}case`developer`:{let e=Q(T,r);b.push({role:`developer`,content:e==null?w:[{type:`input_text`,text:w,prompt_cache_breakpoint:e}]});break}case`remove`:x.push({type:`other`,message:`system messages are removed for this model`});break;default:throw Error(`Unsupported system message mode: ${n}`)}break;case`user`:b.push({role:`user`,content:w.map((e,t)=>{switch(e.type){case`text`:{let t=Q(e.providerOptions,r);return{type:`input_text`,text:e.text,...t!=null&&{prompt_cache_breakpoint:t}}}case`file`:{let n=Q(e.providerOptions,r);switch(e.data.type){case`reference`:{let t=v({reference:e.data.reference,provider:r});return W(e.mediaType)===`image`?{type:`input_image`,file_id:t,detail:e.providerOptions?.[r]?.imageDetail,...n!=null&&{prompt_cache_breakpoint:n}}:{type:`input_file`,file_id:t,...n!=null&&{prompt_cache_breakpoint:n}}}case`text`:throw new F({functionality:`text file parts`});case`url`:case`data`:if(W(e.mediaType)===`image`)return{type:`input_image`,...e.data.type===`url`?{image_url:e.data.url.toString()}:typeof e.data.data==`string`&&nn(e.data.data,i)?{file_id:e.data.data}:{image_url:`data:${s({part:e})};base64,${B(e.data.data)}`},detail:e.providerOptions?.[r]?.imageDetail,...n!=null&&{prompt_cache_breakpoint:n}};{if(e.data.type===`url`)return{type:`input_file`,file_url:e.data.url.toString(),...n!=null&&{prompt_cache_breakpoint:n}};let r=s({part:e});if(r!==`application/pdf`&&!a)throw new F({functionality:`file part media type ${r}`});return{type:`input_file`,...typeof e.data.data==`string`&&nn(e.data.data,i)?{file_id:e.data.data}:{filename:e.filename??(r===`application/pdf`?`part-${t}.pdf`:`part-${t}`),file_data:`data:${r};base64,${B(e.data.data)}`},...n!=null&&{prompt_cache_breakpoint:n}}}}}}})});break;case`assistant`:{let e={};for(let n of w)switch(n.type){case`text`:{let e=n.providerOptions?.[r],t=e?.itemId,i=e?.phase;if(c&&t!=null)break;if(o&&t!=null){b.push({type:`item_reference`,id:t});break}b.push({role:`assistant`,content:[{type:`output_text`,text:n.text}],id:t,...i!=null&&{phase:i}});break}case`tool-call`:{let e=n.providerOptions?.[r]?.itemId??n.providerMetadata?.[r]?.itemId,i=n.providerOptions?.[r]?.namespace??n.providerMetadata?.[r]?.namespace;if(c&&e!=null)break;let a=t.toProviderToolName(n.toolName);if(a===`tool_search`){if(o&&e!=null){b.push({type:`item_reference`,id:e});break}let t=typeof n.input==`string`?await u({text:n.input,schema:Lt}):await h({value:n.input,schema:Lt}),r=t.call_id==null?`server`:`client`;b.push({type:`tool_search_call`,id:e??n.toolCallId,execution:r,call_id:t.call_id??null,status:`completed`,arguments:t.arguments});break}if(n.providerExecuted){o&&e!=null&&b.push({type:`item_reference`,id:e});break}if(l&&o&&e!=null)break;let s=d&&a===`local_shell`||f&&a===`shell`||m&&a===`apply_patch`||_&&a===`computer`||(y?.has(a)??!1);if(o&&e!=null&&s){b.push({type:`item_reference`,id:e});break}if(d&&a===`local_shell`){let t=await h({value:n.input,schema:Ot});b.push({type:`local_shell_call`,call_id:n.toolCallId,id:e,action:{type:`exec`,command:t.action.command,timeout_ms:t.action.timeoutMs,user:t.action.user,working_directory:t.action.workingDirectory,env:t.action.env}});break}if(f&&a===`shell`){let t=await h({value:n.input,schema:jt});b.push({type:`shell_call`,call_id:n.toolCallId,id:e,status:`completed`,action:{commands:t.action.commands,timeout_ms:t.action.timeoutMs,max_output_length:t.action.maxOutputLength}});break}if(m&&a===`apply_patch`){let t=await h({value:n.input,schema:rt});b.push({type:`apply_patch_call`,call_id:t.callId,id:e,status:`completed`,operation:t.operation});break}if(_&&a===`computer`){let t=await h({value:n.input,schema:pt});b.push({type:`computer_call`,call_id:n.toolCallId,id:e,status:t.status,actions:t.actions.map(e=>{switch(e.type){case`click`:case`double_click`:case`move`:return{...e,keys:e.keys};case`drag`:return{...e,keys:e.keys};case`scroll`:return{type:`scroll`,x:e.x,y:e.y,scroll_x:e.scrollX,scroll_y:e.scrollY,keys:e.keys};default:return e}}),pending_safety_checks:t.pendingSafetyChecks.map(e=>({id:e.id,code:e.code,message:e.message}))});break}if(y?.has(a)){b.push({type:`custom_tool_call`,call_id:n.toolCallId,name:a,input:typeof n.input==`string`?n.input:JSON.stringify(n.input),id:e});break}b.push({type:`function_call`,call_id:n.toolCallId,name:a,arguments:tn(n.input),...i!=null&&{namespace:i}});break}case`tool-result`:{if(n.output.type===`execution-denied`||n.output.type===`json`&&typeof n.output.value==`object`&&n.output.value!=null&&`type`in n.output.value&&n.output.value.type===`execution-denied`||c)break;let e=t.toProviderToolName(n.toolName);if(e===`tool_search`){let e=n.providerOptions?.[r]?.itemId??n.toolCallId;if(o)b.push({type:`item_reference`,id:e});else if(n.output.type===`json`){let t=await h({value:n.output.value,schema:Rt});b.push({type:`tool_search_output`,id:e,execution:`server`,call_id:null,status:`completed`,tools:t.tools})}break}if(f&&e===`shell`){if(n.output.type===`json`){let e=await h({value:n.output.value,schema:Mt});b.push({type:`shell_call_output`,call_id:n.toolCallId,output:e.output.map(e=>({stdout:e.stdout,stderr:e.stderr,outcome:e.outcome.type===`timeout`?{type:`timeout`}:{type:`exit`,exit_code:e.outcome.exitCode}}))})}break}if(o){let e=n.providerOptions?.[r]?.itemId??n.toolCallId;b.push({type:`item_reference`,id:e})}else x.push({type:`other`,message:`Results for OpenAI tool ${n.toolName} are not sent to the API when store is false`});break}case`reasoning`:{let t=await g({provider:r,providerOptions:n.providerOptions,schema:an}),i=t?.itemId;if((c||l)&&i!=null)break;if(i!=null){let r=e[i];if(o)r===void 0&&(b.push({type:`item_reference`,id:i}),e[i]={type:`reasoning`,id:i,summary:[]});else{let a=[];n.text.length>0?a.push({type:`summary_text`,text:n.text}):r!==void 0&&x.push({type:`other`,message:`Cannot append empty reasoning part to existing reasoning sequence. Skipping reasoning part: ${JSON.stringify(n)}.`}),r===void 0?(e[i]={type:`reasoning`,id:i,encrypted_content:t?.reasoningEncryptedContent,summary:a},b.push(e[i])):(r.summary.push(...a),t?.reasoningEncryptedContent!=null&&(r.encrypted_content=t.reasoningEncryptedContent))}}else{let e=t?.reasoningEncryptedContent;if(e!=null){let t=[];n.text.length>0&&t.push({type:`summary_text`,text:n.text}),b.push({type:`reasoning`,encrypted_content:e,summary:t})}else x.push({type:`other`,message:`Non-OpenAI reasoning parts are not supported. Skipping reasoning part: ${JSON.stringify(n)}.`})}break}case`custom`:if(n.kind===`openai.compaction`){let e=n.providerOptions?.[r],t=e?.itemId;if(c&&t!=null)break;if(o&&t!=null){b.push({type:`item_reference`,id:t});break}let i=e?.encryptedContent;t!=null&&b.push({type:`compaction`,id:t,encrypted_content:i})}break}break}case`tool`:for(let e of w){if(e.type===`tool-approval-response`){let t=e;if(S.has(t.approvalId))continue;S.add(t.approvalId),o&&b.push({type:`item_reference`,id:t.approvalId}),b.push({type:`mcp_approval_response`,approval_request_id:t.approvalId,approve:t.approved});continue}let n=e.output;if(n.type===`execution-denied`&&n.providerOptions?.openai?.approvalId)continue;let i=t.toProviderToolName(e.toolName);if(i===`tool_search`&&n.type===`json`){let t=await h({value:n.value,schema:Rt});b.push({type:`tool_search_output`,execution:`client`,call_id:e.toolCallId,status:`completed`,tools:t.tools});continue}if(d&&i===`local_shell`&&n.type===`json`){let t=await h({value:n.value,schema:kt});b.push({type:`local_shell_call_output`,call_id:e.toolCallId,output:t.output});continue}if(f&&i===`shell`&&n.type===`json`){let t=await h({value:n.value,schema:Mt});b.push({type:`shell_call_output`,call_id:e.toolCallId,output:t.output.map(e=>({stdout:e.stdout,stderr:e.stderr,outcome:e.outcome.type===`timeout`?{type:`timeout`}:{type:`exit`,exit_code:e.outcome.exitCode}}))});continue}if(m&&e.toolName===`apply_patch`&&n.type===`json`){let t=await h({value:n.value,schema:it});b.push({type:`apply_patch_call_output`,call_id:e.toolCallId,status:t.status,output:t.output});continue}if(_&&i===`computer`&&n.type===`json`){let t=await h({value:n.value,schema:mt});b.push({type:`computer_call_output`,call_id:e.toolCallId,output:{type:`computer_screenshot`,image_url:t.output.imageUrl,file_id:t.output.fileId,detail:t.output.detail},acknowledged_safety_checks:t.acknowledgedSafetyChecks?.map(e=>({id:e.id,code:e.code,message:e.message}))});continue}if(y?.has(i)){let t;switch(n.type){case`text`:case`error-text`:t=n.value;break;case`execution-denied`:t=n.reason??`Tool call execution denied.`;break;case`json`:case`error-json`:t=JSON.stringify(n.value);break;case`content`:t=n.value.map(e=>{let t=Q(e.providerOptions,r);switch(e.type){case`text`:return{type:`input_text`,text:e.text,...t!=null&&{prompt_cache_breakpoint:t}};case`file`:{let n=W(e.mediaType),i=e.providerOptions?.[r]?.imageDetail;if(e.data.type===`data`){let r=s({part:e});return n===`image`?{type:`input_image`,image_url:`data:${r};base64,${B(e.data.data)}`,detail:i,...t!=null&&{prompt_cache_breakpoint:t}}:{type:`input_file`,filename:e.filename??`data`,file_data:`data:${r};base64,${B(e.data.data)}`,...t!=null&&{prompt_cache_breakpoint:t}}}if(e.data.type===`url`)return n===`image`?{type:`input_image`,image_url:e.data.url.toString(),detail:i,...t!=null&&{prompt_cache_breakpoint:t}}:{type:`input_file`,file_url:e.data.url.toString(),...t!=null&&{prompt_cache_breakpoint:t}};x.push({type:`other`,message:`unsupported custom tool content part type: ${e.type} with data type: ${e.data.type}`});return}default:x.push({type:`other`,message:`unsupported custom tool content part type: ${e.type}`});return}}).filter(p);break;default:t=``}b.push({type:`custom_tool_call_output`,call_id:e.toolCallId,output:t});continue}let a;switch(n.type){case`text`:case`error-text`:a=n.value;break;case`execution-denied`:a=n.reason??`Tool call execution denied.`;break;case`json`:case`error-json`:a=JSON.stringify(n.value);break;case`content`:a=n.value.map(e=>{let t=Q(e.providerOptions,r);switch(e.type){case`text`:return{type:`input_text`,text:e.text,...t!=null&&{prompt_cache_breakpoint:t}};case`file`:{let n=W(e.mediaType),i=e.providerOptions?.[r]?.imageDetail;if(e.data.type===`data`){let r=s({part:e});return n===`image`?{type:`input_image`,image_url:`data:${r};base64,${B(e.data.data)}`,detail:i,...t!=null&&{prompt_cache_breakpoint:t}}:{type:`input_file`,filename:e.filename??`data`,file_data:`data:${r};base64,${B(e.data.data)}`,...t!=null&&{prompt_cache_breakpoint:t}}}if(e.data.type===`url`)return n===`image`?{type:`input_image`,image_url:e.data.url.toString(),detail:i,...t!=null&&{prompt_cache_breakpoint:t}}:{type:`input_file`,file_url:e.data.url.toString(),...t!=null&&{prompt_cache_breakpoint:t}};x.push({type:`other`,message:`unsupported tool content part type: ${e.type} with data type: ${e.data.type}`});return}default:x.push({type:`other`,message:`unsupported tool content part type: ${e.type}`});return}}).filter(p);break}b.push({type:`function_call_output`,call_id:e.toolCallId,output:a})}break;default:throw Error(`Unsupported role: ${C}`)}return!o&&b.some(e=>`type`in e&&e.type===`reasoning`&&e.encrypted_content==null)&&(x.push({type:`other`,message:`Reasoning parts without encrypted content are not supported when store is false. Skipping reasoning parts.`}),b=b.filter(e=>!(`type`in e)||e.type!==`reasoning`||e.encrypted_content!=null)),{input:b,warnings:x}}var an=j({itemId:q().nullish(),reasoningEncryptedContent:q().nullish()});function on({finishReason:e,hasFunctionCall:t}){switch(e){case void 0:case null:return t?`tool-calls`:`stop`;case`max_output_tokens`:return`length`;case`content_filter`:return`content-filter`;default:return t?`tool-calls`:`other`}}var sn=k(()=>K([q(),N(),H(),ae(),T(sn),U(q(),sn.optional())])),cn=j({id:q(),code:q().nullish(),message:q().nullish()}),ln=D(`type`,[j({type:R(`click`),button:C([`left`,`right`,`wheel`,`back`,`forward`]),x:N(),y:N(),keys:T(q()).nullish()}),j({type:R(`double_click`),x:N(),y:N(),keys:T(q()).nullish()}),j({type:R(`drag`),path:T(j({x:N(),y:N()})),keys:T(q()).nullish()}),j({type:R(`keypress`),keys:T(q())}),j({type:R(`move`),x:N(),y:N(),keys:T(q()).nullish()}),j({type:R(`screenshot`)}),j({type:R(`scroll`),x:N(),y:N(),scroll_x:N(),scroll_y:N(),keys:T(q()).nullish()}),j({type:R(`type`),text:q()}),j({type:R(`wait`)})]),un=j({type:R(`computer_call`),id:q(),call_id:q().nullish(),status:C([`in_progress`,`completed`,`incomplete`]),action:ln.nullish(),actions:T(ln).nullish(),pending_safety_checks:T(cn).nullish()}),dn=j({type:R(`error`),sequence_number:N(),error:j({type:q(),code:q(),message:q(),param:q().nullish()})}),fn=j({type:R(`error`),sequence_number:N(),code:q().nullish(),message:q(),param:q().nullish()}),pn=P(()=>I(K([j({type:R(`response.output_text.delta`),item_id:q(),delta:q(),logprobs:T(j({token:q(),logprob:N(),top_logprobs:T(j({token:q(),logprob:N()}))})).nullish()}),j({type:C([`response.completed`,`response.incomplete`]),response:j({incomplete_details:j({reason:q()}).nullish(),usage:j({input_tokens:N(),input_tokens_details:j({cached_tokens:N().nullish(),cache_write_tokens:N().nullish(),orchestration_input_tokens:N().nullish(),orchestration_input_cached_tokens:N().nullish()}).nullish(),output_tokens:N(),output_tokens_details:j({reasoning_tokens:N().nullish(),orchestration_output_tokens:N().nullish()}).nullish()}),reasoning:j({context:q().nullish()}).nullish(),service_tier:q().nullish()})}),j({type:R(`response.failed`),sequence_number:N(),response:j({error:j({code:q().nullish(),message:q()}).nullish(),incomplete_details:j({reason:q()}).nullish(),usage:j({input_tokens:N(),input_tokens_details:j({cached_tokens:N().nullish(),cache_write_tokens:N().nullish(),orchestration_input_tokens:N().nullish(),orchestration_input_cached_tokens:N().nullish()}).nullish(),output_tokens:N(),output_tokens_details:j({reasoning_tokens:N().nullish(),orchestration_output_tokens:N().nullish()}).nullish()}).nullish(),reasoning:j({context:q().nullish()}).nullish(),service_tier:q().nullish()})}),j({type:R(`response.created`),response:j({id:q(),created_at:N(),model:q(),service_tier:q().nullish()})}),j({type:R(`response.output_item.added`),output_index:N(),item:D(`type`,[j({type:R(`message`),id:q(),phase:C([`commentary`,`final_answer`]).nullish()}),j({type:R(`reasoning`),id:q(),encrypted_content:q().nullish()}),j({type:R(`function_call`),id:q(),call_id:q(),name:q(),arguments:q(),namespace:q().nullish()}),j({type:R(`web_search_call`),id:q(),status:q()}),un,j({type:R(`file_search_call`),id:q()}),j({type:R(`image_generation_call`),id:q()}),j({type:R(`code_interpreter_call`),id:q(),container_id:q(),code:q().nullable(),outputs:T(D(`type`,[j({type:R(`logs`),logs:q()}),j({type:R(`image`),url:q()})])).nullable(),status:q()}),j({type:R(`mcp_call`),id:q(),status:q(),approval_request_id:q().nullish()}),j({type:R(`mcp_list_tools`),id:q()}),j({type:R(`mcp_approval_request`),id:q()}),j({type:R(`apply_patch_call`),id:q(),call_id:q(),status:C([`in_progress`,`completed`]),operation:D(`type`,[j({type:R(`create_file`),path:q(),diff:q()}),j({type:R(`delete_file`),path:q()}),j({type:R(`update_file`),path:q(),diff:q()})])}),j({type:R(`custom_tool_call`),id:q(),call_id:q(),name:q(),input:q()}),j({type:R(`shell_call`),id:q(),call_id:q(),status:C([`in_progress`,`completed`,`incomplete`]),action:j({commands:T(q())})}),j({type:R(`compaction`),id:q(),encrypted_content:q().nullish()}),j({type:R(`shell_call_output`),id:q(),call_id:q(),status:C([`in_progress`,`completed`,`incomplete`]),output:T(j({stdout:q(),stderr:q(),outcome:D(`type`,[j({type:R(`timeout`)}),j({type:R(`exit`),exit_code:N()})])}))}),j({type:R(`tool_search_call`),id:q(),execution:C([`server`,`client`]),call_id:q().nullable(),status:C([`in_progress`,`completed`,`incomplete`]),arguments:_()}),j({type:R(`tool_search_output`),id:q(),execution:C([`server`,`client`]),call_id:q().nullable(),status:C([`in_progress`,`completed`,`incomplete`]),tools:T(U(q(),sn.optional()))})])}),j({type:R(`response.output_item.done`),output_index:N(),item:D(`type`,[j({type:R(`message`),id:q(),phase:C([`commentary`,`final_answer`]).nullish()}),j({type:R(`reasoning`),id:q(),encrypted_content:q().nullish()}),j({type:R(`function_call`),id:q(),call_id:q(),name:q(),arguments:q(),status:R(`completed`),namespace:q().nullish()}),j({type:R(`custom_tool_call`),id:q(),call_id:q(),name:q(),input:q(),status:R(`completed`)}),j({type:R(`code_interpreter_call`),id:q(),code:q().nullable(),container_id:q(),outputs:T(D(`type`,[j({type:R(`logs`),logs:q()}),j({type:R(`image`),url:q()})])).nullable()}),j({type:R(`image_generation_call`),id:q(),result:q()}),j({type:R(`web_search_call`),id:q(),status:q(),action:D(`type`,[j({type:R(`search`),query:q().nullish(),queries:T(q()).nullish(),sources:T(D(`type`,[j({type:R(`url`),url:q()}),j({type:R(`api`),name:q()})])).nullish()}),j({type:R(`open_page`),url:q().nullish()}),j({type:R(`find_in_page`),url:q().nullish(),pattern:q().nullish()})]).nullish()}),j({type:R(`file_search_call`),id:q(),queries:T(q()),results:T(j({attributes:U(q(),K([q(),N(),H()])),file_id:q(),filename:q(),score:N(),text:q()})).nullish()}),j({type:R(`local_shell_call`),id:q(),call_id:q(),action:j({type:R(`exec`),command:T(q()),timeout_ms:N().optional(),user:q().optional(),working_directory:q().optional(),env:U(q(),q()).optional()})}),un,j({type:R(`mcp_call`),id:q(),status:q(),arguments:q(),name:q(),server_label:q(),output:q().nullish(),error:K([q(),j({type:q().optional(),code:K([N(),q()]).optional(),message:q().optional()}).loose()]).nullish(),approval_request_id:q().nullish()}),j({type:R(`mcp_list_tools`),id:q(),server_label:q(),tools:T(j({name:q(),description:q().optional(),input_schema:V(),annotations:U(q(),_()).optional()})),error:K([q(),j({type:q().optional(),code:K([N(),q()]).optional(),message:q().optional()}).loose()]).optional()}),j({type:R(`mcp_approval_request`),id:q(),server_label:q(),name:q(),arguments:q(),approval_request_id:q().optional()}),j({type:R(`apply_patch_call`),id:q(),call_id:q(),status:C([`in_progress`,`completed`]),operation:D(`type`,[j({type:R(`create_file`),path:q(),diff:q()}),j({type:R(`delete_file`),path:q()}),j({type:R(`update_file`),path:q(),diff:q()})])}),j({type:R(`shell_call`),id:q(),call_id:q(),status:C([`in_progress`,`completed`,`incomplete`]),action:j({commands:T(q())})}),j({type:R(`compaction`),id:q(),encrypted_content:q()}),j({type:R(`shell_call_output`),id:q(),call_id:q(),status:C([`in_progress`,`completed`,`incomplete`]),output:T(j({stdout:q(),stderr:q(),outcome:D(`type`,[j({type:R(`timeout`)}),j({type:R(`exit`),exit_code:N()})])}))}),j({type:R(`tool_search_call`),id:q(),execution:C([`server`,`client`]),call_id:q().nullable(),status:C([`in_progress`,`completed`,`incomplete`]),arguments:_()}),j({type:R(`tool_search_output`),id:q(),execution:C([`server`,`client`]),call_id:q().nullable(),status:C([`in_progress`,`completed`,`incomplete`]),tools:T(U(q(),sn.optional()))})])}),j({type:R(`response.function_call_arguments.delta`),item_id:q(),output_index:N(),delta:q()}),j({type:R(`response.custom_tool_call_input.delta`),item_id:q(),output_index:N(),delta:q()}),j({type:R(`response.image_generation_call.partial_image`),item_id:q(),output_index:N(),partial_image_b64:q()}),j({type:R(`response.code_interpreter_call_code.delta`),item_id:q(),output_index:N(),delta:q()}),j({type:R(`response.code_interpreter_call_code.done`),item_id:q(),output_index:N(),code:q()}),j({type:R(`response.output_text.annotation.added`),annotation:D(`type`,[j({type:R(`url_citation`),start_index:N(),end_index:N(),url:q(),title:q()}),j({type:R(`file_citation`),file_id:q(),filename:q(),index:N()}),j({type:R(`container_file_citation`),container_id:q(),file_id:q(),filename:q(),start_index:N(),end_index:N()}),j({type:R(`file_path`),file_id:q(),index:N()})])}),j({type:R(`response.reasoning_summary_part.added`),item_id:q(),summary_index:N()}),j({type:R(`response.reasoning_summary_text.delta`),item_id:q(),summary_index:N(),delta:q()}),j({type:R(`response.reasoning_summary_part.done`),item_id:q(),summary_index:N()}),j({type:R(`response.apply_patch_call_operation_diff.delta`),item_id:q(),output_index:N(),delta:q(),obfuscation:q().nullish()}),j({type:R(`response.apply_patch_call_operation_diff.done`),item_id:q(),output_index:N(),diff:q()}),dn,fn,j({type:q()}).loose().transform(e=>({type:`unknown_chunk`,message:e.type}))]))),mn=P(()=>I(j({id:q().optional(),created_at:N().optional(),error:j({message:q(),type:q(),param:q().nullish(),code:q()}).nullish(),model:q().optional(),output:T(D(`type`,[j({type:R(`message`),role:R(`assistant`),id:q(),phase:C([`commentary`,`final_answer`]).nullish(),content:T(j({type:R(`output_text`),text:q(),logprobs:T(j({token:q(),logprob:N(),top_logprobs:T(j({token:q(),logprob:N()}))})).nullish(),annotations:T(D(`type`,[j({type:R(`url_citation`),start_index:N(),end_index:N(),url:q(),title:q()}),j({type:R(`file_citation`),file_id:q(),filename:q(),index:N()}),j({type:R(`container_file_citation`),container_id:q(),file_id:q(),filename:q(),start_index:N(),end_index:N()}),j({type:R(`file_path`),file_id:q(),index:N()})]))}))}),j({type:R(`web_search_call`),id:q(),status:q(),action:D(`type`,[j({type:R(`search`),query:q().nullish(),queries:T(q()).nullish(),sources:T(D(`type`,[j({type:R(`url`),url:q()}),j({type:R(`api`),name:q()})])).nullish()}),j({type:R(`open_page`),url:q().nullish()}),j({type:R(`find_in_page`),url:q().nullish(),pattern:q().nullish()})]).nullish()}),j({type:R(`file_search_call`),id:q(),queries:T(q()),results:T(j({attributes:U(q(),K([q(),N(),H()])),file_id:q(),filename:q(),score:N(),text:q()})).nullish()}),j({type:R(`code_interpreter_call`),id:q(),code:q().nullable(),container_id:q(),outputs:T(D(`type`,[j({type:R(`logs`),logs:q()}),j({type:R(`image`),url:q()})])).nullable()}),j({type:R(`image_generation_call`),id:q(),result:q()}),j({type:R(`local_shell_call`),id:q(),call_id:q(),action:j({type:R(`exec`),command:T(q()),timeout_ms:N().optional(),user:q().optional(),working_directory:q().optional(),env:U(q(),q()).optional()})}),j({type:R(`function_call`),call_id:q(),name:q(),arguments:q(),id:q(),namespace:q().nullish()}),j({type:R(`custom_tool_call`),call_id:q(),name:q(),input:q(),id:q()}),un,j({type:R(`reasoning`),id:q(),encrypted_content:q().nullish(),summary:T(j({type:R(`summary_text`),text:q()}))}),j({type:R(`mcp_call`),id:q(),status:q(),arguments:q(),name:q(),server_label:q(),output:q().nullish(),error:K([q(),j({type:q().optional(),code:K([N(),q()]).optional(),message:q().optional()}).loose()]).nullish(),approval_request_id:q().nullish()}),j({type:R(`mcp_list_tools`),id:q(),server_label:q(),tools:T(j({name:q(),description:q().optional(),input_schema:V(),annotations:U(q(),_()).optional()})),error:K([q(),j({type:q().optional(),code:K([N(),q()]).optional(),message:q().optional()}).loose()]).optional()}),j({type:R(`mcp_approval_request`),id:q(),server_label:q(),name:q(),arguments:q(),approval_request_id:q().optional()}),j({type:R(`apply_patch_call`),id:q(),call_id:q(),status:C([`in_progress`,`completed`]),operation:D(`type`,[j({type:R(`create_file`),path:q(),diff:q()}),j({type:R(`delete_file`),path:q()}),j({type:R(`update_file`),path:q(),diff:q()})])}),j({type:R(`shell_call`),id:q(),call_id:q(),status:C([`in_progress`,`completed`,`incomplete`]),action:j({commands:T(q())})}),j({type:R(`compaction`),id:q(),encrypted_content:q()}),j({type:R(`shell_call_output`),id:q(),call_id:q(),status:C([`in_progress`,`completed`,`incomplete`]),output:T(j({stdout:q(),stderr:q(),outcome:D(`type`,[j({type:R(`timeout`)}),j({type:R(`exit`),exit_code:N()})])}))}),j({type:R(`tool_search_call`),id:q(),execution:C([`server`,`client`]),call_id:q().nullable(),status:C([`in_progress`,`completed`,`incomplete`]),arguments:_()}),j({type:R(`tool_search_output`),id:q(),execution:C([`server`,`client`]),call_id:q().nullable(),status:C([`in_progress`,`completed`,`incomplete`]),tools:T(U(q(),sn.optional()))})])).optional(),service_tier:q().nullish(),reasoning:j({context:q().nullish()}).nullish(),incomplete_details:j({reason:q()}).nullish(),usage:j({input_tokens:N(),input_tokens_details:j({cached_tokens:N().nullish(),cache_write_tokens:N().nullish(),orchestration_input_tokens:N().nullish(),orchestration_input_cached_tokens:N().nullish()}).nullish(),output_tokens:N(),output_tokens_details:j({reasoning_tokens:N().nullish(),orchestration_output_tokens:N().nullish()}).nullish()}).optional()}))),hn=20,gn=P(()=>I(j({conversation:q().nullish(),include:T(C([`reasoning.encrypted_content`,`file_search_call.results`,`web_search_call.results`,`message.output_text.logprobs`])).nullish(),instructions:q().nullish(),logprobs:K([H(),N().min(1).max(hn)]).optional(),maxToolCalls:N().nullish(),metadata:V().nullish(),parallelToolCalls:H().nullish(),previousResponseId:q().nullish(),promptCacheKey:q().nullish(),promptCacheOptions:j({mode:C([`implicit`,`explicit`]).optional(),ttl:R(`30m`).optional()}).optional(),promptCacheRetention:C([`in_memory`,`24h`]).nullish(),reasoningEffort:q().nullish(),reasoningMode:C([`standard`,`pro`]).optional(),reasoningContext:C([`auto`,`current_turn`,`all_turns`]).optional(),reasoningSummary:q().nullish(),safetyIdentifier:q().nullish(),serviceTier:C([`auto`,`flex`,`priority`,`default`]).nullish(),store:H().nullish(),passThroughUnsupportedFiles:H().optional(),strictJsonSchema:H().nullish(),textVerbosity:C([`low`,`medium`,`high`]).nullish(),truncation:C([`auto`,`disabled`]).nullish(),user:q().nullish(),systemMessageMode:C([`system`,`developer`,`remove`]).optional(),forceReasoning:H().optional(),contextManagement:T(j({type:R(`compaction`),compactThreshold:N()})).nullish(),allowedTools:j({toolNames:T(q()).min(1),mode:C([`auto`,`required`]).optional()}).optional()})));async function _n({tools:e,toolChoice:t,allowedTools:n,toolNameMapping:r,customProviderToolNames:i}){e=e?.length?e:void 0;let a=[];if(e==null)return{tools:void 0,toolChoice:void 0,toolWarnings:a};let o=[],s=new Map,c=i??new Set;for(let t of e)switch(t.type){case`function`:{let e=t.providerOptions?.openai,n=vn({tool:t,options:e}),r=e?.namespace;if(r==null)o.push(n);else{let e=s.get(r.name);if(e==null)e={type:`namespace`,name:r.name,description:r.description,tools:[]},s.set(r.name,e),o.push(e);else if(e.description!==r.description)throw new F({functionality:`conflicting descriptions for OpenAI tool namespace "${r.name}"`});e.tools.push(n)}break}case`provider`:switch(t.id){case`openai.file_search`:{let e=await h({value:t.args,schema:St});o.push({type:`file_search`,vector_store_ids:e.vectorStoreIds,max_num_results:e.maxNumResults,ranking_options:e.ranking?{ranker:e.ranking.ranker,score_threshold:e.ranking.scoreThreshold}:void 0,filters:e.filters});break}case`openai.local_shell`:o.push({type:`local_shell`});break;case`openai.shell`:{let e=await h({value:t.args,schema:Pt});o.push({type:`shell`,...e.environment&&{environment:yn(e.environment)}});break}case`openai.apply_patch`:o.push({type:`apply_patch`});break;case`openai.computer`:o.push({type:`computer`});break;case`openai.web_search_preview`:{let e=await h({value:t.args,schema:Wt});o.push({type:`web_search_preview`,search_context_size:e.searchContextSize,user_location:e.userLocation});break}case`openai.web_search`:{let e=await h({value:t.args,schema:Vt});o.push({type:`web_search`,filters:e.filters==null?void 0:{allowed_domains:e.filters.allowedDomains},external_web_access:e.externalWebAccess,search_context_size:e.searchContextSize,user_location:e.userLocation});break}case`openai.code_interpreter`:{let e=await h({value:t.args,schema:ct});o.push({type:`code_interpreter`,container:e.container==null?{type:`auto`,file_ids:void 0}:typeof e.container==`string`?e.container:{type:`auto`,file_ids:e.container.fileIds}});break}case`openai.image_generation`:{let e=await h({value:t.args,schema:Tt});o.push({type:`image_generation`,background:e.background,input_fidelity:e.inputFidelity,input_image_mask:e.inputImageMask?{file_id:e.inputImageMask.fileId,image_url:e.inputImageMask.imageUrl}:void 0,model:e.model,moderation:e.moderation,partial_images:e.partialImages,quality:e.quality,output_compression:e.outputCompression,output_format:e.outputFormat,size:e.size});break}case`openai.mcp`:{let e=await h({value:t.args,schema:qt}),n=e=>({tool_names:e.toolNames}),r=e.requireApproval,i=r==null?void 0:typeof r==`string`?r:r.never==null?void 0:{never:n(r.never)};o.push({type:`mcp`,server_label:e.serverLabel,allowed_tools:Array.isArray(e.allowedTools)?e.allowedTools:e.allowedTools?{read_only:e.allowedTools.readOnly,tool_names:e.allowedTools.toolNames}:void 0,authorization:e.authorization,connector_id:e.connectorId,headers:e.headers,require_approval:i??`never`,server_description:e.serverDescription,server_url:e.serverUrl});break}case`openai.custom`:{let e=await h({value:t.args,schema:_t});o.push({type:`custom`,name:t.name,description:e.description,format:e.format}),c.add(t.name);break}case`openai.tool_search`:{let e=await h({value:t.args,schema:It});o.push({type:`tool_search`,...e.execution==null?{}:{execution:e.execution},...e.description==null?{}:{description:e.description},...e.parameters==null?{}:{parameters:e.parameters}});break}}break;default:a.push({type:`unsupported`,feature:`function tool ${t}`});break}if(n!=null)return{tools:o,toolChoice:{type:`allowed_tools`,mode:n.mode??`auto`,tools:n.toolNames.map(e=>({type:`function`,name:r?.toProviderToolName(e)??e}))},toolWarnings:a};if(t==null)return{tools:o,toolChoice:void 0,toolWarnings:a};let l=t.type;switch(l){case`auto`:case`none`:case`required`:return{tools:o,toolChoice:l,toolWarnings:a};case`tool`:{let e=r?.toProviderToolName(t.toolName)??t.toolName;return{tools:o,toolChoice:e===`code_interpreter`||e===`file_search`||e===`image_generation`||e===`web_search_preview`||e===`web_search`||e===`mcp`||e===`apply_patch`||e===`computer`?{type:e}:c.has(e)?{type:`custom`,name:e}:{type:`function`,name:e},toolWarnings:a}}default:throw new F({functionality:`tool choice type: ${l}`})}}function vn({tool:e,options:t}){let n=t?.deferLoading;return{type:`function`,name:e.name,description:e.description,parameters:e.inputSchema,...e.strict==null?{}:{strict:e.strict},...n==null?{}:{defer_loading:n}}}function yn(e){if(e.type===`containerReference`)return{type:`container_reference`,container_id:e.containerId};if(e.type===`containerAuto`){let t=e;return{type:`container_auto`,file_ids:t.fileIds,memory_limit:t.memoryLimit,network_policy:t.networkPolicy==null?void 0:t.networkPolicy.type===`disabled`?{type:`disabled`}:{type:`allowlist`,allowed_domains:t.networkPolicy.allowedDomains,domain_secrets:t.networkPolicy.domainSecrets},skills:bn(t.skills)}}return{type:`local`,skills:e.skills}}function bn(e){return e?.map(e=>e.type===`skillReference`?{type:`skill_reference`,skill_id:v({reference:e.providerReference??{},provider:`openai`}),version:e.version??`latest`}:{type:`inline`,name:e.name,description:e.description,source:{type:`base64`,media_type:e.source.mediaType,data:e.source.data}})}function xn(e){let t={};for(let n of e)if(n.role===`assistant`)for(let e of n.content){if(e.type!==`tool-call`)continue;let n=e.providerOptions?.openai?.approvalRequestId;n!=null&&(t[n]=e.toolCallId)}return t}function Sn(e){switch(e.type){case`click`:return{type:`click`,button:e.button,x:e.x,y:e.y,...e.keys!=null&&{keys:e.keys}};case`double_click`:return{type:`double_click`,x:e.x,y:e.y,...e.keys!=null&&{keys:e.keys}};case`drag`:return{type:`drag`,path:e.path,...e.keys!=null&&{keys:e.keys}};case`keypress`:return e;case`move`:return{type:`move`,x:e.x,y:e.y,...e.keys!=null&&{keys:e.keys}};case`screenshot`:return e;case`scroll`:return{type:`scroll`,x:e.x,y:e.y,scrollX:e.scroll_x,scrollY:e.scroll_y,...e.keys!=null&&{keys:e.keys}};case`type`:return e;case`wait`:return e}}function Cn({action:e,actions:t,pending_safety_checks:n,status:r}){return{actions:(t??(e==null?[]:[e])).map(Sn),pendingSafetyChecks:n?.map(e=>({id:e.id,...e.code!=null&&{code:e.code},...e.message!=null&&{message:e.message}}))??[],status:r}}var wn=class e{constructor(e,t){this.specificationVersion=`v4`,this.supportedUrls={"image/*":[/^https?:\/\/.*$/],"application/pdf":[/^https?:\/\/.*$/]},this.modelId=e,this.config=t}static[J](e){return l({modelId:e.modelId,config:e.config})}static[Y](t){return new e(t.modelId,t.config)}get provider(){return this.config.provider}async getArgs({maxOutputTokens:e,temperature:t,stopSequences:n,topP:r,topK:a,presencePenalty:o,frequencyPenalty:s,seed:c,prompt:l,reasoning:u,providerOptions:d,tools:f,toolChoice:p,responseFormat:m}){let h=[],_=pe(this.modelId);a!=null&&h.push({type:`unsupported`,feature:`topK`}),c!=null&&h.push({type:`unsupported`,feature:`seed`}),o!=null&&h.push({type:`unsupported`,feature:`presencePenalty`}),s!=null&&h.push({type:`unsupported`,feature:`frequencyPenalty`}),n!=null&&h.push({type:`unsupported`,feature:`stopSequences`});let v=this.config.provider.includes(`azure`)?`azure`:`openai`,y=await g({provider:v,providerOptions:d,schema:gn});y==null&&v!==`openai`&&(y=await g({provider:`openai`,providerOptions:d,schema:gn}));let b=y?.reasoningEffort??(i(u)?u:void 0),S=y?.reasoningSummary===void 0?b!=null&&b!==`none`?`detailed`:void 0:y.reasoningSummary,C=y?.forceReasoning??_.isReasoningModel;y?.conversation&&y?.previousResponseId&&h.push({type:`unsupported`,feature:`conversation`,details:`conversation and previousResponseId cannot be used together`});let w=x({tools:f,providerToolNames:{"openai.code_interpreter":`code_interpreter`,"openai.computer":`computer`,"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`}}),T=new Set,{tools:E,toolChoice:D,toolWarnings:O}=await _n({tools:f,toolChoice:p,allowedTools:y?.allowedTools??void 0,toolNameMapping:w,customProviderToolNames:T}),{input:ee,warnings:k}=await rn({prompt:l,toolNameMapping:w,systemMessageMode:y?.systemMessageMode??(C?`developer`:_.systemMessageMode),providerOptionsName:v,fileIdPrefixes:this.config.fileIdPrefixes,passThroughUnsupportedFiles:y?.passThroughUnsupportedFiles??!1,store:y?.store??!0,hasConversation:y?.conversation!=null,hasPreviousResponseId:y?.previousResponseId!=null,hasLocalShellTool:N(`openai.local_shell`),hasShellTool:N(`openai.shell`),hasApplyPatchTool:N(`openai.apply_patch`),hasComputerTool:N(`openai.computer`),customProviderToolNames:T.size>0?T:void 0});h.push(...k);let A=y?.strictJsonSchema??!0,j=y?.include;function M(e){j==null?j=[e]:j.includes(e)||(j=[...j,e])}function N(e){return f?.find(t=>t.type===`provider`&&t.id===e)!=null}let te=typeof y?.logprobs==`number`?y?.logprobs:y?.logprobs===!0?hn:void 0;te&&M(`message.output_text.logprobs`);let ne=f?.find(e=>e.type===`provider`&&(e.id===`openai.web_search`||e.id===`openai.web_search_preview`))?.name;ne&&M(`web_search_call.action.sources`),N(`openai.code_interpreter`)&&M(`code_interpreter_call.outputs`);let P=y?.store;P===!1&&C&&M(`reasoning.encrypted_content`);let F={model:this.modelId,input:ee,temperature:t,top_p:r,max_output_tokens:e,...(m?.type===`json`||y?.textVerbosity)&&{text:{...m?.type===`json`&&{format:m.schema==null?{type:`json_object`}:{type:`json_schema`,strict:A,name:m.name??`response`,description:m.description,schema:m.schema}},...y?.textVerbosity&&{verbosity:y.textVerbosity}}},conversation:y?.conversation,max_tool_calls:y?.maxToolCalls,metadata:y?.metadata,parallel_tool_calls:y?.parallelToolCalls,previous_response_id:y?.previousResponseId,store:P,user:y?.user,instructions:y?.instructions,service_tier:y?.serviceTier,include:j,prompt_cache_key:y?.promptCacheKey,prompt_cache_options:y?.promptCacheOptions,prompt_cache_retention:y?.promptCacheRetention,safety_identifier:y?.safetyIdentifier,top_logprobs:te,truncation:y?.truncation,...y?.contextManagement&&{context_management:y.contextManagement.map(e=>({type:e.type,compact_threshold:e.compactThreshold}))},...C&&(b!=null||S!=null||y?.reasoningMode!=null||y?.reasoningContext!=null)&&{reasoning:{...b!=null&&{effort:b},...S!=null&&{summary:S},...y?.reasoningMode!=null&&{mode:y.reasoningMode},...y?.reasoningContext!=null&&{context:y.reasoningContext}}}};C?b===`none`&&_.supportsNonReasoningParameters||(F.temperature!=null&&(F.temperature=void 0,h.push({type:`unsupported`,feature:`temperature`,details:`temperature is not supported for reasoning models`})),F.top_p!=null&&(F.top_p=void 0,h.push({type:`unsupported`,feature:`topP`,details:`topP is not supported for reasoning models`}))):(y?.reasoningEffort!=null&&h.push({type:`unsupported`,feature:`reasoningEffort`,details:`reasoningEffort is not supported for non-reasoning models`}),y?.reasoningSummary!=null&&h.push({type:`unsupported`,feature:`reasoningSummary`,details:`reasoningSummary is not supported for non-reasoning models`}),y?.reasoningMode!=null&&h.push({type:`unsupported`,feature:`reasoningMode`,details:`reasoningMode is not supported for non-reasoning models`}),y?.reasoningContext!=null&&h.push({type:`unsupported`,feature:`reasoningContext`,details:`reasoningContext is not supported for non-reasoning models`})),y?.serviceTier===`flex`&&!_.supportsFlexProcessing&&(h.push({type:`unsupported`,feature:`serviceTier`,details:`flex processing is only available for o3, o4-mini, and gpt-5 models`}),delete F.service_tier),y?.serviceTier===`priority`&&!_.supportsPriorityProcessing&&(h.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 F.service_tier);let re=f?.find(e=>e.type===`provider`&&e.id===`openai.shell`)?.args?.environment?.type,I=re===`containerAuto`||re===`containerReference`;return{webSearchToolName:ne,args:{...F,tools:E,tool_choice:D},warnings:[...h,...O],store:P,toolNameMapping:w,providerOptionsName:v,isShellProviderExecuted:I}}async doGenerate(e){var t,r,i,o,s,c;let{args:l,warnings:u,webSearchToolName:d,toolNameMapping:f,providerOptionsName:p,isShellProviderExecuted:m}=await this.getArgs(e),h=this.config.url({path:`/responses`,modelId:this.modelId}),g=xn(e.prompt),{responseHeaders:_,value:v,rawValue:y}=await n({url:h,headers:z((t=this.config).headers?.call(t),e.headers),body:l,failedResponseHandler:X,successfulResponseHandler:L(mn),abortSignal:e.abortSignal,fetch:this.config.fetch});if(v.error)throw new a({message:v.error.message,url:h,requestBodyValues:l,statusCode:400,responseHeaders:_,responseBody:y,isRetryable:!1});if(v.output==null){let e=v.incomplete_details?.reason;throw new a({message:e?`Responses API returned no output (${e})`:`Responses API returned no output`,url:h,requestBodyValues:l,statusCode:500,responseHeaders:_,responseBody:y,isRetryable:!1})}let b=[],x=[],S=!1,C=[];for(let t of v.output)switch(t.type){case`reasoning`:t.summary.length===0&&t.summary.push({type:`summary_text`,text:``});for(let e of t.summary)b.push({type:`reasoning`,text:e.text,providerMetadata:{[p]:{itemId:t.id,reasoningEncryptedContent:t.encrypted_content??null}}});break;case`image_generation_call`:b.push({type:`tool-call`,toolCallId:t.id,toolName:f.toCustomToolName(`image_generation`),input:`{}`,providerExecuted:!0}),b.push({type:`tool-result`,toolCallId:t.id,toolName:f.toCustomToolName(`image_generation`),result:{result:t.result}});break;case`tool_search_call`:{let e=t.call_id??t.id,n=t.execution===`server`;n&&C.push(e),b.push({type:`tool-call`,toolCallId:e,toolName:f.toCustomToolName(`tool_search`),input:JSON.stringify({arguments:t.arguments,call_id:t.call_id}),...n?{providerExecuted:!0}:{},providerMetadata:{[p]:{itemId:t.id}}});break}case`tool_search_output`:{let e=t.call_id??C.shift()??t.id;b.push({type:`tool-result`,toolCallId:e,toolName:f.toCustomToolName(`tool_search`),result:{tools:t.tools},providerMetadata:{[p]:{itemId:t.id}}});break}case`local_shell_call`:b.push({type:`tool-call`,toolCallId:t.call_id,toolName:f.toCustomToolName(`local_shell`),input:JSON.stringify({action:t.action}),providerMetadata:{[p]:{itemId:t.id}}});break;case`shell_call`:b.push({type:`tool-call`,toolCallId:t.call_id,toolName:f.toCustomToolName(`shell`),input:JSON.stringify({action:{commands:t.action.commands}}),...m&&{providerExecuted:!0},providerMetadata:{[p]:{itemId:t.id}}});break;case`shell_call_output`:b.push({type:`tool-result`,toolCallId:t.call_id,toolName:f.toCustomToolName(`shell`),result:{output:t.output.map(e=>({stdout:e.stdout,stderr:e.stderr,outcome:e.outcome.type===`exit`?{type:`exit`,exitCode:e.outcome.exit_code}:{type:`timeout`}}))}});break;case`message`:for(let n of t.content){e.providerOptions?.[p]?.logprobs&&n.logprobs&&x.push(n.logprobs);let a={itemId:t.id,...t.phase!=null&&{phase:t.phase},...n.annotations.length>0&&{annotations:n.annotations}};b.push({type:`text`,text:n.text,providerMetadata:{[p]:a}});for(let e of n.annotations)e.type===`url_citation`?b.push({type:`source`,sourceType:`url`,id:(r=this.config).generateId?.call(r)??G(),url:e.url,title:e.title}):e.type===`file_citation`?b.push({type:`source`,sourceType:`document`,id:(i=this.config).generateId?.call(i)??G(),mediaType:`text/plain`,title:e.filename,filename:e.filename,providerMetadata:{[p]:{type:e.type,fileId:e.file_id,index:e.index}}}):e.type===`container_file_citation`?b.push({type:`source`,sourceType:`document`,id:(o=this.config).generateId?.call(o)??G(),mediaType:`text/plain`,title:e.filename,filename:e.filename,providerMetadata:{[p]:{type:e.type,fileId:e.file_id,containerId:e.container_id}}}):e.type===`file_path`&&b.push({type:`source`,sourceType:`document`,id:(s=this.config).generateId?.call(s)??G(),mediaType:`application/octet-stream`,title:e.file_id,filename:e.file_id,providerMetadata:{[p]:{type:e.type,fileId:e.file_id,index:e.index}}})}break;case`function_call`:S=!0,b.push({type:`tool-call`,toolCallId:t.call_id,toolName:t.name,input:t.arguments,providerMetadata:{[p]:{itemId:t.id,...t.namespace!=null&&{namespace:t.namespace}}}});break;case`custom_tool_call`:{S=!0;let e=f.toCustomToolName(t.name);b.push({type:`tool-call`,toolCallId:t.call_id,toolName:e,input:JSON.stringify(t.input),providerMetadata:{[p]:{itemId:t.id}}});break}case`web_search_call`:b.push({type:`tool-call`,toolCallId:t.id,toolName:f.toCustomToolName(d??`web_search`),input:JSON.stringify({}),providerExecuted:!0}),b.push({type:`tool-result`,toolCallId:t.id,toolName:f.toCustomToolName(d??`web_search`),result:Wn(t.action)});break;case`mcp_call`:{let e=t.approval_request_id==null?t.id:g[t.approval_request_id]??t.id,n=`mcp.${t.name}`;b.push({type:`tool-call`,toolCallId:e,toolName:n,input:t.arguments,providerExecuted:!0,dynamic:!0}),b.push({type:`tool-result`,toolCallId:e,toolName:n,result:{type:`call`,serverLabel:t.server_label,name:t.name,arguments:t.arguments,...t.output==null?{}:{output:t.output},...t.error==null?{}:{error:t.error}},providerMetadata:{[p]:{itemId:t.id}}});break}case`mcp_list_tools`:break;case`mcp_approval_request`:{let e=t.approval_request_id??t.id,n=(c=this.config).generateId?.call(c)??G(),r=`mcp.${t.name}`;b.push({type:`tool-call`,toolCallId:n,toolName:r,input:t.arguments,providerExecuted:!0,dynamic:!0}),b.push({type:`tool-approval-request`,approvalId:e,toolCallId:n});break}case`computer_call`:{if(t.call_id==null){b.push({type:`tool-call`,toolCallId:t.id,toolName:f.toCustomToolName(`computer_use`),input:``,providerExecuted:!0}),b.push({type:`tool-result`,toolCallId:t.id,toolName:f.toCustomToolName(`computer_use`),result:{type:`computer_use_tool_result`,status:t.status}});break}S=!0;let e=f.toCustomToolName(`computer`);b.push({type:`tool-call`,toolCallId:t.call_id,toolName:e,input:JSON.stringify(Cn(t)),providerMetadata:{[p]:{itemId:t.id}}});break}case`file_search_call`:b.push({type:`tool-call`,toolCallId:t.id,toolName:f.toCustomToolName(`file_search`),input:`{}`,providerExecuted:!0}),b.push({type:`tool-result`,toolCallId:t.id,toolName:f.toCustomToolName(`file_search`),result:{queries:t.queries,results:t.results?.map(e=>({attributes:e.attributes,fileId:e.file_id,filename:e.filename,score:e.score,text:e.text}))??null}});break;case`code_interpreter_call`:b.push({type:`tool-call`,toolCallId:t.id,toolName:f.toCustomToolName(`code_interpreter`),input:JSON.stringify({code:t.code,containerId:t.container_id}),providerExecuted:!0}),b.push({type:`tool-result`,toolCallId:t.id,toolName:f.toCustomToolName(`code_interpreter`),result:{outputs:t.outputs}});break;case`apply_patch_call`:b.push({type:`tool-call`,toolCallId:t.call_id,toolName:f.toCustomToolName(`apply_patch`),input:JSON.stringify({callId:t.call_id,operation:t.operation}),providerMetadata:{[p]:{itemId:t.id}}});break;case`compaction`:b.push({type:`custom`,kind:`openai.compaction`,providerMetadata:{[p]:{type:`compaction`,itemId:t.id,encryptedContent:t.encrypted_content}}});break}let w={[p]:{responseId:v.id,...x.length>0?{logprobs:x}:{},...typeof v.service_tier==`string`?{serviceTier:v.service_tier}:{},...v.reasoning?.context==null?{}:{reasoningContext:v.reasoning.context}}},T=v.usage;return{content:b,finishReason:{unified:on({finishReason:v.incomplete_details?.reason,hasFunctionCall:S}),raw:v.incomplete_details?.reason??void 0},usage:en(T),request:{body:l},response:{id:v.id,timestamp:new Date(v.created_at*1e3),modelId:v.model,headers:_,body:y},providerMetadata:w,warnings:u}}async doStream(e){var t;let{args:r,warnings:i,webSearchToolName:a,toolNameMapping:o,store:s,providerOptionsName:c,isShellProviderExecuted:l}=await this.getArgs(e),u=this.config.url({path:`/responses`,modelId:this.modelId}),{responseHeaders:d,value:f}=await n({url:u,headers:z((t=this.config).headers?.call(t),e.headers),body:{...r,stream:!0},failedResponseHandler:X,successfulResponseHandler:E(pn),abortSignal:e.abortSignal,fetch:this.config.fetch}),p=await me({stream:f,getError:e=>Hn(e)||jn(e)&&e.response.error!=null?e:void 0,isOutputChunk:Un,url:u,requestBodyValues:r,responseHeaders:d}),m=this,h=xn(e.prompt),g=new Map,_={unified:`other`,raw:void 0},v,y=[],b=null,x={},S=[],C,w=!1,T={},D,O,ee=[],k=!1;return{stream:p.pipeThrough(new TransformStream({start(e){e.enqueue({type:`stream-start`,warnings:i})},transform(t,n){var i,f,p,E,A;if(e.includeRawChunks&&n.enqueue({type:`raw`,rawValue:t.rawValue}),!t.success){let e=En(t.rawValue)?Dn({value:t.rawValue,cause:t.error,url:u,requestBodyValues:r,responseHeaders:d}):t.error;_={unified:`error`,raw:void 0},n.enqueue({type:`error`,error:e});return}let j=t.value;if(Bn(j)){if(j.item.type===`function_call`)x[j.output_index]={toolName:j.item.name,toolCallId:j.item.call_id},n.enqueue({type:`tool-input-start`,id:j.item.call_id,toolName:j.item.name});else if(j.item.type===`custom_tool_call`){let e=o.toCustomToolName(j.item.name);x[j.output_index]={toolName:e,toolCallId:j.item.call_id},n.enqueue({type:`tool-input-start`,id:j.item.call_id,toolName:e})}else if(j.item.type===`web_search_call`)x[j.output_index]={toolName:o.toCustomToolName(a??`web_search`),toolCallId:j.item.id},n.enqueue({type:`tool-input-start`,id:j.item.id,toolName:o.toCustomToolName(a??`web_search`),providerExecuted:!0}),n.enqueue({type:`tool-input-end`,id:j.item.id}),n.enqueue({type:`tool-call`,toolCallId:j.item.id,toolName:o.toCustomToolName(a??`web_search`),input:JSON.stringify({}),providerExecuted:!0});else if(j.item.type===`computer_call`){let e=j.item.call_id??j.item.id;x[j.output_index]={toolName:o.toCustomToolName(`computer`),toolCallId:e},n.enqueue({type:`tool-input-start`,id:e,toolName:o.toCustomToolName(`computer`)})}else if(j.item.type===`code_interpreter_call`)x[j.output_index]={toolName:o.toCustomToolName(`code_interpreter`),toolCallId:j.item.id,codeInterpreter:{containerId:j.item.container_id}},n.enqueue({type:`tool-input-start`,id:j.item.id,toolName:o.toCustomToolName(`code_interpreter`),providerExecuted:!0}),n.enqueue({type:`tool-input-delta`,id:j.item.id,delta:`{"containerId":"${j.item.container_id}","code":"`});else if(j.item.type===`file_search_call`)n.enqueue({type:`tool-call`,toolCallId:j.item.id,toolName:o.toCustomToolName(`file_search`),input:`{}`,providerExecuted:!0});else if(j.item.type===`image_generation_call`)n.enqueue({type:`tool-call`,toolCallId:j.item.id,toolName:o.toCustomToolName(`image_generation`),input:`{}`,providerExecuted:!0});else if(j.item.type===`tool_search_call`){let e=j.item.id,t=o.toCustomToolName(`tool_search`),r=j.item.execution===`server`;x[j.output_index]={toolName:t,toolCallId:e,toolSearchExecution:j.item.execution??`server`},r&&n.enqueue({type:`tool-input-start`,id:e,toolName:t,providerExecuted:!0})}else if(j.item.type!==`tool_search_output`&&!(j.item.type===`mcp_call`||j.item.type===`mcp_list_tools`||j.item.type===`mcp_approval_request`))if(j.item.type===`apply_patch_call`){let{call_id:e,operation:t}=j.item;if(x[j.output_index]={toolName:o.toCustomToolName(`apply_patch`),toolCallId:e,applyPatch:{hasDiff:t.type===`delete_file`,endEmitted:t.type===`delete_file`}},n.enqueue({type:`tool-input-start`,id:e,toolName:o.toCustomToolName(`apply_patch`)}),t.type===`delete_file`){let r=JSON.stringify({callId:e,operation:t});n.enqueue({type:`tool-input-delta`,id:e,delta:r}),n.enqueue({type:`tool-input-end`,id:e})}else n.enqueue({type:`tool-input-delta`,id:e,delta:`{"callId":"${$(e)}","operation":{"type":"${$(t.type)}","path":"${$(t.path)}","diff":"`})}else j.item.type===`shell_call`?x[j.output_index]={toolName:o.toCustomToolName(`shell`),toolCallId:j.item.call_id}:j.item.type===`shell_call_output`||(j.item.type===`message`?(S.splice(0,S.length),C=j.item.phase??void 0,n.enqueue({type:`text-start`,id:j.item.id,providerMetadata:{[c]:{itemId:j.item.id,...j.item.phase!=null&&{phase:j.item.phase}}}})):Bn(j)&&j.item.type===`reasoning`&&(T[j.item.id]={encryptedContent:j.item.encrypted_content,summaryParts:{0:`active`}},n.enqueue({type:`reasoning-start`,id:`${j.item.id}:0`,providerMetadata:{[c]:{itemId:j.item.id,reasoningEncryptedContent:j.item.encrypted_content??null}}})))}else if(kn(j))if(j.item.type===`message`){let e=j.item.phase??C;C=void 0,n.enqueue({type:`text-end`,id:j.item.id,providerMetadata:{[c]:{itemId:j.item.id,...e!=null&&{phase:e},...S.length>0&&{annotations:S}}}})}else if(j.item.type===`function_call`)x[j.output_index]=void 0,w=!0,n.enqueue({type:`tool-input-end`,id:j.item.call_id,...j.item.namespace!=null&&{providerMetadata:{[c]:{namespace:j.item.namespace}}}}),n.enqueue({type:`tool-call`,toolCallId:j.item.call_id,toolName:j.item.name,input:j.item.arguments,providerMetadata:{[c]:{itemId:j.item.id,...j.item.namespace!=null&&{namespace:j.item.namespace}}}});else if(j.item.type===`custom_tool_call`){x[j.output_index]=void 0,w=!0;let e=o.toCustomToolName(j.item.name);n.enqueue({type:`tool-input-end`,id:j.item.call_id}),n.enqueue({type:`tool-call`,toolCallId:j.item.call_id,toolName:e,input:JSON.stringify(j.item.input),providerMetadata:{[c]:{itemId:j.item.id}}})}else if(j.item.type===`web_search_call`)x[j.output_index]=void 0,n.enqueue({type:`tool-result`,toolCallId:j.item.id,toolName:o.toCustomToolName(a??`web_search`),result:Wn(j.item.action)});else if(j.item.type===`computer_call`){if(x[j.output_index]=void 0,j.item.call_id==null){n.enqueue({type:`tool-input-end`,id:j.item.id}),n.enqueue({type:`tool-call`,toolCallId:j.item.id,toolName:o.toCustomToolName(`computer_use`),input:``,providerExecuted:!0}),n.enqueue({type:`tool-result`,toolCallId:j.item.id,toolName:o.toCustomToolName(`computer_use`),result:{type:`computer_use_tool_result`,status:j.item.status}});return}w=!0;let e=o.toCustomToolName(`computer`),t=JSON.stringify(Cn(j.item));n.enqueue({type:`tool-input-delta`,id:j.item.call_id,delta:t}),n.enqueue({type:`tool-input-end`,id:j.item.call_id}),n.enqueue({type:`tool-call`,toolCallId:j.item.call_id,toolName:e,input:t,providerMetadata:{[c]:{itemId:j.item.id}}})}else if(j.item.type===`file_search_call`)x[j.output_index]=void 0,n.enqueue({type:`tool-result`,toolCallId:j.item.id,toolName:o.toCustomToolName(`file_search`),result:{queries:j.item.queries,results:j.item.results?.map(e=>({attributes:e.attributes,fileId:e.file_id,filename:e.filename,score:e.score,text:e.text}))??null}});else if(j.item.type===`code_interpreter_call`)x[j.output_index]=void 0,n.enqueue({type:`tool-result`,toolCallId:j.item.id,toolName:o.toCustomToolName(`code_interpreter`),result:{outputs:j.item.outputs}});else if(j.item.type===`image_generation_call`)n.enqueue({type:`tool-result`,toolCallId:j.item.id,toolName:o.toCustomToolName(`image_generation`),result:{result:j.item.result}});else if(j.item.type===`tool_search_call`){let e=x[j.output_index],t=j.item.execution===`server`;if(e!=null){let r=t?e.toolCallId:j.item.call_id??j.item.id;t?ee.push(r):n.enqueue({type:`tool-input-start`,id:r,toolName:e.toolName}),n.enqueue({type:`tool-input-end`,id:r}),n.enqueue({type:`tool-call`,toolCallId:r,toolName:e.toolName,input:JSON.stringify({arguments:j.item.arguments,call_id:t?null:r}),...t?{providerExecuted:!0}:{},providerMetadata:{[c]:{itemId:j.item.id}}})}x[j.output_index]=void 0}else if(j.item.type===`tool_search_output`){let e=j.item.call_id??ee.shift()??j.item.id;n.enqueue({type:`tool-result`,toolCallId:e,toolName:o.toCustomToolName(`tool_search`),result:{tools:j.item.tools},providerMetadata:{[c]:{itemId:j.item.id}}})}else if(j.item.type===`mcp_call`){x[j.output_index]=void 0;let e=j.item.approval_request_id??void 0,t=e==null?j.item.id:g.get(e)??h[e]??j.item.id,r=`mcp.${j.item.name}`;n.enqueue({type:`tool-call`,toolCallId:t,toolName:r,input:j.item.arguments,providerExecuted:!0,dynamic:!0}),n.enqueue({type:`tool-result`,toolCallId:t,toolName:r,result:{type:`call`,serverLabel:j.item.server_label,name:j.item.name,arguments:j.item.arguments,...j.item.output==null?{}:{output:j.item.output},...j.item.error==null?{}:{error:j.item.error}},providerMetadata:{[c]:{itemId:j.item.id}}})}else if(j.item.type===`mcp_list_tools`)x[j.output_index]=void 0;else if(j.item.type===`apply_patch_call`){let e=x[j.output_index];e?.applyPatch&&!e.applyPatch.endEmitted&&j.item.operation.type!==`delete_file`&&(e.applyPatch.hasDiff||n.enqueue({type:`tool-input-delta`,id:e.toolCallId,delta:$(j.item.operation.diff)}),n.enqueue({type:`tool-input-delta`,id:e.toolCallId,delta:`"}}`}),n.enqueue({type:`tool-input-end`,id:e.toolCallId}),e.applyPatch.endEmitted=!0),e&&j.item.status===`completed`&&n.enqueue({type:`tool-call`,toolCallId:e.toolCallId,toolName:o.toCustomToolName(`apply_patch`),input:JSON.stringify({callId:j.item.call_id,operation:j.item.operation}),providerMetadata:{[c]:{itemId:j.item.id}}}),x[j.output_index]=void 0}else if(j.item.type===`mcp_approval_request`){x[j.output_index]=void 0;let e=(i=m.config).generateId?.call(i)??G(),t=j.item.approval_request_id??j.item.id;g.set(t,e);let r=`mcp.${j.item.name}`;n.enqueue({type:`tool-call`,toolCallId:e,toolName:r,input:j.item.arguments,providerExecuted:!0,dynamic:!0}),n.enqueue({type:`tool-approval-request`,approvalId:t,toolCallId:e})}else if(j.item.type===`local_shell_call`)x[j.output_index]=void 0,n.enqueue({type:`tool-call`,toolCallId:j.item.call_id,toolName:o.toCustomToolName(`local_shell`),input:JSON.stringify({action:{type:`exec`,command:j.item.action.command,timeoutMs:j.item.action.timeout_ms,user:j.item.action.user,workingDirectory:j.item.action.working_directory,env:j.item.action.env}}),providerMetadata:{[c]:{itemId:j.item.id}}});else if(j.item.type===`shell_call`)x[j.output_index]=void 0,n.enqueue({type:`tool-call`,toolCallId:j.item.call_id,toolName:o.toCustomToolName(`shell`),input:JSON.stringify({action:{commands:j.item.action.commands}}),...l&&{providerExecuted:!0},providerMetadata:{[c]:{itemId:j.item.id}}});else if(j.item.type===`shell_call_output`)n.enqueue({type:`tool-result`,toolCallId:j.item.call_id,toolName:o.toCustomToolName(`shell`),result:{output:j.item.output.map(e=>({stdout:e.stdout,stderr:e.stderr,outcome:e.outcome.type===`exit`?{type:`exit`,exitCode:e.outcome.exit_code}:{type:`timeout`}}))}});else if(j.item.type===`reasoning`){let e=T[j.item.id],t=Object.entries(e.summaryParts).filter(([e,t])=>t===`active`||t===`can-conclude`).map(([e])=>e);for(let e of t)n.enqueue({type:`reasoning-end`,id:`${j.item.id}:${e}`,providerMetadata:{[c]:{itemId:j.item.id,reasoningEncryptedContent:j.item.encrypted_content??null}}});delete T[j.item.id]}else j.item.type===`compaction`&&n.enqueue({type:`custom`,kind:`openai.compaction`,providerMetadata:{[c]:{type:`compaction`,itemId:j.item.id,encryptedContent:j.item.encrypted_content}}});else if(Nn(j)){let e=x[j.output_index];e!=null&&n.enqueue({type:`tool-input-delta`,id:e.toolCallId,delta:j.delta})}else if(Pn(j)){let e=x[j.output_index];e!=null&&n.enqueue({type:`tool-input-delta`,id:e.toolCallId,delta:j.delta})}else if(Rn(j)){let e=x[j.output_index];e?.applyPatch&&(n.enqueue({type:`tool-input-delta`,id:e.toolCallId,delta:$(j.delta)}),e.applyPatch.hasDiff=!0)}else if(zn(j)){let e=x[j.output_index];e?.applyPatch&&!e.applyPatch.endEmitted&&(e.applyPatch.hasDiff||(n.enqueue({type:`tool-input-delta`,id:e.toolCallId,delta:$(j.diff)}),e.applyPatch.hasDiff=!0),n.enqueue({type:`tool-input-delta`,id:e.toolCallId,delta:`"}}`}),n.enqueue({type:`tool-input-end`,id:e.toolCallId}),e.applyPatch.endEmitted=!0)}else if(Fn(j))n.enqueue({type:`tool-result`,toolCallId:j.item_id,toolName:o.toCustomToolName(`image_generation`),result:{result:j.partial_image_b64},preliminary:!0});else if(In(j)){let e=x[j.output_index];e!=null&&n.enqueue({type:`tool-input-delta`,id:e.toolCallId,delta:$(j.delta)})}else if(Ln(j)){let e=x[j.output_index];e!=null&&(n.enqueue({type:`tool-input-delta`,id:e.toolCallId,delta:`"}`}),n.enqueue({type:`tool-input-end`,id:e.toolCallId}),n.enqueue({type:`tool-call`,toolCallId:e.toolCallId,toolName:o.toCustomToolName(`code_interpreter`),input:JSON.stringify({code:j.code,containerId:e.codeInterpreter.containerId}),providerExecuted:!0}))}else if(Mn(j))b=j.response.id,n.enqueue({type:`response-metadata`,id:j.response.id,timestamp:new Date(j.response.created_at*1e3),modelId:j.response.model});else if(Tn(j))n.enqueue({type:`text-delta`,id:j.item_id,delta:j.delta}),e.providerOptions?.[c]?.logprobs&&j.logprobs&&y.push(j.logprobs);else if(j.type===`response.reasoning_summary_part.added`){if(j.summary_index>0){let e=T[j.item_id];e.summaryParts[j.summary_index]=`active`;for(let t of Object.keys(e.summaryParts))e.summaryParts[t]===`can-conclude`&&(n.enqueue({type:`reasoning-end`,id:`${j.item_id}:${t}`,providerMetadata:{[c]:{itemId:j.item_id}}}),e.summaryParts[t]=`concluded`);n.enqueue({type:`reasoning-start`,id:`${j.item_id}:${j.summary_index}`,providerMetadata:{[c]:{itemId:j.item_id,reasoningEncryptedContent:T[j.item_id]?.encryptedContent??null}}})}}else if(j.type===`response.reasoning_summary_text.delta`)n.enqueue({type:`reasoning-delta`,id:`${j.item_id}:${j.summary_index}`,delta:j.delta,providerMetadata:{[c]:{itemId:j.item_id}}});else if(j.type===`response.reasoning_summary_part.done`)s?(n.enqueue({type:`reasoning-end`,id:`${j.item_id}:${j.summary_index}`,providerMetadata:{[c]:{itemId:j.item_id}}}),T[j.item_id].summaryParts[j.summary_index]=`concluded`):T[j.item_id].summaryParts[j.summary_index]=`can-conclude`;else if(An(j))_={unified:on({finishReason:j.response.incomplete_details?.reason,hasFunctionCall:w}),raw:j.response.incomplete_details?.reason??void 0},v=j.response.usage,typeof j.response.service_tier==`string`&&(D=j.response.service_tier),j.response.reasoning?.context!=null&&(O=j.response.reasoning.context);else if(jn(j)){let e=j.response.incomplete_details?.reason;_={unified:e?on({finishReason:e,hasFunctionCall:w}):`error`,raw:e??`error`},v=j.response.usage??void 0,j.response.reasoning?.context!=null&&(O=j.response.reasoning.context),!k&&j.response.error!=null&&(k=!0,n.enqueue({type:`error`,error:{type:`response.failed`,sequence_number:j.sequence_number,response:{error:j.response.error,incomplete_details:j.response.incomplete_details,service_tier:j.response.service_tier}}}))}else Vn(j)?(S.push(j.annotation),j.annotation.type===`url_citation`?n.enqueue({type:`source`,sourceType:`url`,id:(f=m.config).generateId?.call(f)??G(),url:j.annotation.url,title:j.annotation.title}):j.annotation.type===`file_citation`?n.enqueue({type:`source`,sourceType:`document`,id:(p=m.config).generateId?.call(p)??G(),mediaType:`text/plain`,title:j.annotation.filename,filename:j.annotation.filename,providerMetadata:{[c]:{type:j.annotation.type,fileId:j.annotation.file_id,index:j.annotation.index}}}):j.annotation.type===`container_file_citation`?n.enqueue({type:`source`,sourceType:`document`,id:(E=m.config).generateId?.call(E)??G(),mediaType:`text/plain`,title:j.annotation.filename,filename:j.annotation.filename,providerMetadata:{[c]:{type:j.annotation.type,fileId:j.annotation.file_id,containerId:j.annotation.container_id}}}):j.annotation.type===`file_path`&&n.enqueue({type:`source`,sourceType:`document`,id:(A=m.config).generateId?.call(A)??G(),mediaType:`application/octet-stream`,title:j.annotation.file_id,filename:j.annotation.file_id,providerMetadata:{[c]:{type:j.annotation.type,fileId:j.annotation.file_id,index:j.annotation.index}}})):Hn(j)&&(k=!0,_={unified:`error`,raw:`error`},n.enqueue({type:`error`,error:j}))},flush(e){let t={[c]:{responseId:b,...y.length>0?{logprobs:y}:{},...D===void 0?{}:{serviceTier:D},...O===void 0?{}:{reasoningContext:O}}};e.enqueue({type:`finish`,finishReason:_,usage:en(v),providerMetadata:t})}})),request:{body:r},response:{headers:d}}}};function Tn(e){return e.type===`response.output_text.delta`}function En(e){let t=On(e);return t!=null&&Array.isArray(t.choices)&&typeof t.type!=`string`}function Dn({value:e,cause:t,url:n,requestBodyValues:r,responseHeaders:i}){return new a({message:`Received a Chat Completions stream while using the OpenAI Responses API. The default OpenAI provider model uses the Responses API. If your custom baseURL targets a Chat Completions-compatible endpoint, use openai.chat('model-id') or createOpenAI(...).chat('model-id') instead. You can also use @ai-sdk/openai-compatible for OpenAI-compatible providers.`,url:n,requestBodyValues:r,responseHeaders:i,responseBody:JSON.stringify(e),cause:t,data:e,isRetryable:!1})}function On(e){return typeof e==`object`&&e?e:void 0}function kn(e){return e.type===`response.output_item.done`}function An(e){return e.type===`response.completed`||e.type===`response.incomplete`}function jn(e){return e.type===`response.failed`}function Mn(e){return e.type===`response.created`}function Nn(e){return e.type===`response.function_call_arguments.delta`}function Pn(e){return e.type===`response.custom_tool_call_input.delta`}function Fn(e){return e.type===`response.image_generation_call.partial_image`}function In(e){return e.type===`response.code_interpreter_call_code.delta`}function Ln(e){return e.type===`response.code_interpreter_call_code.done`}function Rn(e){return e.type===`response.apply_patch_call_operation_diff.delta`}function zn(e){return e.type===`response.apply_patch_call_operation_diff.done`}function Bn(e){return e.type===`response.output_item.added`}function Vn(e){return e.type===`response.output_text.annotation.added`}function Hn(e){return e.type===`error`}function Un(e){return!(e.type===`response.created`||e.type===`response.failed`||e.type===`error`||e.type===`unknown_chunk`)}function Wn(e){if(e==null)return{};switch(e.type){case`search`:return{action:{type:`search`,query:e.query??void 0,...e.queries!=null&&{queries:e.queries}},...e.sources!=null&&{sources:e.sources}};case`open_page`:return{action:{type:`openPage`,url:e.url}};case`find_in_page`:return{action:{type:`findInPage`,url:e.url,pattern:e.pattern}}}}function $(e){return JSON.stringify(e).slice(1,-1)}var Gn=P(()=>I(j({instructions:q().nullish(),speed:N().min(.25).max(4).default(1).nullish()}))),Kn=class e{constructor(e,t){this.modelId=e,this.config=t,this.specificationVersion=`v4`}static[J](e){return l({modelId:e.modelId,config:e.config})}static[Y](t){return new e(t.modelId,t.config)}get provider(){return this.config.provider}async getArgs({text:e,voice:t=`alloy`,outputFormat:n=`mp3`,speed:r,instructions:i,language:a,providerOptions:o}){let s=[],c=await g({provider:`openai`,providerOptions:o,schema:Gn}),l={model:this.modelId,input:e,voice:t,response_format:`mp3`,speed:r,instructions:i};if(n&&([`mp3`,`opus`,`aac`,`flac`,`wav`,`pcm`].includes(n)?l.response_format=n:s.push({type:`unsupported`,feature:`outputFormat`,details:`Unsupported output format: ${n}. Using mp3 instead.`})),c){let e={};for(let t in e){let n=e[t];n!==void 0&&(l[t]=n)}}return a&&s.push({type:`unsupported`,feature:`language`,details:`OpenAI speech models do not support language selection. Language parameter "${a}" was ignored.`}),{requestBody:l,warnings:s}}async doGenerate(e){var t,r;let i=((t=this.config._internal)?.currentDate)?.call(t)??new Date,{requestBody:a,warnings:o}=await this.getArgs(e),{value:s,responseHeaders:c,rawValue:l}=await n({url:this.config.url({path:`/audio/speech`,modelId:this.modelId}),headers:z((r=this.config).headers?.call(r),e.headers),body:a,failedResponseHandler:X,successfulResponseHandler:ce(),abortSignal:e.abortSignal,fetch:this.config.fetch});return{audio:s,warnings:o,request:{body:JSON.stringify(a)},response:{timestamp:i,modelId:this.modelId,headers:c,body:l}}}},qn=P(()=>I(j({text:q(),language:q().nullish(),duration:N().nullish(),words:T(j({word:q(),start:N(),end:N()})).nullish(),segments:T(j({id:N(),seek:N(),start:N(),end:N(),text:q(),tokens:T(N()),temperature:N(),avg_logprob:N(),compression_ratio:N(),no_speech_prob:N()})).nullish()}))),Jn=P(()=>I(j({include:T(q()).optional(),language:q().optional(),prompt:q().optional(),temperature:N().min(0).max(1).default(0).optional(),timestampGranularities:T(C([`word`,`segment`])).default([`segment`]).optional(),streaming:j({delay:C([`minimal`,`low`,`medium`,`high`,`xhigh`]).optional(),include:T(q()).optional()}).optional()})));function Yn(e){return e===`gpt-realtime-whisper`||e.startsWith(`gpt-realtime-whisper-`)}var Xn={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`},Zn=class e{constructor(e,t){this.modelId=e,this.config=t,this.specificationVersion=`v4`}static[J](e){return l({modelId:e.modelId,config:e.config})}static[Y](t){return new e(t.modelId,t.config)}get provider(){return this.config.provider}async getArgs({audio:e,mediaType:t,providerOptions:n}){let r=[],i=await g({provider:`openai`,providerOptions:n,schema:Jn}),a=new FormData,o=e instanceof Uint8Array?new Blob([e]):new Blob([S(e)]);a.append(`model`,this.modelId);let s=c(t);if(a.append(`file`,new File([o],`audio`,{type:t}),`audio.${s}`),this.modelId===`whisper-1`&&a.append(`response_format`,`verbose_json`),i){let e=[`gpt-4o-transcribe`,`gpt-4o-mini-transcribe`].includes(this.modelId),t={include:i.include,language:i.language,prompt:i.prompt,...this.modelId!==`whisper-1`&&{response_format:e?`json`:`verbose_json`},temperature:i.temperature,timestamp_granularities:i.timestampGranularities};for(let[e,n]of Object.entries(t))if(n!=null)if(Array.isArray(n))for(let t of n)a.append(`${e}[]`,String(t));else a.append(e,String(n))}return{formData:a,warnings:r}}async doGenerate(e){var t,n;if(Yn(this.modelId))throw new F({functionality:`non-streaming transcription with ${this.modelId}`});let r=((t=this.config._internal)?.currentDate)?.call(t)??new Date,{formData:i,warnings:a}=await this.getArgs(e),{value:o,responseHeaders:s,rawValue:c}=await ue({url:this.config.url({path:`/audio/transcriptions`,modelId:this.modelId}),headers:z((n=this.config).headers?.call(n),e.headers),formData:i,failedResponseHandler:X,successfulResponseHandler:L(qn),abortSignal:e.abortSignal,fetch:this.config.fetch}),l=o.language!=null&&o.language in Xn?Xn[o.language]:void 0;return{text:o.text,segments:o.segments?.map(e=>({text:e.text,startSecond:e.start,endSecond:e.end}))??o.words?.map(e=>({text:e.word,startSecond:e.start,endSecond:e.end}))??[],language:l,durationInSeconds:o.duration??void 0,warnings:a,response:{timestamp:r,modelId:this.modelId,headers:s,body:c}}}async doStream(e){var t,n;if(!Yn(this.modelId))throw new F({functionality:`streaming transcription with ${this.modelId}`});let r=((t=this.config._internal)?.currentDate)?.call(t)??new Date,i=await g({provider:`openai`,providerOptions:e.providerOptions,schema:Jn}),a=[],o=e.providerOptions?.openai??{};for(let e of[`include`,`prompt`,`temperature`,`timestampGranularities`])o[e]!=null&&a.push({type:`unsupported`,feature:`providerOptions.openai.${e}`,details:`OpenAI streaming transcription does not support ${e}.`});let s=z((n=this.config).headers?.call(n),e.headers),c=$n({modelId:this.modelId,inputAudioFormat:e.inputAudioFormat,providerOptions:i});return{request:{body:c},response:{timestamp:r,modelId:this.modelId},stream:Qn({webSocket:this.config.webSocket,url:y(this.config.url({path:`/realtime?intent=transcription`,modelId:this.modelId})),headers:s,sessionUpdate:c,language:i?.language,warnings:a,audio:e.audio,abortSignal:e.abortSignal,includeRawChunks:e.includeRawChunks})}}};function Qn({webSocket:t,url:n,headers:r,sessionUpdate:i,language:a,warnings:s,audio:c,abortSignal:l,includeRawChunks:u}){let d=!1,f=()=>{};return new ReadableStream({start:p=>{let m=er(r),h,g;f=e=>{h==null?c.cancel().catch(()=>{}):h.cancel().catch(()=>{}),g?.close(e)};let _=e=>{d||(d=!0,f(),p.error(e))},v=(e,t)=>{d||(d=!0,t!=null&&p.enqueue({type:`transcript-final`,id:t,text:e}),p.enqueue({type:`finish`,text:e,segments:[],language:a}),p.close(),f(1e3))},y=async t=>{h=c.getReader();try{for(;;){let{done:n,value:r}=await h.read();if(n||d)break;t.send(JSON.stringify({type:`input_audio_buffer.append`,audio:B(r)})),await e(t)}}finally{h.releaseLock(),h=void 0}d||t.send(JSON.stringify({type:`input_audio_buffer.commit`}))};g=te({url:n,protocols:m.protocols,headers:m.headers,webSocket:t,abortSignal:l,onAbort:_,onProcessingError:_,onOpen:e=>{p.enqueue({type:`stream-start`,warnings:s}),e.send(JSON.stringify(i)),y(e).catch(_)},onMessageText:async e=>{let t=await o({text:e});if(!t.success)return;let n=t.value;switch(u&&p.enqueue({type:`raw`,rawValue:n}),n.type){case`conversation.item.input_audio_transcription.delta`:p.enqueue({type:`transcript-delta`,id:n.item_id,delta:n.delta??``});break;case`conversation.item.input_audio_transcription.completed`:v(n.transcript??``,n.item_id);break;case`error`:_(Error(n.error?.message??`OpenAI realtime error`));break}},onSocketError:()=>{_(Error(`OpenAI realtime transcription error`))},onClose:()=>{d||(d=!0,f(),p.close())}})},cancel:()=>{d||(d=!0,f())}})}function $n({modelId:e,inputAudioFormat:t,providerOptions:n}){return{type:`session.update`,session:{type:`transcription`,audio:{input:{format:{type:t.type,...t.rate==null?{}:{rate:t.rate}},transcription:{model:e,...n?.language==null?{}:{language:n.language},...n?.streaming?.delay==null?{}:{delay:n.streaming.delay}},turn_detection:null}},...n?.streaming?.include==null?{}:{include:n.streaming.include}}}}function er(e){let t;for(let[n,r]of Object.entries(e))n.toLowerCase()===`authorization`&&r!=null&&(t=r);let n=t?.match(/^bearer\s+(.+)$/i)?.[1];return n==null?{protocols:[`realtime`],headers:e}:{protocols:[`realtime`,`openai-insecure-api-key.${n}`],headers:Object.fromEntries(Object.entries(e).filter(([e])=>e.toLowerCase()!==`authorization`))}}var tr=P(()=>I(j({id:q(),name:q().nullish(),description:q().nullish(),default_version:q().nullish(),latest_version:q().nullish(),created_at:N(),updated_at:N().nullish()})));P(()=>I(j({id:q(),version:q().nullish(),name:q().nullish(),description:q().nullish()})));var nr=class{constructor(e){this.config=e,this.specificationVersion=`v4`}get provider(){return this.config.provider}async uploadSkill(e){let t=[];e.displayTitle!=null&&t.push({type:`unsupported`,feature:`displayTitle`});let n=new FormData;for(let t of e.files){let e=ie(t.data);n.append(`files[]`,new Blob([e]),t.path)}let{value:r}=await ue({url:this.config.url({path:`/skills`}),headers:z(this.config.headers()),formData:n,failedResponseHandler:X,successfulResponseHandler:L(tr),fetch:this.config.fetch});return{providerReference:{openai:r.id},...r.name==null?{}:{name:r.name},...r.description==null?{}:{description:r.description},...r.latest_version==null?{}:{latestVersion:r.latest_version},providerMetadata:{openai:{...r.default_version==null?{}:{defaultVersion:r.default_version},...r.created_at==null?{}:{createdAt:r.created_at},...r.updated_at==null?{}:{updatedAt:r.updated_at}}},warnings:t}}},rr=`4.0.17`;function ir(e={}){let t=se(b(f({settingValue:e.baseURL,environmentVariableName:`OPENAI_BASE_URL`})))??`https://api.openai.com/v1`,n=e.name??`openai`,r=()=>O({Authorization:`Bearer ${d({apiKey:e.apiKey,environmentVariableName:`OPENAI_API_KEY`,description:`OpenAI`})}`,"OpenAI-Organization":e.organization,"OpenAI-Project":e.project,...e.headers},`ai-sdk/openai/${rr}`),i=i=>new Ae(i,{provider:`${n}.chat`,url:({path:e})=>`${t}${e}`,headers:r,fetch:e.fetch}),a=i=>new ze(i,{provider:`${n}.completion`,url:({path:e})=>`${t}${e}`,headers:r,fetch:e.fetch}),o=i=>new Ue(i,{provider:`${n}.embedding`,url:({path:e})=>`${t}${e}`,headers:r,fetch:e.fetch}),s=i=>new et(i,{provider:`${n}.image`,url:({path:e})=>`${t}${e}`,headers:r,fetch:e.fetch}),c=i=>new Zn(i,{provider:`${n}.transcription`,url:({path:e})=>`${t}${e}`,headers:r,fetch:e.fetch,webSocket:e.webSocket}),l=i=>new Kn(i,{provider:`${n}.speech`,url:({path:e})=>`${t}${e}`,headers:r,fetch:e.fetch}),u=()=>new Ke({provider:`${n}.files`,baseURL:t,headers:r,fetch:e.fetch}),p=()=>new nr({provider:`${n}.skills`,url:({path:e})=>`${t}${e}`,headers:r,fetch:e.fetch}),m=e=>{if(new.target)throw Error(`The OpenAI model function cannot be called with the new keyword.`);return h(e)},h=i=>new wn(i,{provider:`${n}.responses`,url:({path:e})=>`${t}${e}`,headers:r,fetch:e.fetch,fileIdPrefixes:[`file-`]}),g=i=>new $t(i,{provider:`${n}.realtime`,baseURL:t,headers:r,fetch:e.fetch}),_=Object.assign(e=>g(e),{getToken:async e=>{let t=await g(e.model).doCreateClientSecret({sessionConfig:e.sessionConfig,expiresAfterSeconds:e.expiresAfterSeconds});return{token:t.token,url:t.url,expiresAt:t.expiresAt}}}),v=function(e){return m(e)};return v.specificationVersion=`v4`,v.languageModel=m,v.chat=i,v.completion=a,v.responses=h,v.embedding=o,v.embeddingModel=o,v.textEmbedding=o,v.textEmbeddingModel=o,v.image=s,v.imageModel=s,v.transcription=c,v.transcriptionModel=c,v.speech=l,v.speechModel=l,v.files=u,v.skills=p,v.experimental_realtime=_,v.tools=Yt,v}var ar=ir();export{$t as Experimental_OpenAIRealtimeModel,rr as VERSION,ir as createOpenAI,ar as openai};
|
|
9
|
+
`;break}case`tool`:throw new a({functionality:`tool messages`});default:throw Error(`Unsupported role: ${o}`)}return i+=`${n}:
|
|
10
|
+
`,{prompt:i,stopSequences:[`
|
|
11
|
+
${t}:`]}}function Je(e){switch(e){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`}}var Ye=d(()=>R(c({id:u().nullish(),created:x().nullish(),model:u().nullish(),choices:I(c({text:u(),finish_reason:u(),logprobs:c({tokens:I(u()),token_logprobs:I(x()),top_logprobs:I(C(u(),x())).nullish()}).nullish()})),usage:c({prompt_tokens:x(),completion_tokens:x(),total_tokens:x()}).nullish()}))),Xe=d(()=>R(v([c({id:u().nullish(),created:x().nullish(),model:u().nullish(),choices:I(c({text:u(),finish_reason:u().nullish(),index:x(),logprobs:c({tokens:I(u()),token_logprobs:I(x()),top_logprobs:I(C(u(),x())).nullish()}).nullish()})),usage:c({prompt_tokens:x(),completion_tokens:x(),total_tokens:x()}).nullish()}),Ce]))),Ze=d(()=>R(c({echo:k().optional(),logitBias:C(u(),x()).optional(),suffix:u().optional(),user:u().optional(),logprobs:v([k(),x()]).optional()}))),Qe=class e{constructor(e,t){this.specificationVersion=`v4`,this.supportedUrls={},this.modelId=e,this.config=t}get providerOptionsName(){return this.config.provider.split(`.`)[0].trim()}static[K](e){return N({modelId:e.modelId,config:e.config})}static[q](t){return new e(t.modelId,t.config)}get provider(){return this.config.provider}async getArgs({prompt:e,maxOutputTokens:t,temperature:n,topP:r,topK:i,frequencyPenalty:a,presencePenalty:o,stopSequences:s,responseFormat:c,tools:l,toolChoice:u,seed:d,providerOptions:f}){let p=[],m={...await w({provider:`openai`,providerOptions:f,schema:Ze}),...await w({provider:this.providerOptionsName,providerOptions:f,schema:Ze})};i!=null&&p.push({type:`unsupported`,feature:`topK`}),l?.length&&p.push({type:`unsupported`,feature:`tools`}),u!=null&&p.push({type:`unsupported`,feature:`toolChoice`}),c!=null&&c.type!==`text`&&p.push({type:`unsupported`,feature:`responseFormat`,details:`JSON response format is not supported.`});let{prompt:h,stopSequences:g}=qe({prompt:e}),_=[...g??[],...s??[]];return{args:{model:this.modelId,echo:m.echo,logit_bias:m.logitBias,logprobs:m?.logprobs===!0?0:m?.logprobs===!1?void 0:m?.logprobs,suffix:m.suffix,user:m.user,max_tokens:t,temperature:n,top_p:r,frequency_penalty:a,presence_penalty:o,seed:d,prompt:h,stop:_.length>0?_:void 0},warnings:p}}async doGenerate(e){var t;let{args:n,warnings:r}=await this.getArgs(e),{responseHeaders:i,value:a,rawValue:o}=await f({url:this.config.url({path:`/completions`,modelId:this.modelId}),headers:V((t=this.config).headers?.call(t),e.headers),body:n,failedResponseHandler:J,successfulResponseHandler:z(Ye),abortSignal:e.abortSignal,fetch:this.config.fetch}),s=a.choices[0],c={openai:{}};return s.logprobs!=null&&(c.openai.logprobs=s.logprobs),{content:[{type:`text`,text:s.text}],usage:Ke(a.usage),finishReason:{unified:Je(s.finish_reason),raw:s.finish_reason??void 0},request:{body:n},response:{...oe(a),headers:i,body:o},providerMetadata:c,warnings:r}}async doStream(e){var t;let{args:n,warnings:r}=await this.getArgs(e),i={...n,stream:!0,stream_options:{include_usage:!0}},a=this.config.url({path:`/completions`,modelId:this.modelId}),{responseHeaders:o,value:s}=await f({url:a,headers:V((t=this.config).headers?.call(t),e.headers),body:i,failedResponseHandler:J,successfulResponseHandler:P(Xe),abortSignal:e.abortSignal,fetch:this.config.fetch}),c=await De({stream:s,getError:e=>`error`in e?e.error:void 0,isOutputChunk:$e,url:a,requestBodyValues:i,responseHeaders:o}),l={unified:`other`,raw:void 0},u={openai:{}},d,p=!0;return{stream:c.pipeThrough(new TransformStream({start(e){e.enqueue({type:`stream-start`,warnings:r})},transform(t,n){if(e.includeRawChunks&&n.enqueue({type:`raw`,rawValue:t.rawValue}),!t.success){l={unified:`error`,raw:void 0},n.enqueue({type:`error`,error:t.error});return}let r=t.value;if(`error`in r){l={unified:`error`,raw:void 0},n.enqueue({type:`error`,error:r.error});return}p&&(p=!1,n.enqueue({type:`response-metadata`,...oe(r)}),n.enqueue({type:`text-start`,id:`0`})),r.usage!=null&&(d=r.usage);let i=r.choices[0];i?.finish_reason!=null&&(l={unified:Je(i.finish_reason),raw:i.finish_reason}),i?.logprobs!=null&&(u.openai.logprobs=i.logprobs),i?.text!=null&&i.text.length>0&&n.enqueue({type:`text-delta`,id:`0`,delta:i.text})},flush(e){p||e.enqueue({type:`text-end`,id:`0`}),e.enqueue({type:`finish`,finishReason:l,providerMetadata:u,usage:Ke(d)})}})),request:{body:i},response:{headers:o}}}};function $e(e){return!(`error`in e)&&e.choices.some(e=>e.text.length>0)}var et=d(()=>R(c({dimensions:x().optional(),user:u().optional()}))),tt=d(()=>R(c({data:I(c({embedding:I(x())})),usage:c({prompt_tokens:x()}).nullish()}))),nt=class e{constructor(e,t){this.specificationVersion=`v4`,this.maxEmbeddingsPerCall=2048,this.supportsParallelCalls=!0,this.modelId=e,this.config=t}static[K](e){return N({modelId:e.modelId,config:e.config})}static[q](t){return new e(t.modelId,t.config)}get provider(){return this.config.provider}async doEmbed({values:e,headers:t,abortSignal:n,providerOptions:r}){var a;if(e.length>this.maxEmbeddingsPerCall)throw new i({provider:this.provider,modelId:this.modelId,maxEmbeddingsPerCall:this.maxEmbeddingsPerCall,values:e});let o=await w({provider:`openai`,providerOptions:r,schema:et})??{},{responseHeaders:s,value:c,rawValue:l}=await f({url:this.config.url({path:`/embeddings`,modelId:this.modelId}),headers:V((a=this.config).headers?.call(a),t),body:{model:this.modelId,input:e,encoding_format:`float`,dimensions:o.dimensions,user:o.user},failedResponseHandler:J,successfulResponseHandler:z(tt),abortSignal:n,fetch:this.config.fetch});return{warnings:[],embeddings:c.data.map(e=>e.embedding),usage:c.usage?{tokens:c.usage.prompt_tokens}:void 0,response:{headers:s,body:l}}}},rt=d(()=>R(c({id:u(),object:u().nullish(),bytes:x().nullish(),created_at:x().nullish(),filename:u().nullish(),purpose:u().nullish(),status:u().nullish(),expires_at:x().nullish()}))),it=d(()=>R(c({purpose:u().optional(),expiresAfter:x().optional()}))),at=class{constructor(e){this.config=e,this.specificationVersion=`v4`}get provider(){return this.config.provider}async uploadFile({data:e,mediaType:t,filename:n,providerOptions:r}){let i=await w({provider:`openai`,providerOptions:r,schema:it}),a=_e(e),o=new Blob([a],{type:t}),s=new FormData;n==null?s.append(`file`,o):s.append(`file`,o,n),s.append(`purpose`,i?.purpose??`assistants`),i?.expiresAfter!=null&&(s.append(`expires_after[anchor]`,`created_at`),s.append(`expires_after[seconds]`,String(i.expiresAfter)));let{value:c}=await T({url:`${this.config.baseURL}/files`,headers:V(this.config.headers()),formData:s,failedResponseHandler:J,successfulResponseHandler:z(rt),fetch:this.config.fetch});return{warnings:[],providerReference:{openai:c.id},...c.filename??n?{filename:c.filename??n}:{},...t==null?{}:{mediaType:t},providerMetadata:{openai:{...c.filename==null?{}:{filename:c.filename},...c.purpose==null?{}:{purpose:c.purpose},...c.bytes==null?{}:{bytes:c.bytes},...c.created_at==null?{}:{createdAt:c.created_at},...c.status==null?{}:{status:c.status},...c.expires_at==null?{}:{expiresAt:c.expires_at}}}}}},ot=d(()=>R(c({created:x().nullish(),data:I(c({b64_json:u(),revised_prompt:u().nullish()})),background:u().nullish(),output_format:u().nullish(),size:u().nullish(),quality:u().nullish(),usage:c({input_tokens:x().nullish(),output_tokens:x().nullish(),total_tokens:x().nullish(),input_tokens_details:c({image_tokens:x().nullish(),text_tokens:x().nullish()}).nullish()}).nullish()}))),st={"dall-e-3":1,"dall-e-2":10,"gpt-image-1":10,"gpt-image-1-mini":10,"gpt-image-1.5":10,"gpt-image-2":10,"chatgpt-image-latest":10},ct=[`chatgpt-image-`,`gpt-image-`];function lt(e){return ct.some(t=>e.startsWith(t))}function ut(e){return st[e]??(e.startsWith(`gpt-image-`)?10:1)}var dt=c({quality:F([`standard`,`hd`,`low`,`medium`,`high`,`auto`]).optional(),background:F([`transparent`,`opaque`,`auto`]).optional(),outputFormat:F([`png`,`jpeg`,`webp`]).optional(),outputCompression:x().int().min(0).max(100).optional(),user:u().optional()});d(()=>R(dt));var ft=d(()=>R(dt.extend({style:F([`vivid`,`natural`]).optional(),moderation:F([`auto`,`low`]).optional()}))),pt=d(()=>R(dt.extend({inputFidelity:F([`high`,`low`]).optional()}))),mt=class e{constructor(e,t){this.modelId=e,this.config=t,this.specificationVersion=`v4`}static[K](e){return N({modelId:e.modelId,config:e.config})}static[q](t){return new e(t.modelId,t.config)}get maxImagesPerCall(){return ut(this.modelId)}get provider(){return this.config.provider}async doGenerate({prompt:e,files:t,mask:n,n:r,size:i,aspectRatio:a,seed:o,providerOptions:s,headers:c,abortSignal:l}){var u,d,p;let m=[];a!=null&&m.push({type:`unsupported`,feature:`aspectRatio`,details:"This model does not support aspect ratio. Use `size` instead."}),o!=null&&m.push({type:`unsupported`,feature:`seed`});let h=((u=this.config._internal)?.currentDate)?.call(u)??new Date;if(t!=null){let a=await w({provider:`openai`,providerOptions:s,schema:pt})??{},{value:o,responseHeaders:u}=await T({url:this.config.url({path:`/images/edits`,modelId:this.modelId}),headers:V((d=this.config).headers?.call(d),c),formData:de({model:this.modelId,prompt:e,image:await Promise.all(t.map(e=>e.type===`file`?new Blob([e.data instanceof Uint8Array?new Blob([e.data],{type:e.mediaType}):new Blob([fe(e.data)],{type:e.mediaType})],{type:e.mediaType}):b(e.url))),mask:n==null?void 0:await gt(n),n:r,size:i,quality:a.quality,background:a.background,output_format:a.outputFormat,output_compression:a.outputCompression,input_fidelity:a.inputFidelity,user:a.user}),failedResponseHandler:J,successfulResponseHandler:z(ot),abortSignal:l,fetch:this.config.fetch});return{images:o.data.map(e=>e.b64_json),warnings:m,usage:o.usage==null?void 0:{inputTokens:o.usage.input_tokens??void 0,outputTokens:o.usage.output_tokens??void 0,totalTokens:o.usage.total_tokens??void 0},response:{timestamp:h,modelId:this.modelId,headers:u},providerMetadata:{openai:{images:o.data.map((e,t)=>({...e.revised_prompt?{revisedPrompt:e.revised_prompt}:{},created:o.created??void 0,size:o.size??void 0,quality:o.quality??void 0,background:o.background??void 0,outputFormat:o.output_format??void 0,...ht(o.usage?.input_tokens_details,t,o.data.length)}))}}}}let g=await w({provider:`openai`,providerOptions:s,schema:ft})??{},{value:_,responseHeaders:v}=await f({url:this.config.url({path:`/images/generations`,modelId:this.modelId}),headers:V((p=this.config).headers?.call(p),c),body:{model:this.modelId,prompt:e,n:r,size:i,quality:g.quality,style:g.style,background:g.background,moderation:g.moderation,output_format:g.outputFormat,output_compression:g.outputCompression,user:g.user,...lt(this.modelId)?{}:{response_format:`b64_json`}},failedResponseHandler:J,successfulResponseHandler:z(ot),abortSignal:l,fetch:this.config.fetch});return{images:_.data.map(e=>e.b64_json),warnings:m,usage:_.usage==null?void 0:{inputTokens:_.usage.input_tokens??void 0,outputTokens:_.usage.output_tokens??void 0,totalTokens:_.usage.total_tokens??void 0},response:{timestamp:h,modelId:this.modelId,headers:v},providerMetadata:{openai:{images:_.data.map((e,t)=>({...e.revised_prompt?{revisedPrompt:e.revised_prompt}:{},created:_.created??void 0,size:_.size??void 0,quality:_.quality??void 0,background:_.background??void 0,outputFormat:_.output_format??void 0,...ht(_.usage?.input_tokens_details,t,_.data.length)}))}}}}};function ht(e,t,n){if(e==null)return{};let r={};if(e.image_tokens!=null){let i=Math.floor(e.image_tokens/n),a=e.image_tokens-i*(n-1);r.imageTokens=t===n-1?a:i}if(e.text_tokens!=null){let i=Math.floor(e.text_tokens/n),a=e.text_tokens-i*(n-1);r.textTokens=t===n-1?a:i}return r}async function gt(e){if(!e)return;if(e.type===`url`)return b(e.url);let t=e.data instanceof Uint8Array?e.data:fe(e.data);return new Blob([t],{type:e.mediaType})}var _t=d(()=>R(c({callId:u(),operation:U(`type`,[c({type:j(`create_file`),path:u(),diff:u()}),c({type:j(`delete_file`),path:u()}),c({type:j(`update_file`),path:u(),diff:u()})])}))),vt=d(()=>R(c({status:F([`completed`,`failed`]),output:u().optional()})));d(()=>R(c({})));var yt=H({id:`openai.apply_patch`,inputSchema:_t,outputSchema:vt}),bt=d(()=>R(c({code:u().nullish(),containerId:u()}))),xt=d(()=>R(c({outputs:I(U(`type`,[c({type:j(`logs`),logs:u()}),c({type:j(`image`),url:u()})])).nullish()}))),St=d(()=>R(c({container:v([u(),c({fileIds:I(u()).optional()})]).optional()}))),Ct=G({id:`openai.code_interpreter`,inputSchema:bt,outputSchema:xt}),wt=(e={})=>Ct(e),Tt=c({id:u(),code:u().optional(),message:u().optional()}),Et=U(`type`,[c({type:j(`click`),button:F([`left`,`right`,`wheel`,`back`,`forward`]),x:x(),y:x(),keys:I(u()).optional()}),c({type:j(`double_click`),x:x(),y:x(),keys:I(u()).optional()}),c({type:j(`drag`),path:I(c({x:x(),y:x()})),keys:I(u()).optional()}),c({type:j(`keypress`),keys:I(u())}),c({type:j(`move`),x:x(),y:x(),keys:I(u()).optional()}),c({type:j(`screenshot`)}),c({type:j(`scroll`),x:x(),y:x(),scrollX:x(),scrollY:x(),keys:I(u()).optional()}),c({type:j(`type`),text:u()}),c({type:j(`wait`)})]),Dt=d(()=>R(c({actions:I(Et),pendingSafetyChecks:I(Tt),status:F([`in_progress`,`completed`,`incomplete`])}))),Ot=d(()=>R(c({output:v([c({type:j(`computer_screenshot`),imageUrl:u(),fileId:u().optional(),detail:F([`auto`,`low`,`high`,`original`]).optional()}),c({type:j(`computer_screenshot`),fileId:u(),imageUrl:u().optional(),detail:F([`auto`,`low`,`high`,`original`]).optional()})]),acknowledgedSafetyChecks:I(Tt).optional()}))),kt=H({id:`openai.computer`,inputSchema:Dt,outputSchema:Ot}),At=(e={})=>kt(e),jt=d(()=>R(c({description:u().optional(),format:v([c({type:j(`grammar`),syntax:F([`regex`,`lark`]),definition:u()}),c({type:j(`text`)})]).optional()}))),Mt=O({id:`openai.custom`,inputSchema:d(()=>R(u()))}),Nt=e=>Mt(e),Pt=c({key:u(),type:F([`eq`,`ne`,`gt`,`gte`,`lt`,`lte`,`in`,`nin`]),value:v([u(),x(),k(),I(u())])}),Ft=c({type:F([`and`,`or`]),filters:I(v([Pt,xe(()=>Ft)]))}),It=d(()=>R(c({vectorStoreIds:I(u()),maxNumResults:x().optional(),ranking:c({ranker:u().optional(),scoreThreshold:x().optional()}).optional(),filters:v([Pt,Ft]).optional()}))),Lt=d(()=>R(c({queries:I(u()),results:I(c({attributes:C(u(),L()),fileId:u(),filename:u(),score:x(),text:u()})).nullable()}))),Rt=G({id:`openai.file_search`,inputSchema:c({}),outputSchema:Lt}),zt=d(()=>R(c({background:F([`auto`,`opaque`,`transparent`]).optional(),inputFidelity:F([`low`,`high`]).optional(),inputImageMask:c({fileId:u().optional(),imageUrl:u().optional()}).optional(),model:u().optional(),moderation:F([`auto`]).optional(),outputCompression:x().int().min(0).max(100).optional(),outputFormat:F([`png`,`jpeg`,`webp`]).optional(),partialImages:x().int().min(0).max(3).optional(),quality:F([`auto`,`low`,`medium`,`high`]).optional(),size:F([`1024x1024`,`1024x1536`,`1536x1024`,`auto`]).optional()}).strict())),Bt=G({id:`openai.image_generation`,inputSchema:d(()=>R(c({}))),outputSchema:d(()=>R(c({result:u()})))}),Vt=(e={})=>Bt(e),Ht=d(()=>R(c({action:c({type:j(`exec`),command:I(u()),timeoutMs:x().optional(),user:u().optional(),workingDirectory:u().optional(),env:C(u(),u()).optional()})}))),Ut=d(()=>R(c({output:u()}))),Wt=H({id:`openai.local_shell`,inputSchema:Ht,outputSchema:Ut}),Gt=d(()=>R(c({action:c({commands:I(u()),timeoutMs:x().optional(),maxOutputLength:x().optional()})}))),Kt=d(()=>R(c({output:I(c({stdout:u(),stderr:u(),outcome:U(`type`,[c({type:j(`timeout`)}),c({type:j(`exit`),exitCode:x()})])}))}))),qt=I(U(`type`,[c({type:j(`skillReference`),providerReference:C(u(),u()),version:u().optional()}),c({type:j(`inline`),name:u(),description:u(),source:c({type:j(`base64`),mediaType:j(`application/zip`),data:u()})})])).optional(),Jt=d(()=>R(c({environment:v([c({type:j(`containerAuto`),fileIds:I(u()).optional(),memoryLimit:F([`1g`,`4g`,`16g`,`64g`]).optional(),networkPolicy:U(`type`,[c({type:j(`disabled`)}),c({type:j(`allowlist`),allowedDomains:I(u()),domainSecrets:I(c({domain:u(),name:u(),value:u()})).optional()})]).optional(),skills:qt}),c({type:j(`containerReference`),containerId:u()}),c({type:j(`local`).optional(),skills:I(c({name:u(),description:u(),path:u()})).optional()})]).optional()}))),Yt=H({id:`openai.shell`,inputSchema:Gt,outputSchema:Kt}),Xt=d(()=>R(c({execution:F([`server`,`client`]).optional(),description:u().optional(),parameters:C(u(),L()).optional()}))),Zt=d(()=>R(c({arguments:L().optional(),call_id:u().nullish()}))),Qt=d(()=>R(c({tools:I(C(u(),L()))}))),$t=H({id:`openai.tool_search`,inputSchema:Zt,outputSchema:Qt}),en=(e={})=>$t(e),tn=d(()=>R(c({externalWebAccess:k().optional(),filters:c({allowedDomains:I(u()).optional(),blockedDomains:I(u()).optional()}).optional(),searchContextSize:F([`low`,`medium`,`high`]).optional(),userLocation:c({type:j(`approximate`),country:u().optional(),city:u().optional(),region:u().optional(),timezone:u().optional()}).optional()}))),nn=G({id:`openai.web_search`,inputSchema:d(()=>R(c({}))),outputSchema:d(()=>R(c({action:U(`type`,[c({type:j(`search`),query:u().optional(),queries:I(u()).optional()}),c({type:j(`openPage`),url:u().nullish()}),c({type:j(`findInPage`),url:u().nullish(),pattern:u().nullish()})]).optional(),sources:I(U(`type`,[c({type:j(`url`),url:u()}),c({type:j(`api`),name:u()})])).optional()})))}),rn=(e={})=>nn(e),an=d(()=>R(c({searchContextSize:F([`low`,`medium`,`high`]).optional(),userLocation:c({type:j(`approximate`),country:u().optional(),city:u().optional(),region:u().optional(),timezone:u().optional()}).optional()}))),on=G({id:`openai.web_search_preview`,inputSchema:d(()=>R(c({}))),outputSchema:d(()=>R(c({action:U(`type`,[c({type:j(`search`),query:u().optional()}),c({type:j(`openPage`),url:u().nullish()}),c({type:j(`findInPage`),url:u().nullish(),pattern:u().nullish()})]).optional()})))}),sn=xe(()=>v([u(),x(),k(),he(),I(sn),C(u(),sn)])),cn=d(()=>R(c({serverLabel:u(),allowedTools:v([I(u()),c({readOnly:k().optional(),toolNames:I(u()).optional()})]).optional(),authorization:u().optional(),connectorId:u().optional(),headers:C(u(),u()).optional(),requireApproval:v([F([`always`,`never`]),c({never:c({toolNames:I(u()).optional()}).optional()})]).optional(),serverDescription:u().optional(),serverUrl:u().optional()}).refine(e=>e.serverUrl!=null||e.connectorId!=null,`One of serverUrl or connectorId must be provided.`))),ln=G({id:`openai.mcp`,inputSchema:d(()=>R(c({}))),outputSchema:d(()=>R(c({type:j(`call`),serverLabel:u(),name:u(),arguments:u(),output:u().nullish(),error:v([u(),sn]).optional()})))}),un=e=>ln(e),dn=d(()=>R(c({code:u(),fingerprint:u()}))),fn=d(()=>R(c({result:u(),status:F([`completed`,`incomplete`])}))),pn=G({id:`openai.programmatic_tool_calling`,inputSchema:dn,outputSchema:fn,supportsDeferredResults:!0}),mn={applyPatch:yt,customTool:Nt,codeInterpreter:wt,computer:At,fileSearch:Rt,imageGeneration:Vt,localShell:Wt,shell:Yt,webSearchPreview:on,webSearch:rn,mcp:un,programmaticToolCalling:()=>ge(pn({}),{type:`provider`,prepareProviderOptions:e=>{let t=e?.openai;return{...e,openai:{...t,allowedCallers:[...new Set([...t?.allowedCallers??[],`programmatic`])]}}}}),toolSearch:en};function hn(e){if(e==null)return ae();let t=e.input_tokens,n=e.output_tokens,r=e.input_tokens_details?.cached_tokens??0,i=e.input_tokens_details?.cache_write_tokens??void 0,a=e.output_tokens_details?.reasoning_tokens??0;return{inputTokens:{total:t,noCache:t-r-(i??0),cacheRead:r,cacheWrite:i},outputTokens:{total:n,text:n-a,reasoning:a},raw:e}}function gn({finishReason:e,hasFunctionCall:t}){switch(e){case void 0:case null:return t?`tool-calls`:`stop`;case`max_output_tokens`:return`length`;case`content_filter`:return`content-filter`;default:return t?`tool-calls`:`other`}}var Z=xe(()=>v([u(),x(),k(),he(),I(Z),C(u(),Z.optional())])),_n=c({id:u(),code:u().nullish(),message:u().nullish()}),vn=U(`type`,[c({type:j(`click`),button:F([`left`,`right`,`wheel`,`back`,`forward`]),x:x(),y:x(),keys:I(u()).nullish()}),c({type:j(`double_click`),x:x(),y:x(),keys:I(u()).nullish()}),c({type:j(`drag`),path:I(c({x:x(),y:x()})),keys:I(u()).nullish()}),c({type:j(`keypress`),keys:I(u())}),c({type:j(`move`),x:x(),y:x(),keys:I(u()).nullish()}),c({type:j(`screenshot`)}),c({type:j(`scroll`),x:x(),y:x(),scroll_x:x(),scroll_y:x(),keys:I(u()).nullish()}),c({type:j(`type`),text:u()}),c({type:j(`wait`)})]),yn=c({type:j(`computer_call`),id:u(),call_id:u().nullish(),status:F([`in_progress`,`completed`,`incomplete`]),action:vn.nullish(),actions:I(vn).nullish(),pending_safety_checks:I(_n).nullish()}),bn=U(`type`,[c({type:j(`direct`)}),c({type:j(`program`),caller_id:u()})]),xn=c({type:j(`program`),id:u(),call_id:u(),code:u(),fingerprint:u()}),Sn=c({type:j(`program_output`),id:u(),call_id:u(),result:u(),status:F([`completed`,`incomplete`])}),Cn=c({type:j(`error`),sequence_number:x(),error:c({type:u(),code:u(),message:u(),param:u().nullish()})}),wn=c({type:j(`error`),sequence_number:x(),code:u().nullish(),message:u(),param:u().nullish()}),Tn=d(()=>R(v([c({type:j(`response.output_text.delta`),item_id:u(),output_index:x().nullish(),delta:u(),logprobs:I(c({token:u(),logprob:x(),top_logprobs:I(c({token:u(),logprob:x()}))})).nullish()}),c({type:F([`response.completed`,`response.incomplete`]),response:c({incomplete_details:c({reason:u()}).nullish(),usage:c({input_tokens:x(),input_tokens_details:c({cached_tokens:x().nullish(),cache_write_tokens:x().nullish(),orchestration_input_tokens:x().nullish(),orchestration_input_cached_tokens:x().nullish()}).nullish(),output_tokens:x(),output_tokens_details:c({reasoning_tokens:x().nullish(),orchestration_output_tokens:x().nullish()}).nullish()}),reasoning:c({context:u().nullish()}).nullish(),service_tier:u().nullish()})}),c({type:j(`response.failed`),sequence_number:x(),response:c({error:c({code:u().nullish(),message:u()}).nullish(),incomplete_details:c({reason:u()}).nullish(),usage:c({input_tokens:x(),input_tokens_details:c({cached_tokens:x().nullish(),cache_write_tokens:x().nullish(),orchestration_input_tokens:x().nullish(),orchestration_input_cached_tokens:x().nullish()}).nullish(),output_tokens:x(),output_tokens_details:c({reasoning_tokens:x().nullish(),orchestration_output_tokens:x().nullish()}).nullish()}).nullish(),reasoning:c({context:u().nullish()}).nullish(),service_tier:u().nullish()})}),c({type:j(`response.created`),response:c({id:u(),created_at:x(),model:u(),service_tier:u().nullish()})}),c({type:j(`response.in_progress`),response:c({id:u(),created_at:x(),model:u(),service_tier:u().nullish()})}),c({type:j(`response.output_item.added`),output_index:x(),item:U(`type`,[c({type:j(`message`),id:u(),phase:F([`commentary`,`final_answer`]).nullish()}),c({type:j(`reasoning`),id:u(),encrypted_content:u().nullish()}),c({type:j(`function_call`),id:u(),call_id:u(),name:u(),arguments:u(),namespace:u().nullish(),caller:bn.nullish()}),xn,Sn,c({type:j(`web_search_call`),id:u(),status:u()}),yn,c({type:j(`file_search_call`),id:u()}),c({type:j(`image_generation_call`),id:u()}),c({type:j(`code_interpreter_call`),id:u(),container_id:u(),code:u().nullable(),outputs:I(U(`type`,[c({type:j(`logs`),logs:u()}),c({type:j(`image`),url:u()})])).nullable(),status:u()}),c({type:j(`mcp_call`),id:u(),status:u(),approval_request_id:u().nullish()}),c({type:j(`mcp_list_tools`),id:u()}),c({type:j(`mcp_approval_request`),id:u()}),c({type:j(`apply_patch_call`),id:u(),call_id:u(),status:F([`in_progress`,`completed`]),operation:U(`type`,[c({type:j(`create_file`),path:u(),diff:u()}),c({type:j(`delete_file`),path:u()}),c({type:j(`update_file`),path:u(),diff:u()})])}),c({type:j(`custom_tool_call`),id:u(),call_id:u(),name:u(),input:u()}),c({type:j(`shell_call`),id:u(),call_id:u(),status:F([`in_progress`,`completed`,`incomplete`]),action:c({commands:I(u())})}),c({type:j(`compaction`),id:u(),encrypted_content:u().nullish()}),c({type:j(`shell_call_output`),id:u(),call_id:u(),status:F([`in_progress`,`completed`,`incomplete`]),output:I(c({stdout:u(),stderr:u(),outcome:U(`type`,[c({type:j(`timeout`)}),c({type:j(`exit`),exit_code:x()})])}))}),c({type:j(`tool_search_call`),id:u(),execution:F([`server`,`client`]),call_id:u().nullable(),status:F([`in_progress`,`completed`,`incomplete`]),arguments:L()}),c({type:j(`tool_search_output`),id:u(),execution:F([`server`,`client`]),call_id:u().nullable(),status:F([`in_progress`,`completed`,`incomplete`]),tools:I(C(u(),Z.optional()))})])}),c({type:j(`response.output_item.done`),output_index:x(),item:U(`type`,[c({type:j(`message`),id:u(),phase:F([`commentary`,`final_answer`]).nullish()}),c({type:j(`reasoning`),id:u(),encrypted_content:u().nullish()}),c({type:j(`function_call`),id:u(),call_id:u(),name:u(),arguments:u(),status:F([`in_progress`,`completed`,`incomplete`]),namespace:u().nullish(),caller:bn.nullish()}),xn,Sn,c({type:j(`custom_tool_call`),id:u(),call_id:u(),name:u(),input:u(),status:j(`completed`)}),c({type:j(`code_interpreter_call`),id:u(),code:u().nullable(),container_id:u(),outputs:I(U(`type`,[c({type:j(`logs`),logs:u()}),c({type:j(`image`),url:u()})])).nullable()}),c({type:j(`image_generation_call`),id:u(),result:u()}),c({type:j(`web_search_call`),id:u(),status:u(),action:U(`type`,[c({type:j(`search`),query:u().nullish(),queries:I(u()).nullish(),sources:I(U(`type`,[c({type:j(`url`),url:u()}),c({type:j(`api`),name:u()})])).nullish()}),c({type:j(`open_page`),url:u().nullish()}),c({type:j(`find_in_page`),url:u().nullish(),pattern:u().nullish()})]).nullish()}),c({type:j(`file_search_call`),id:u(),queries:I(u()),results:I(c({attributes:C(u(),v([u(),x(),k()])),file_id:u(),filename:u(),score:x(),text:u()})).nullish()}),c({type:j(`local_shell_call`),id:u(),call_id:u(),action:c({type:j(`exec`),command:I(u()),timeout_ms:x().optional(),user:u().optional(),working_directory:u().optional(),env:C(u(),u()).optional()})}),yn,c({type:j(`mcp_call`),id:u(),status:u(),arguments:u(),name:u(),server_label:u(),output:u().nullish(),error:v([u(),c({type:u().optional(),code:v([x(),u()]).optional(),message:u().optional()}).loose()]).nullish(),approval_request_id:u().nullish()}),c({type:j(`mcp_list_tools`),id:u(),server_label:u(),tools:I(c({name:u(),description:u().optional(),input_schema:B(),annotations:C(u(),L()).optional()})),error:v([u(),c({type:u().optional(),code:v([x(),u()]).optional(),message:u().optional()}).loose()]).optional()}),c({type:j(`mcp_approval_request`),id:u(),server_label:u(),name:u(),arguments:u(),approval_request_id:u().optional()}),c({type:j(`apply_patch_call`),id:u(),call_id:u(),status:F([`in_progress`,`completed`]),operation:U(`type`,[c({type:j(`create_file`),path:u(),diff:u()}),c({type:j(`delete_file`),path:u()}),c({type:j(`update_file`),path:u(),diff:u()})])}),c({type:j(`shell_call`),id:u(),call_id:u(),status:F([`in_progress`,`completed`,`incomplete`]),action:c({commands:I(u())})}),c({type:j(`compaction`),id:u(),encrypted_content:u()}),c({type:j(`shell_call_output`),id:u(),call_id:u(),status:F([`in_progress`,`completed`,`incomplete`]),output:I(c({stdout:u(),stderr:u(),outcome:U(`type`,[c({type:j(`timeout`)}),c({type:j(`exit`),exit_code:x()})])}))}),c({type:j(`tool_search_call`),id:u(),execution:F([`server`,`client`]),call_id:u().nullable(),status:F([`in_progress`,`completed`,`incomplete`]),arguments:L()}),c({type:j(`tool_search_output`),id:u(),execution:F([`server`,`client`]),call_id:u().nullable(),status:F([`in_progress`,`completed`,`incomplete`]),tools:I(C(u(),Z.optional()))})])}),c({type:j(`response.function_call_arguments.delta`),item_id:u(),output_index:x(),delta:u()}),c({type:j(`response.custom_tool_call_input.delta`),item_id:u(),output_index:x(),delta:u()}),c({type:j(`response.image_generation_call.partial_image`),item_id:u(),output_index:x(),partial_image_b64:u()}),c({type:j(`response.code_interpreter_call_code.delta`),item_id:u(),output_index:x(),delta:u()}),c({type:j(`response.code_interpreter_call_code.done`),item_id:u(),output_index:x(),code:u()}),c({type:j(`response.output_text.annotation.added`),annotation:U(`type`,[c({type:j(`url_citation`),start_index:x(),end_index:x(),url:u(),title:u()}),c({type:j(`file_citation`),file_id:u(),filename:u(),index:x()}),c({type:j(`container_file_citation`),container_id:u(),file_id:u(),filename:u(),start_index:x(),end_index:x()}),c({type:j(`file_path`),file_id:u(),index:x()})])}),c({type:j(`response.reasoning_summary_part.added`),item_id:u(),output_index:x().nullish(),summary_index:x()}),c({type:j(`response.reasoning_summary_text.delta`),item_id:u(),output_index:x().nullish(),summary_index:x(),delta:u()}),c({type:j(`response.reasoning_summary_part.done`),item_id:u(),output_index:x().nullish(),summary_index:x()}),c({type:j(`response.apply_patch_call_operation_diff.delta`),item_id:u(),output_index:x(),delta:u(),obfuscation:u().nullish()}),c({type:j(`response.apply_patch_call_operation_diff.done`),item_id:u(),output_index:x(),diff:u()}),Cn,wn,c({type:u()}).loose().transform(e=>({type:`unknown_chunk`,message:e.type}))]))),En=d(()=>R(c({id:u().optional(),created_at:x().optional(),error:c({message:u(),type:u(),param:u().nullish(),code:u()}).nullish(),model:u().optional(),output:I(U(`type`,[c({type:j(`message`),role:j(`assistant`),id:u(),phase:F([`commentary`,`final_answer`]).nullish(),content:I(c({type:j(`output_text`),text:u(),logprobs:I(c({token:u(),logprob:x(),top_logprobs:I(c({token:u(),logprob:x()}))})).nullish(),annotations:I(U(`type`,[c({type:j(`url_citation`),start_index:x(),end_index:x(),url:u(),title:u()}),c({type:j(`file_citation`),file_id:u(),filename:u(),index:x()}),c({type:j(`container_file_citation`),container_id:u(),file_id:u(),filename:u(),start_index:x(),end_index:x()}),c({type:j(`file_path`),file_id:u(),index:x()})]))}))}),c({type:j(`web_search_call`),id:u(),status:u(),action:U(`type`,[c({type:j(`search`),query:u().nullish(),queries:I(u()).nullish(),sources:I(U(`type`,[c({type:j(`url`),url:u()}),c({type:j(`api`),name:u()})])).nullish()}),c({type:j(`open_page`),url:u().nullish()}),c({type:j(`find_in_page`),url:u().nullish(),pattern:u().nullish()})]).nullish()}),c({type:j(`file_search_call`),id:u(),queries:I(u()),results:I(c({attributes:C(u(),v([u(),x(),k()])),file_id:u(),filename:u(),score:x(),text:u()})).nullish()}),c({type:j(`code_interpreter_call`),id:u(),code:u().nullable(),container_id:u(),outputs:I(U(`type`,[c({type:j(`logs`),logs:u()}),c({type:j(`image`),url:u()})])).nullable()}),c({type:j(`image_generation_call`),id:u(),result:u()}),c({type:j(`local_shell_call`),id:u(),call_id:u(),action:c({type:j(`exec`),command:I(u()),timeout_ms:x().optional(),user:u().optional(),working_directory:u().optional(),env:C(u(),u()).optional()})}),c({type:j(`function_call`),call_id:u(),name:u(),arguments:u(),id:u(),namespace:u().nullish(),caller:bn.nullish()}),xn,Sn,c({type:j(`custom_tool_call`),call_id:u(),name:u(),input:u(),id:u()}),yn,c({type:j(`reasoning`),id:u(),encrypted_content:u().nullish(),summary:I(c({type:j(`summary_text`),text:u()}))}),c({type:j(`mcp_call`),id:u(),status:u(),arguments:u(),name:u(),server_label:u(),output:u().nullish(),error:v([u(),c({type:u().optional(),code:v([x(),u()]).optional(),message:u().optional()}).loose()]).nullish(),approval_request_id:u().nullish()}),c({type:j(`mcp_list_tools`),id:u(),server_label:u(),tools:I(c({name:u(),description:u().optional(),input_schema:B(),annotations:C(u(),L()).optional()})),error:v([u(),c({type:u().optional(),code:v([x(),u()]).optional(),message:u().optional()}).loose()]).optional()}),c({type:j(`mcp_approval_request`),id:u(),server_label:u(),name:u(),arguments:u(),approval_request_id:u().optional()}),c({type:j(`apply_patch_call`),id:u(),call_id:u(),status:F([`in_progress`,`completed`]),operation:U(`type`,[c({type:j(`create_file`),path:u(),diff:u()}),c({type:j(`delete_file`),path:u()}),c({type:j(`update_file`),path:u(),diff:u()})])}),c({type:j(`shell_call`),id:u(),call_id:u(),status:F([`in_progress`,`completed`,`incomplete`]),action:c({commands:I(u())})}),c({type:j(`compaction`),id:u(),encrypted_content:u()}),c({type:j(`shell_call_output`),id:u(),call_id:u(),status:F([`in_progress`,`completed`,`incomplete`]),output:I(c({stdout:u(),stderr:u(),outcome:U(`type`,[c({type:j(`timeout`)}),c({type:j(`exit`),exit_code:x()})])}))}),c({type:j(`tool_search_call`),id:u(),execution:F([`server`,`client`]),call_id:u().nullable(),status:F([`in_progress`,`completed`,`incomplete`]),arguments:L()}),c({type:j(`tool_search_output`),id:u(),execution:F([`server`,`client`]),call_id:u().nullable(),status:F([`in_progress`,`completed`,`incomplete`]),tools:I(C(u(),Z.optional()))})])).optional(),service_tier:u().nullish(),reasoning:c({context:u().nullish()}).nullish(),incomplete_details:c({reason:u()}).nullish(),usage:c({input_tokens:x(),input_tokens_details:c({cached_tokens:x().nullish(),cache_write_tokens:x().nullish(),orchestration_input_tokens:x().nullish(),orchestration_input_cached_tokens:x().nullish()}).nullish(),output_tokens:x(),output_tokens_details:c({reasoning_tokens:x().nullish(),orchestration_output_tokens:x().nullish()}).nullish()}).optional()})));function Dn(e){return JSON.stringify(e===void 0?{}:e)}function On(e){return e==null?void 0:e.type===`program`?{type:`program`,caller_id:e.callerId}:e}function Q(e,t){return e?.[t]?.promptCacheBreakpoint}function kn(e,t){return t?t.some(t=>e.startsWith(t)):!1}async function An({prompt:e,toolNameMapping:t,systemMessageMode:n,providerOptionsName:r,fileIdPrefixes:i,passThroughUnsupportedFiles:o=!1,store:s,hasConversation:c=!1,hasPreviousResponseId:u=!1,hasLocalShellTool:d=!1,hasShellTool:f=!1,hasApplyPatchTool:m=!1,hasComputerTool:g=!1,customProviderToolNames:_,outputSchemaToolNames:v}){let y=[],b=[],x=new Set;for(let{role:S,content:C,providerOptions:T}of e)switch(S){case`system`:switch(n){case`system`:{let e=Q(T,r);y.push({role:`system`,content:e==null?C:[{type:`input_text`,text:C,prompt_cache_breakpoint:e}]});break}case`developer`:{let e=Q(T,r);y.push({role:`developer`,content:e==null?C:[{type:`input_text`,text:C,prompt_cache_breakpoint:e}]});break}case`remove`:b.push({type:`other`,message:`system messages are removed for this model`});break;default:throw Error(`Unsupported system message mode: ${n}`)}break;case`user`:y.push({role:`user`,content:C.map((e,t)=>{switch(e.type){case`text`:{let t=Q(e.providerOptions,r);return{type:`input_text`,text:e.text,...t!=null&&{prompt_cache_breakpoint:t}}}case`file`:{let n=Q(e.providerOptions,r);switch(e.data.type){case`reference`:{let t=E({reference:e.data.reference,provider:r});return l(e.mediaType)===`image`?{type:`input_image`,file_id:t,detail:e.providerOptions?.[r]?.imageDetail,...n!=null&&{prompt_cache_breakpoint:n}}:{type:`input_file`,file_id:t,...n!=null&&{prompt_cache_breakpoint:n}}}case`text`:throw new a({functionality:`text file parts`});case`url`:case`data`:if(l(e.mediaType)===`image`)return{type:`input_image`,...e.data.type===`url`?{image_url:e.data.url.toString()}:typeof e.data.data==`string`&&kn(e.data.data,i)?{file_id:e.data.data}:{image_url:`data:${h({part:e})};base64,${M(e.data.data)}`},detail:e.providerOptions?.[r]?.imageDetail,...n!=null&&{prompt_cache_breakpoint:n}};{if(e.data.type===`url`)return{type:`input_file`,file_url:e.data.url.toString(),...n!=null&&{prompt_cache_breakpoint:n}};let r=h({part:e});if(r!==`application/pdf`&&!o)throw new a({functionality:`file part media type ${r}`});return{type:`input_file`,...typeof e.data.data==`string`&&kn(e.data.data,i)?{file_id:e.data.data}:{filename:e.filename??(r===`application/pdf`?`part-${t}.pdf`:`part-${t}`),file_data:`data:${r};base64,${M(e.data.data)}`},...n!=null&&{prompt_cache_breakpoint:n}}}}}}})});break;case`assistant`:{let e={};for(let n of C)switch(n.type){case`text`:{let e=n.providerOptions?.[r],t=e?.itemId,i=e?.phase;if(c&&t!=null)break;if(s&&t!=null){y.push({type:`item_reference`,id:t});break}y.push({role:`assistant`,content:[{type:`output_text`,text:n.text}],id:t,...i!=null&&{phase:i}});break}case`tool-call`:{let e=n.providerOptions?.[r]?.itemId??n.providerMetadata?.[r]?.itemId,i=n.providerOptions?.[r]?.namespace??n.providerMetadata?.[r]?.namespace,a=n.providerOptions?.[r]?.caller;if(c&&e!=null)break;let o=t.toProviderToolName(n.toolName);if(o===`tool_search`){if(s&&e!=null){y.push({type:`item_reference`,id:e});break}let t=typeof n.input==`string`?await p({text:n.input,schema:Zt}):await A({value:n.input,schema:Zt}),r=t.call_id==null?`server`:`client`;y.push({type:`tool_search_call`,id:e??n.toolCallId,execution:r,call_id:t.call_id??null,status:`completed`,arguments:t.arguments});break}if(o===`programmatic_tool_calling`){if(s&&e!=null){y.push({type:`item_reference`,id:e});break}let t=await A({value:n.input,schema:dn});y.push({type:`program`,id:e??n.toolCallId,call_id:n.toolCallId,code:t.code,fingerprint:t.fingerprint});break}if(n.providerExecuted){s&&e!=null&&y.push({type:`item_reference`,id:e});break}if(u&&s&&e!=null)break;let l=d&&o===`local_shell`||f&&o===`shell`||m&&o===`apply_patch`||g&&o===`computer`||(_?.has(o)??!1);if(s&&e!=null&&l){y.push({type:`item_reference`,id:e});break}if(d&&o===`local_shell`){let t=await A({value:n.input,schema:Ht});y.push({type:`local_shell_call`,call_id:n.toolCallId,id:e,action:{type:`exec`,command:t.action.command,timeout_ms:t.action.timeoutMs,user:t.action.user,working_directory:t.action.workingDirectory,env:t.action.env}});break}if(f&&o===`shell`){let t=await A({value:n.input,schema:Gt});y.push({type:`shell_call`,call_id:n.toolCallId,id:e,status:`completed`,action:{commands:t.action.commands,timeout_ms:t.action.timeoutMs,max_output_length:t.action.maxOutputLength}});break}if(m&&o===`apply_patch`){let t=await A({value:n.input,schema:_t});y.push({type:`apply_patch_call`,call_id:t.callId,id:e,status:`completed`,operation:t.operation});break}if(g&&o===`computer`){let t=await A({value:n.input,schema:Dt});y.push({type:`computer_call`,call_id:n.toolCallId,id:e,status:t.status,actions:t.actions.map(e=>{switch(e.type){case`click`:case`double_click`:case`move`:return{...e,keys:e.keys};case`drag`:return{...e,keys:e.keys};case`scroll`:return{type:`scroll`,x:e.x,y:e.y,scroll_x:e.scrollX,scroll_y:e.scrollY,keys:e.keys};default:return e}}),pending_safety_checks:t.pendingSafetyChecks.map(e=>({id:e.id,code:e.code,message:e.message}))});break}if(_?.has(o)){y.push({type:`custom_tool_call`,call_id:n.toolCallId,name:o,input:typeof n.input==`string`?n.input:JSON.stringify(n.input),id:e});break}y.push({type:`function_call`,call_id:n.toolCallId,name:o,arguments:Dn(n.input),...i!=null&&{namespace:i},...a!=null&&{caller:On(a)}});break}case`tool-result`:{if(n.output.type===`execution-denied`||n.output.type===`json`&&typeof n.output.value==`object`&&n.output.value!=null&&`type`in n.output.value&&n.output.value.type===`execution-denied`||c)break;let e=t.toProviderToolName(n.toolName);if(e===`tool_search`){let e=n.providerOptions?.[r]?.itemId??n.providerMetadata?.[r]?.itemId??n.toolCallId;if(s)y.push({type:`item_reference`,id:e});else if(n.output.type===`json`){let t=await A({value:n.output.value,schema:Qt});y.push({type:`tool_search_output`,id:e,execution:`server`,call_id:null,status:`completed`,tools:t.tools})}break}if(e===`programmatic_tool_calling`){let e=n.providerOptions?.[r]?.itemId??n.providerMetadata?.[r]?.itemId??n.toolCallId;if(s)y.push({type:`item_reference`,id:e});else if(n.output.type===`json`){let t=await A({value:n.output.value,schema:fn});y.push({type:`program_output`,id:e,call_id:n.toolCallId,result:t.result,status:t.status})}break}if(f&&e===`shell`){if(n.output.type===`json`){let e=await A({value:n.output.value,schema:Kt});y.push({type:`shell_call_output`,call_id:n.toolCallId,output:e.output.map(e=>({stdout:e.stdout,stderr:e.stderr,outcome:e.outcome.type===`timeout`?{type:`timeout`}:{type:`exit`,exit_code:e.outcome.exitCode}}))})}break}if(s){let e=n.providerOptions?.[r]?.itemId??n.toolCallId;y.push({type:`item_reference`,id:e})}else b.push({type:`other`,message:`Results for OpenAI tool ${n.toolName} are not sent to the API when store is false`});break}case`reasoning`:{let t=await w({provider:r,providerOptions:n.providerOptions,schema:jn}),i=t?.itemId;if((c||u)&&i!=null)break;if(i!=null){let r=e[i];if(s)r===void 0&&(y.push({type:`item_reference`,id:i}),e[i]={type:`reasoning`,id:i,summary:[]});else{let a=[];n.text.length>0?a.push({type:`summary_text`,text:n.text}):r!==void 0&&b.push({type:`other`,message:`Cannot append empty reasoning part to existing reasoning sequence. Skipping reasoning part: ${JSON.stringify(n)}.`}),r===void 0?(e[i]={type:`reasoning`,id:i,encrypted_content:t?.reasoningEncryptedContent,summary:a},y.push(e[i])):(r.summary.push(...a),t?.reasoningEncryptedContent!=null&&(r.encrypted_content=t.reasoningEncryptedContent))}}else{let e=t?.reasoningEncryptedContent;if(e!=null){let t=[];n.text.length>0&&t.push({type:`summary_text`,text:n.text}),y.push({type:`reasoning`,encrypted_content:e,summary:t})}else b.push({type:`other`,message:`Non-OpenAI reasoning parts are not supported. Skipping reasoning part: ${JSON.stringify(n)}.`})}break}case`custom`:if(n.kind===`openai.compaction`){let e=n.providerOptions?.[r],t=e?.itemId;if(c&&t!=null)break;if(s&&t!=null){y.push({type:`item_reference`,id:t});break}let i=e?.encryptedContent;t!=null&&y.push({type:`compaction`,id:t,encrypted_content:i})}break}break}case`tool`:for(let e of C){if(e.type===`tool-approval-response`){let t=e;if(x.has(t.approvalId))continue;x.add(t.approvalId),s&&y.push({type:`item_reference`,id:t.approvalId}),y.push({type:`mcp_approval_response`,approval_request_id:t.approvalId,approve:t.approved});continue}let n=e.output;if(n.type===`execution-denied`&&n.providerOptions?.openai?.approvalId)continue;let i=t.toProviderToolName(e.toolName);if(i===`tool_search`&&n.type===`json`){let t=await A({value:n.value,schema:Qt});y.push({type:`tool_search_output`,execution:`client`,call_id:e.toolCallId,status:`completed`,tools:t.tools});continue}if(d&&i===`local_shell`&&n.type===`json`){let t=await A({value:n.value,schema:Ut});y.push({type:`local_shell_call_output`,call_id:e.toolCallId,output:t.output});continue}if(f&&i===`shell`&&n.type===`json`){let t=await A({value:n.value,schema:Kt});y.push({type:`shell_call_output`,call_id:e.toolCallId,output:t.output.map(e=>({stdout:e.stdout,stderr:e.stderr,outcome:e.outcome.type===`timeout`?{type:`timeout`}:{type:`exit`,exit_code:e.outcome.exitCode}}))});continue}if(m&&e.toolName===`apply_patch`&&n.type===`json`){let t=await A({value:n.value,schema:vt});y.push({type:`apply_patch_call_output`,call_id:e.toolCallId,status:t.status,output:t.output});continue}if(g&&i===`computer`&&n.type===`json`){let t=await A({value:n.value,schema:Ot});y.push({type:`computer_call_output`,call_id:e.toolCallId,output:{type:`computer_screenshot`,image_url:t.output.imageUrl,file_id:t.output.fileId,detail:t.output.detail},acknowledged_safety_checks:t.acknowledgedSafetyChecks?.map(e=>({id:e.id,code:e.code,message:e.message}))});continue}if(_?.has(i)){let t;switch(n.type){case`text`:case`error-text`:t=n.value;break;case`execution-denied`:t=n.reason??`Tool call execution denied.`;break;case`json`:case`error-json`:t=JSON.stringify(n.value);break;case`content`:t=n.value.map(e=>{let t=Q(e.providerOptions,r);switch(e.type){case`text`:return{type:`input_text`,text:e.text,...t!=null&&{prompt_cache_breakpoint:t}};case`file`:{let n=l(e.mediaType),i=e.providerOptions?.[r]?.imageDetail;if(e.data.type===`data`){let r=h({part:e});return n===`image`?{type:`input_image`,image_url:`data:${r};base64,${M(e.data.data)}`,detail:i,...t!=null&&{prompt_cache_breakpoint:t}}:{type:`input_file`,filename:e.filename??`data`,file_data:`data:${r};base64,${M(e.data.data)}`,...t!=null&&{prompt_cache_breakpoint:t}}}if(e.data.type===`url`)return n===`image`?{type:`input_image`,image_url:e.data.url.toString(),detail:i,...t!=null&&{prompt_cache_breakpoint:t}}:{type:`input_file`,file_url:e.data.url.toString(),...t!=null&&{prompt_cache_breakpoint:t}};b.push({type:`other`,message:`unsupported custom tool content part type: ${e.type} with data type: ${e.data.type}`});return}default:b.push({type:`other`,message:`unsupported custom tool content part type: ${e.type}`});return}}).filter(le);break;default:t=``}y.push({type:`custom_tool_call_output`,call_id:e.toolCallId,output:t});continue}let a,o=v?.has(e.toolName);switch(n.type){case`text`:case`error-text`:a=o?JSON.stringify(n.value):n.value;break;case`execution-denied`:{let e=n.reason??`Tool call execution denied.`;a=o?JSON.stringify(e):e;break}case`json`:case`error-json`:a=JSON.stringify(n.value);break;case`content`:a=n.value.map(e=>{let t=Q(e.providerOptions,r);switch(e.type){case`text`:return{type:`input_text`,text:e.text,...t!=null&&{prompt_cache_breakpoint:t}};case`file`:{let n=l(e.mediaType),i=e.providerOptions?.[r]?.imageDetail;if(e.data.type===`data`){let r=h({part:e});return n===`image`?{type:`input_image`,image_url:`data:${r};base64,${M(e.data.data)}`,detail:i,...t!=null&&{prompt_cache_breakpoint:t}}:{type:`input_file`,filename:e.filename??`data`,file_data:`data:${r};base64,${M(e.data.data)}`,...t!=null&&{prompt_cache_breakpoint:t}}}if(e.data.type===`url`)return n===`image`?{type:`input_image`,image_url:e.data.url.toString(),detail:i,...t!=null&&{prompt_cache_breakpoint:t}}:{type:`input_file`,file_url:e.data.url.toString(),...t!=null&&{prompt_cache_breakpoint:t}};b.push({type:`other`,message:`unsupported tool content part type: ${e.type} with data type: ${e.data.type}`});return}default:b.push({type:`other`,message:`unsupported tool content part type: ${e.type}`});return}}).filter(le);break}let c=On(e.providerOptions?.[r]?.caller);y.push({type:`function_call_output`,call_id:e.toolCallId,output:a,...c!=null&&{caller:c}})}break;default:throw Error(`Unsupported role: ${S}`)}return!s&&y.some(e=>`type`in e&&e.type===`reasoning`&&e.encrypted_content==null)&&(b.push({type:`other`,message:`Reasoning parts without encrypted content are not supported when store is false. Skipping reasoning parts.`}),y=y.filter(e=>!(`type`in e)||e.type!==`reasoning`||e.encrypted_content!=null)),{input:y,warnings:b}}var jn=c({itemId:u().nullish(),reasoningEncryptedContent:u().nullish()}),Mn=20,Nn=d(()=>R(c({conversation:u().nullish(),include:I(F([`reasoning.encrypted_content`,`file_search_call.results`,`web_search_call.results`,`message.output_text.logprobs`])).nullish(),instructions:u().nullish(),logprobs:v([k(),x().min(1).max(Mn)]).optional(),maxToolCalls:x().nullish(),metadata:B().nullish(),parallelToolCalls:k().nullish(),previousResponseId:u().nullish(),promptCacheKey:u().nullish(),promptCacheOptions:c({mode:F([`implicit`,`explicit`]).optional(),ttl:j(`30m`).optional()}).optional(),promptCacheRetention:F([`in_memory`,`24h`]).nullish(),reasoningEffort:u().nullish(),reasoningMode:F([`standard`,`pro`]).optional(),reasoningContext:F([`auto`,`current_turn`,`all_turns`]).optional(),reasoningSummary:u().nullish(),safetyIdentifier:u().nullish(),serviceTier:F([`auto`,`flex`,`priority`,`fast`,`default`]).nullish(),store:k().nullish(),passThroughUnsupportedFiles:k().optional(),strictJsonSchema:k().nullish(),textVerbosity:F([`low`,`medium`,`high`]).nullish(),truncation:F([`auto`,`disabled`]).nullish(),user:u().nullish(),systemMessageMode:F([`system`,`developer`,`remove`]).optional(),forceReasoning:k().optional(),contextManagement:I(c({type:j(`compaction`),compactThreshold:x()})).nullish(),allowedTools:c({toolNames:I(u()).min(1),mode:F([`auto`,`required`]).optional()}).optional()})));async function Pn({tools:e,toolChoice:t,allowedTools:n,toolNameMapping:r,customProviderToolNames:i,outputSchemaToolNames:o}){e=e?.length?e:void 0;let s=[];if(e==null)return{tools:void 0,toolChoice:void 0,toolWarnings:s};let c=[],l=new Map,u=i??new Set;for(let t of e)switch(t.type){case`function`:{let e=t.providerOptions?.openai;e?.outputSchema!=null&&o?.add(t.name);let n=Fn({tool:t,options:e}),r=e?.namespace;if(r==null)c.push(n);else{let e=l.get(r.name);if(e==null)e={type:`namespace`,name:r.name,description:r.description,tools:[]},l.set(r.name,e),c.push(e);else if(e.description!==r.description)throw new a({functionality:`conflicting descriptions for OpenAI tool namespace "${r.name}"`});e.tools.push(n)}break}case`provider`:switch(t.id){case`openai.file_search`:{let e=await A({value:t.args,schema:It});c.push({type:`file_search`,vector_store_ids:e.vectorStoreIds,max_num_results:e.maxNumResults,ranking_options:e.ranking?{ranker:e.ranking.ranker,score_threshold:e.ranking.scoreThreshold}:void 0,filters:e.filters});break}case`openai.local_shell`:c.push({type:`local_shell`});break;case`openai.shell`:{let e=await A({value:t.args,schema:Jt});c.push({type:`shell`,...e.environment&&{environment:In(e.environment)}});break}case`openai.apply_patch`:c.push({type:`apply_patch`});break;case`openai.computer`:c.push({type:`computer`});break;case`openai.web_search_preview`:{let e=await A({value:t.args,schema:an});c.push({type:`web_search_preview`,search_context_size:e.searchContextSize,user_location:e.userLocation});break}case`openai.web_search`:{let e=await A({value:t.args,schema:tn});c.push({type:`web_search`,filters:e.filters==null?void 0:{allowed_domains:e.filters.allowedDomains,blocked_domains:e.filters.blockedDomains},external_web_access:e.externalWebAccess,search_context_size:e.searchContextSize,user_location:e.userLocation});break}case`openai.code_interpreter`:{let e=await A({value:t.args,schema:St});c.push({type:`code_interpreter`,container:e.container==null?{type:`auto`,file_ids:void 0}:typeof e.container==`string`?e.container:{type:`auto`,file_ids:e.container.fileIds}});break}case`openai.image_generation`:{let e=await A({value:t.args,schema:zt});c.push({type:`image_generation`,background:e.background,input_fidelity:e.inputFidelity,input_image_mask:e.inputImageMask?{file_id:e.inputImageMask.fileId,image_url:e.inputImageMask.imageUrl}:void 0,model:e.model,moderation:e.moderation,partial_images:e.partialImages,quality:e.quality,output_compression:e.outputCompression,output_format:e.outputFormat,size:e.size});break}case`openai.mcp`:{let e=await A({value:t.args,schema:cn}),n=e=>({tool_names:e.toolNames}),r=e.requireApproval,i=r==null?void 0:typeof r==`string`?r:r.never==null?void 0:{never:n(r.never)};c.push({type:`mcp`,server_label:e.serverLabel,allowed_tools:Array.isArray(e.allowedTools)?e.allowedTools:e.allowedTools?{read_only:e.allowedTools.readOnly,tool_names:e.allowedTools.toolNames}:void 0,authorization:e.authorization,connector_id:e.connectorId,headers:e.headers,require_approval:i??`never`,server_description:e.serverDescription,server_url:e.serverUrl});break}case`openai.custom`:{let e=await A({value:t.args,schema:jt});c.push({type:`custom`,name:t.name,description:e.description,format:e.format}),u.add(t.name);break}case`openai.programmatic_tool_calling`:c.push({type:`programmatic_tool_calling`});break;case`openai.tool_search`:{let e=await A({value:t.args,schema:Xt});c.push({type:`tool_search`,...e.execution==null?{}:{execution:e.execution},...e.description==null?{}:{description:e.description},...e.parameters==null?{}:{parameters:e.parameters}});break}}break;default:s.push({type:`unsupported`,feature:`function tool ${t}`});break}if(n!=null)return{tools:c,toolChoice:{type:`allowed_tools`,mode:n.mode??`auto`,tools:n.toolNames.map(e=>({type:`function`,name:r?.toProviderToolName(e)??e}))},toolWarnings:s};if(t==null)return{tools:c,toolChoice:void 0,toolWarnings:s};let d=t.type;switch(d){case`auto`:case`none`:case`required`:return{tools:c,toolChoice:d,toolWarnings:s};case`tool`:{let e=r?.toProviderToolName(t.toolName)??t.toolName;return{tools:c,toolChoice:e===`code_interpreter`||e===`file_search`||e===`image_generation`||e===`web_search_preview`||e===`web_search`||e===`mcp`||e===`apply_patch`||e===`computer`||e===`programmatic_tool_calling`?{type:e}:u.has(e)?{type:`custom`,name:e}:{type:`function`,name:e},toolWarnings:s}}default:throw new a({functionality:`tool choice type: ${d}`})}}function Fn({tool:e,options:t}){let n=t?.deferLoading;return{type:`function`,name:e.name,description:e.description,parameters:e.inputSchema,...e.strict==null?{}:{strict:e.strict},...n==null?{}:{defer_loading:n},...t?.allowedCallers==null?{}:{allowed_callers:t.allowedCallers},...t?.outputSchema==null?{}:{output_schema:t.outputSchema}}}function In(e){if(e.type===`containerReference`)return{type:`container_reference`,container_id:e.containerId};if(e.type===`containerAuto`){let t=e;return{type:`container_auto`,file_ids:t.fileIds,memory_limit:t.memoryLimit,network_policy:t.networkPolicy==null?void 0:t.networkPolicy.type===`disabled`?{type:`disabled`}:{type:`allowlist`,allowed_domains:t.networkPolicy.allowedDomains,domain_secrets:t.networkPolicy.domainSecrets},skills:Ln(t.skills)}}return{type:`local`,skills:e.skills}}function Ln(e){return e?.map(e=>e.type===`skillReference`?{type:`skill_reference`,skill_id:E({reference:e.providerReference??{},provider:`openai`}),version:e.version??`latest`}:{type:`inline`,name:e.name,description:e.description,source:{type:`base64`,media_type:e.source.mediaType,data:e.source.data}})}function Rn(e){let t={};for(let n of e)if(n.role===`assistant`)for(let e of n.content){if(e.type!==`tool-call`)continue;let n=e.providerOptions?.openai?.approvalRequestId;n!=null&&(t[n]=e.toolCallId)}return t}function zn(e){switch(e.type){case`click`:return{type:`click`,button:e.button,x:e.x,y:e.y,...e.keys!=null&&{keys:e.keys}};case`double_click`:return{type:`double_click`,x:e.x,y:e.y,...e.keys!=null&&{keys:e.keys}};case`drag`:return{type:`drag`,path:e.path,...e.keys!=null&&{keys:e.keys}};case`keypress`:return e;case`move`:return{type:`move`,x:e.x,y:e.y,...e.keys!=null&&{keys:e.keys}};case`screenshot`:return e;case`scroll`:return{type:`scroll`,x:e.x,y:e.y,scrollX:e.scroll_x,scrollY:e.scroll_y,...e.keys!=null&&{keys:e.keys}};case`type`:return e;case`wait`:return e}}function Bn({action:e,actions:t,pending_safety_checks:n,status:r}){return{actions:(t??(e==null?[]:[e])).map(zn),pendingSafetyChecks:n?.map(e=>({id:e.id,...e.code!=null&&{code:e.code},...e.message!=null&&{message:e.message}}))??[],status:r}}var Vn=class t{constructor(e,t){this.specificationVersion=`v4`,this.supportedUrls={"image/*":[/^https?:\/\/.*$/],"application/pdf":[/^https?:\/\/.*$/]},this.modelId=e,this.config=t}static[K](e){return N({modelId:e.modelId,config:e.config})}static[q](e){return new t(e.modelId,e.config)}get provider(){return this.config.provider}async getArgs({maxOutputTokens:e,temperature:t,stopSequences:n,topP:r,topK:i,presencePenalty:a,frequencyPenalty:o,seed:s,prompt:c,reasoning:l,providerOptions:u,tools:d,toolChoice:f,responseFormat:p}){let m=[],h=we(this.modelId);i!=null&&m.push({type:`unsupported`,feature:`topK`}),s!=null&&m.push({type:`unsupported`,feature:`seed`}),a!=null&&m.push({type:`unsupported`,feature:`presencePenalty`}),o!=null&&m.push({type:`unsupported`,feature:`frequencyPenalty`}),n!=null&&m.push({type:`unsupported`,feature:`stopSequences`});let g=this.config.provider.includes(`azure`)?`azure`:`openai`,_=await w({provider:g,providerOptions:u,schema:Nn});_==null&&g!==`openai`&&(_=await w({provider:`openai`,providerOptions:u,schema:Nn}));let v=_?.reasoningEffort??(ue(l)?l:void 0),y=_?.reasoningSummary===void 0?v!=null&&v!==`none`?`detailed`:void 0:_.reasoningSummary,b=_?.forceReasoning??h.isReasoningModel;_?.conversation&&_?.previousResponseId&&m.push({type:`unsupported`,feature:`conversation`,details:`conversation and previousResponseId cannot be used together`});let x=te({tools:d,providerToolNames:{"openai.code_interpreter":`code_interpreter`,"openai.computer":`computer`,"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`,"openai.programmatic_tool_calling":`programmatic_tool_calling`}}),S=new Set,C=new Set,{tools:T,toolChoice:E,toolWarnings:D}=await Pn({tools:d,toolChoice:f,allowedTools:_?.allowedTools??void 0,toolNameMapping:x,customProviderToolNames:S,outputSchemaToolNames:C}),{input:O,warnings:k}=await An({prompt:c,toolNameMapping:x,systemMessageMode:_?.systemMessageMode??(b?`developer`:h.systemMessageMode),providerOptionsName:g,fileIdPrefixes:this.config.fileIdPrefixes,passThroughUnsupportedFiles:_?.passThroughUnsupportedFiles??!1,store:_?.store??!0,hasConversation:_?.conversation!=null,hasPreviousResponseId:_?.previousResponseId!=null,hasLocalShellTool:M(`openai.local_shell`),hasShellTool:M(`openai.shell`),hasApplyPatchTool:M(`openai.apply_patch`),hasComputerTool:M(`openai.computer`),customProviderToolNames:S.size>0?S:void 0,outputSchemaToolNames:C.size>0?C:void 0});m.push(...k);let ee=_?.strictJsonSchema??!0,A=_?.include;function j(e){A==null?A=[e]:A.includes(e)||(A=[...A,e])}function M(e){return d?.find(t=>t.type===`provider`&&t.id===e)!=null}let ne=typeof _?.logprobs==`number`?_?.logprobs:_?.logprobs===!0?Mn:void 0;ne&&j(`message.output_text.logprobs`);let re=d?.find(e=>e.type===`provider`&&(e.id===`openai.web_search`||e.id===`openai.web_search_preview`))?.name;re&&j(`web_search_call.action.sources`),M(`openai.code_interpreter`)&&j(`code_interpreter_call.outputs`);let ie=_?.store;ie===!1&&b&&j(`reasoning.encrypted_content`);let N={model:this.modelId,input:O,temperature:t,top_p:r,max_output_tokens:e,...(p?.type===`json`||_?.textVerbosity)&&{text:{...p?.type===`json`&&{format:p.schema==null?{type:`json_object`}:{type:`json_schema`,strict:ee,name:p.name??`response`,description:p.description,schema:p.schema}},..._?.textVerbosity&&{verbosity:_.textVerbosity}}},conversation:_?.conversation,max_tool_calls:_?.maxToolCalls,metadata:_?.metadata,parallel_tool_calls:_?.parallelToolCalls,previous_response_id:_?.previousResponseId,store:ie,user:_?.user,instructions:_?.instructions,service_tier:_?.serviceTier,include:A,prompt_cache_key:_?.promptCacheKey,prompt_cache_options:_?.promptCacheOptions,prompt_cache_retention:_?.promptCacheRetention,safety_identifier:_?.safetyIdentifier,top_logprobs:ne,truncation:_?.truncation,..._?.contextManagement&&{context_management:_.contextManagement.map(e=>({type:e.type,compact_threshold:e.compactThreshold}))},...b&&(v!=null||y!=null||_?.reasoningMode!=null||_?.reasoningContext!=null)&&{reasoning:{...v!=null&&{effort:v},...y!=null&&{summary:y},..._?.reasoningMode!=null&&{mode:_.reasoningMode},..._?.reasoningContext!=null&&{context:_.reasoningContext}}}};b?v===`none`&&h.supportsNonReasoningParameters||(N.temperature!=null&&(N.temperature=void 0,m.push({type:`unsupported`,feature:`temperature`,details:`temperature is not supported for reasoning models`})),N.top_p!=null&&(N.top_p=void 0,m.push({type:`unsupported`,feature:`topP`,details:`topP is not supported for reasoning models`}))):(_?.reasoningEffort!=null&&m.push({type:`unsupported`,feature:`reasoningEffort`,details:`reasoningEffort is not supported for non-reasoning models`}),_?.reasoningSummary!=null&&m.push({type:`unsupported`,feature:`reasoningSummary`,details:`reasoningSummary is not supported for non-reasoning models`}),_?.reasoningMode!=null&&m.push({type:`unsupported`,feature:`reasoningMode`,details:`reasoningMode is not supported for non-reasoning models`}),_?.reasoningContext!=null&&m.push({type:`unsupported`,feature:`reasoningContext`,details:`reasoningContext is not supported for non-reasoning models`})),_?.serviceTier===`flex`&&!h.supportsFlexProcessing&&(m.push({type:`unsupported`,feature:`serviceTier`,details:`flex processing is only available for o3, o4-mini, and gpt-5 models`}),delete N.service_tier),(_?.serviceTier===`priority`||_?.serviceTier===`fast`)&&!h.supportsPriorityProcessing&&(m.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 N.service_tier);let P=d?.find(e=>e.type===`provider`&&e.id===`openai.shell`)?.args?.environment?.type,F=P===`containerAuto`||P===`containerReference`;return{webSearchToolName:re,args:{...N,tools:T,tool_choice:E},warnings:[...m,...D],store:ie,toolNameMapping:x,providerOptionsName:g,isShellProviderExecuted:F}}async doGenerate(t){var n,r,i,a,o,s;let{args:c,warnings:l,webSearchToolName:u,toolNameMapping:d,providerOptionsName:p,isShellProviderExecuted:m}=await this.getArgs(t),h=this.config.url({path:`/responses`,modelId:this.modelId}),g=Rn(t.prompt),{responseHeaders:_,value:v,rawValue:y}=await f({url:h,headers:V((n=this.config).headers?.call(n),t.headers),body:c,failedResponseHandler:J,successfulResponseHandler:z(En),abortSignal:t.abortSignal,fetch:this.config.fetch});if(v.error)throw new e({message:v.error.message,url:h,requestBodyValues:c,statusCode:400,responseHeaders:_,responseBody:y,isRetryable:!1});if(v.output==null){let t=v.incomplete_details?.reason;throw new e({message:t?`Responses API returned no output (${t})`:`Responses API returned no output`,url:h,requestBodyValues:c,statusCode:500,responseHeaders:_,responseBody:y,isRetryable:!1})}let b=[],x=[],S=!1,C=[];for(let e of v.output)switch(e.type){case`reasoning`:e.summary.length===0&&e.summary.push({type:`summary_text`,text:``});for(let t of e.summary)b.push({type:`reasoning`,text:t.text,providerMetadata:{[p]:{itemId:e.id,reasoningEncryptedContent:e.encrypted_content??null}}});break;case`image_generation_call`:b.push({type:`tool-call`,toolCallId:e.id,toolName:d.toCustomToolName(`image_generation`),input:`{}`,providerExecuted:!0}),b.push({type:`tool-result`,toolCallId:e.id,toolName:d.toCustomToolName(`image_generation`),result:{result:e.result}});break;case`tool_search_call`:{let t=e.call_id??e.id,n=e.execution===`server`;n&&C.push(t),b.push({type:`tool-call`,toolCallId:t,toolName:d.toCustomToolName(`tool_search`),input:JSON.stringify({arguments:e.arguments,call_id:e.call_id}),...n?{providerExecuted:!0}:{},providerMetadata:{[p]:{itemId:e.id}}});break}case`tool_search_output`:{let t=e.call_id??C.shift()??e.id;b.push({type:`tool-result`,toolCallId:t,toolName:d.toCustomToolName(`tool_search`),result:{tools:e.tools},providerMetadata:{[p]:{itemId:e.id}}});break}case`local_shell_call`:b.push({type:`tool-call`,toolCallId:e.call_id,toolName:d.toCustomToolName(`local_shell`),input:JSON.stringify({action:e.action}),providerMetadata:{[p]:{itemId:e.id}}});break;case`shell_call`:b.push({type:`tool-call`,toolCallId:e.call_id,toolName:d.toCustomToolName(`shell`),input:JSON.stringify({action:{commands:e.action.commands}}),...m&&{providerExecuted:!0},providerMetadata:{[p]:{itemId:e.id}}});break;case`shell_call_output`:b.push({type:`tool-result`,toolCallId:e.call_id,toolName:d.toCustomToolName(`shell`),result:{output:e.output.map(e=>({stdout:e.stdout,stderr:e.stderr,outcome:e.outcome.type===`exit`?{type:`exit`,exitCode:e.outcome.exit_code}:{type:`timeout`}}))}});break;case`message`:for(let n of e.content){t.providerOptions?.[p]?.logprobs&&n.logprobs&&x.push(n.logprobs);let s={itemId:e.id,...e.phase!=null&&{phase:e.phase},...n.annotations.length>0&&{annotations:n.annotations}};b.push({type:`text`,text:n.text,providerMetadata:{[p]:s}});for(let e of n.annotations)e.type===`url_citation`?b.push({type:`source`,sourceType:`url`,id:(r=this.config).generateId?.call(r)??W(),url:e.url,title:e.title}):e.type===`file_citation`?b.push({type:`source`,sourceType:`document`,id:(i=this.config).generateId?.call(i)??W(),mediaType:`text/plain`,title:e.filename,filename:e.filename,providerMetadata:{[p]:{type:e.type,fileId:e.file_id,index:e.index}}}):e.type===`container_file_citation`?b.push({type:`source`,sourceType:`document`,id:(a=this.config).generateId?.call(a)??W(),mediaType:`text/plain`,title:e.filename,filename:e.filename,providerMetadata:{[p]:{type:e.type,fileId:e.file_id,containerId:e.container_id}}}):e.type===`file_path`&&b.push({type:`source`,sourceType:`document`,id:(o=this.config).generateId?.call(o)??W(),mediaType:`application/octet-stream`,title:e.file_id,filename:e.file_id,providerMetadata:{[p]:{type:e.type,fileId:e.file_id,index:e.index}}})}break;case`function_call`:S=!0,b.push({type:`tool-call`,toolCallId:e.call_id,toolName:e.name,input:e.arguments,providerMetadata:{[p]:{itemId:e.id,...e.namespace!=null&&{namespace:e.namespace},...e.caller!=null&&{caller:e.caller.type===`program`?{type:`program`,callerId:e.caller.caller_id}:e.caller}}}});break;case`program`:b.push({type:`tool-call`,toolCallId:e.call_id,toolName:d.toCustomToolName(`programmatic_tool_calling`),input:JSON.stringify({code:e.code,fingerprint:e.fingerprint}),providerExecuted:!0,providerMetadata:{[p]:{itemId:e.id}}});break;case`program_output`:b.push({type:`tool-result`,toolCallId:e.call_id,toolName:d.toCustomToolName(`programmatic_tool_calling`),result:{result:e.result,status:e.status},providerMetadata:{[p]:{itemId:e.id}}});break;case`custom_tool_call`:{S=!0;let t=d.toCustomToolName(e.name);b.push({type:`tool-call`,toolCallId:e.call_id,toolName:t,input:JSON.stringify(e.input),providerMetadata:{[p]:{itemId:e.id}}});break}case`web_search_call`:b.push({type:`tool-call`,toolCallId:e.id,toolName:d.toCustomToolName(u??`web_search`),input:JSON.stringify({}),providerExecuted:!0}),b.push({type:`tool-result`,toolCallId:e.id,toolName:d.toCustomToolName(u??`web_search`),result:cr(e.action)});break;case`mcp_call`:{let t=e.approval_request_id==null?e.id:g[e.approval_request_id]??e.id,n=`mcp.${e.name}`;b.push({type:`tool-call`,toolCallId:t,toolName:n,input:e.arguments,providerExecuted:!0,dynamic:!0}),b.push({type:`tool-result`,toolCallId:t,toolName:n,result:{type:`call`,serverLabel:e.server_label,name:e.name,arguments:e.arguments,...e.output==null?{}:{output:e.output},...e.error==null?{}:{error:e.error}},providerMetadata:{[p]:{itemId:e.id}}});break}case`mcp_list_tools`:break;case`mcp_approval_request`:{let t=e.approval_request_id??e.id,n=(s=this.config).generateId?.call(s)??W(),r=`mcp.${e.name}`;b.push({type:`tool-call`,toolCallId:n,toolName:r,input:e.arguments,providerExecuted:!0,dynamic:!0}),b.push({type:`tool-approval-request`,approvalId:t,toolCallId:n});break}case`computer_call`:{if(e.call_id==null){b.push({type:`tool-call`,toolCallId:e.id,toolName:d.toCustomToolName(`computer_use`),input:``,providerExecuted:!0}),b.push({type:`tool-result`,toolCallId:e.id,toolName:d.toCustomToolName(`computer_use`),result:{type:`computer_use_tool_result`,status:e.status}});break}S=!0;let t=d.toCustomToolName(`computer`);b.push({type:`tool-call`,toolCallId:e.call_id,toolName:t,input:JSON.stringify(Bn(e)),providerMetadata:{[p]:{itemId:e.id}}});break}case`file_search_call`:b.push({type:`tool-call`,toolCallId:e.id,toolName:d.toCustomToolName(`file_search`),input:`{}`,providerExecuted:!0}),b.push({type:`tool-result`,toolCallId:e.id,toolName:d.toCustomToolName(`file_search`),result:{queries:e.queries,results:e.results?.map(e=>({attributes:e.attributes,fileId:e.file_id,filename:e.filename,score:e.score,text:e.text}))??null}});break;case`code_interpreter_call`:b.push({type:`tool-call`,toolCallId:e.id,toolName:d.toCustomToolName(`code_interpreter`),input:JSON.stringify({code:e.code,containerId:e.container_id}),providerExecuted:!0}),b.push({type:`tool-result`,toolCallId:e.id,toolName:d.toCustomToolName(`code_interpreter`),result:{outputs:e.outputs}});break;case`apply_patch_call`:b.push({type:`tool-call`,toolCallId:e.call_id,toolName:d.toCustomToolName(`apply_patch`),input:JSON.stringify({callId:e.call_id,operation:e.operation}),providerMetadata:{[p]:{itemId:e.id}}});break;case`compaction`:b.push({type:`custom`,kind:`openai.compaction`,providerMetadata:{[p]:{type:`compaction`,itemId:e.id,encryptedContent:e.encrypted_content}}});break}let w={[p]:{responseId:v.id,...x.length>0?{logprobs:x}:{},...typeof v.service_tier==`string`?{serviceTier:v.service_tier}:{},...v.reasoning?.context==null?{}:{reasoningContext:v.reasoning.context}}},T=v.usage;return{content:b,finishReason:{unified:gn({finishReason:v.incomplete_details?.reason,hasFunctionCall:S}),raw:v.incomplete_details?.reason??void 0},usage:hn(T),request:{body:c},response:{id:v.id,timestamp:new Date(v.created_at*1e3),modelId:v.model,headers:_,body:y},providerMetadata:w,warnings:l}}async doStream(e){var t;let{args:n,warnings:r,webSearchToolName:i,toolNameMapping:a,store:o,providerOptionsName:s,isShellProviderExecuted:c}=await this.getArgs(e),l=this.config.url({path:`/responses`,modelId:this.modelId}),{responseHeaders:u,value:d}=await f({url:l,headers:V((t=this.config).headers?.call(t),e.headers),body:{...n,stream:!0},failedResponseHandler:J,successfulResponseHandler:P(Tn),abortSignal:e.abortSignal,fetch:this.config.fetch}),p=await De({stream:d,getError:e=>ar(e)||Jn(e)&&e.response.error!=null?e:void 0,isOutputChunk:sr,isAcceptedChunk:or,url:l,requestBodyValues:n,responseHeaders:u}),m=this,h=Rn(e.prompt),g=new Map,_={unified:`other`,raw:void 0},v,y=[],b=null,x={},S=[],C,w=!1,T={},E={},D=({itemId:e,outputIndex:t})=>t==null?e:E[t]??e,O,k,ee=[],A=!1;return{stream:p.pipeThrough(new TransformStream({start(e){e.enqueue({type:`stream-start`,warnings:r})},transform(t,r){var d,f,p,te,j;if(e.includeRawChunks&&r.enqueue({type:`raw`,rawValue:t.rawValue}),!t.success){let e=Un(t.rawValue)?Wn({value:t.rawValue,cause:t.error,url:l,requestBodyValues:n,responseHeaders:u}):t.error;_={unified:`error`,raw:void 0},r.enqueue({type:`error`,error:e});return}let M=t.value;if(rr(M)){if(M.item.type===`function_call`)x[M.output_index]={toolName:M.item.name,toolCallId:M.item.call_id},r.enqueue({type:`tool-input-start`,id:M.item.call_id,toolName:M.item.name});else if(M.item.type===`custom_tool_call`){let e=a.toCustomToolName(M.item.name);x[M.output_index]={toolName:e,toolCallId:M.item.call_id},r.enqueue({type:`tool-input-start`,id:M.item.call_id,toolName:e})}else if(M.item.type===`web_search_call`)x[M.output_index]={toolName:a.toCustomToolName(i??`web_search`),toolCallId:M.item.id},r.enqueue({type:`tool-input-start`,id:M.item.id,toolName:a.toCustomToolName(i??`web_search`),providerExecuted:!0}),r.enqueue({type:`tool-input-end`,id:M.item.id}),r.enqueue({type:`tool-call`,toolCallId:M.item.id,toolName:a.toCustomToolName(i??`web_search`),input:JSON.stringify({}),providerExecuted:!0});else if(M.item.type===`computer_call`){let e=M.item.call_id??M.item.id;x[M.output_index]={toolName:a.toCustomToolName(`computer`),toolCallId:e},r.enqueue({type:`tool-input-start`,id:e,toolName:a.toCustomToolName(`computer`)})}else if(M.item.type===`code_interpreter_call`)x[M.output_index]={toolName:a.toCustomToolName(`code_interpreter`),toolCallId:M.item.id,codeInterpreter:{containerId:M.item.container_id}},r.enqueue({type:`tool-input-start`,id:M.item.id,toolName:a.toCustomToolName(`code_interpreter`),providerExecuted:!0}),r.enqueue({type:`tool-input-delta`,id:M.item.id,delta:`{"containerId":"${M.item.container_id}","code":"`});else if(M.item.type===`file_search_call`)r.enqueue({type:`tool-call`,toolCallId:M.item.id,toolName:a.toCustomToolName(`file_search`),input:`{}`,providerExecuted:!0});else if(M.item.type===`image_generation_call`)r.enqueue({type:`tool-call`,toolCallId:M.item.id,toolName:a.toCustomToolName(`image_generation`),input:`{}`,providerExecuted:!0});else if(M.item.type===`tool_search_call`){let e=M.item.id,t=a.toCustomToolName(`tool_search`),n=M.item.execution===`server`;x[M.output_index]={toolName:t,toolCallId:e,toolSearchExecution:M.item.execution??`server`},n&&r.enqueue({type:`tool-input-start`,id:e,toolName:t,providerExecuted:!0})}else if(M.item.type!==`tool_search_output`&&!(M.item.type===`mcp_call`||M.item.type===`mcp_list_tools`||M.item.type===`mcp_approval_request`))if(M.item.type===`apply_patch_call`){let{call_id:e,operation:t}=M.item;if(x[M.output_index]={toolName:a.toCustomToolName(`apply_patch`),toolCallId:e,applyPatch:{hasDiff:t.type===`delete_file`,endEmitted:t.type===`delete_file`}},r.enqueue({type:`tool-input-start`,id:e,toolName:a.toCustomToolName(`apply_patch`)}),t.type===`delete_file`){let n=JSON.stringify({callId:e,operation:t});r.enqueue({type:`tool-input-delta`,id:e,delta:n}),r.enqueue({type:`tool-input-end`,id:e})}else r.enqueue({type:`tool-input-delta`,id:e,delta:`{"callId":"${$(e)}","operation":{"type":"${$(t.type)}","path":"${$(t.path)}","diff":"`})}else M.item.type===`shell_call`?x[M.output_index]={toolName:a.toCustomToolName(`shell`),toolCallId:M.item.call_id}:M.item.type===`shell_call_output`||(M.item.type===`message`?(E[M.output_index]=M.item.id,S.splice(0,S.length),C=M.item.phase??void 0,r.enqueue({type:`text-start`,id:M.item.id,providerMetadata:{[s]:{itemId:M.item.id,...M.item.phase!=null&&{phase:M.item.phase}}}})):rr(M)&&M.item.type===`reasoning`&&(E[M.output_index]=M.item.id,T[M.item.id]={encryptedContent:M.item.encrypted_content,summaryParts:{0:`active`}},r.enqueue({type:`reasoning-start`,id:`${M.item.id}:0`,providerMetadata:{[s]:{itemId:M.item.id,reasoningEncryptedContent:M.item.encrypted_content??null}}})))}else if(Kn(M))if(M.item.type===`message`){let e=D({itemId:M.item.id,outputIndex:M.output_index}),t=M.item.phase??C;C=void 0,r.enqueue({type:`text-end`,id:e,providerMetadata:{[s]:{itemId:e,...t!=null&&{phase:t},...S.length>0&&{annotations:S}}}}),E[M.output_index]=void 0}else if(M.item.type===`function_call`)x[M.output_index]=void 0,w=!0,r.enqueue({type:`tool-input-end`,id:M.item.call_id,...M.item.namespace!=null&&{providerMetadata:{[s]:{namespace:M.item.namespace}}}}),r.enqueue({type:`tool-call`,toolCallId:M.item.call_id,toolName:M.item.name,input:M.item.arguments,providerMetadata:{[s]:{itemId:M.item.id,...M.item.namespace!=null&&{namespace:M.item.namespace},...M.item.caller!=null&&{caller:M.item.caller.type===`program`?{type:`program`,callerId:M.item.caller.caller_id}:M.item.caller}}}});else if(M.item.type===`program`)r.enqueue({type:`tool-call`,toolCallId:M.item.call_id,toolName:a.toCustomToolName(`programmatic_tool_calling`),input:JSON.stringify({code:M.item.code,fingerprint:M.item.fingerprint}),providerExecuted:!0,providerMetadata:{[s]:{itemId:M.item.id}}});else if(M.item.type===`program_output`)r.enqueue({type:`tool-result`,toolCallId:M.item.call_id,toolName:a.toCustomToolName(`programmatic_tool_calling`),result:{result:M.item.result,status:M.item.status},providerMetadata:{[s]:{itemId:M.item.id}}});else if(M.item.type===`custom_tool_call`){x[M.output_index]=void 0,w=!0;let e=a.toCustomToolName(M.item.name);r.enqueue({type:`tool-input-end`,id:M.item.call_id}),r.enqueue({type:`tool-call`,toolCallId:M.item.call_id,toolName:e,input:JSON.stringify(M.item.input),providerMetadata:{[s]:{itemId:M.item.id}}})}else if(M.item.type===`web_search_call`)x[M.output_index]=void 0,r.enqueue({type:`tool-result`,toolCallId:M.item.id,toolName:a.toCustomToolName(i??`web_search`),result:cr(M.item.action)});else if(M.item.type===`computer_call`){if(x[M.output_index]=void 0,M.item.call_id==null){r.enqueue({type:`tool-input-end`,id:M.item.id}),r.enqueue({type:`tool-call`,toolCallId:M.item.id,toolName:a.toCustomToolName(`computer_use`),input:``,providerExecuted:!0}),r.enqueue({type:`tool-result`,toolCallId:M.item.id,toolName:a.toCustomToolName(`computer_use`),result:{type:`computer_use_tool_result`,status:M.item.status}});return}w=!0;let e=a.toCustomToolName(`computer`),t=JSON.stringify(Bn(M.item));r.enqueue({type:`tool-input-delta`,id:M.item.call_id,delta:t}),r.enqueue({type:`tool-input-end`,id:M.item.call_id}),r.enqueue({type:`tool-call`,toolCallId:M.item.call_id,toolName:e,input:t,providerMetadata:{[s]:{itemId:M.item.id}}})}else if(M.item.type===`file_search_call`)x[M.output_index]=void 0,r.enqueue({type:`tool-result`,toolCallId:M.item.id,toolName:a.toCustomToolName(`file_search`),result:{queries:M.item.queries,results:M.item.results?.map(e=>({attributes:e.attributes,fileId:e.file_id,filename:e.filename,score:e.score,text:e.text}))??null}});else if(M.item.type===`code_interpreter_call`)x[M.output_index]=void 0,r.enqueue({type:`tool-result`,toolCallId:M.item.id,toolName:a.toCustomToolName(`code_interpreter`),result:{outputs:M.item.outputs}});else if(M.item.type===`image_generation_call`)r.enqueue({type:`tool-result`,toolCallId:M.item.id,toolName:a.toCustomToolName(`image_generation`),result:{result:M.item.result}});else if(M.item.type===`tool_search_call`){let e=x[M.output_index],t=M.item.execution===`server`;if(e!=null){let n=t?e.toolCallId:M.item.call_id??M.item.id;t?ee.push(n):r.enqueue({type:`tool-input-start`,id:n,toolName:e.toolName}),r.enqueue({type:`tool-input-end`,id:n}),r.enqueue({type:`tool-call`,toolCallId:n,toolName:e.toolName,input:JSON.stringify({arguments:M.item.arguments,call_id:t?null:n}),...t?{providerExecuted:!0}:{},providerMetadata:{[s]:{itemId:M.item.id}}})}x[M.output_index]=void 0}else if(M.item.type===`tool_search_output`){let e=M.item.call_id??ee.shift()??M.item.id;r.enqueue({type:`tool-result`,toolCallId:e,toolName:a.toCustomToolName(`tool_search`),result:{tools:M.item.tools},providerMetadata:{[s]:{itemId:M.item.id}}})}else if(M.item.type===`mcp_call`){x[M.output_index]=void 0;let e=M.item.approval_request_id??void 0,t=e==null?M.item.id:g.get(e)??h[e]??M.item.id,n=`mcp.${M.item.name}`;r.enqueue({type:`tool-call`,toolCallId:t,toolName:n,input:M.item.arguments,providerExecuted:!0,dynamic:!0}),r.enqueue({type:`tool-result`,toolCallId:t,toolName:n,result:{type:`call`,serverLabel:M.item.server_label,name:M.item.name,arguments:M.item.arguments,...M.item.output==null?{}:{output:M.item.output},...M.item.error==null?{}:{error:M.item.error}},providerMetadata:{[s]:{itemId:M.item.id}}})}else if(M.item.type===`mcp_list_tools`)x[M.output_index]=void 0;else if(M.item.type===`apply_patch_call`){let e=x[M.output_index];e?.applyPatch&&!e.applyPatch.endEmitted&&M.item.operation.type!==`delete_file`&&(e.applyPatch.hasDiff||r.enqueue({type:`tool-input-delta`,id:e.toolCallId,delta:$(M.item.operation.diff)}),r.enqueue({type:`tool-input-delta`,id:e.toolCallId,delta:`"}}`}),r.enqueue({type:`tool-input-end`,id:e.toolCallId}),e.applyPatch.endEmitted=!0),e&&M.item.status===`completed`&&r.enqueue({type:`tool-call`,toolCallId:e.toolCallId,toolName:a.toCustomToolName(`apply_patch`),input:JSON.stringify({callId:M.item.call_id,operation:M.item.operation}),providerMetadata:{[s]:{itemId:M.item.id}}}),x[M.output_index]=void 0}else if(M.item.type===`mcp_approval_request`){x[M.output_index]=void 0;let e=(d=m.config).generateId?.call(d)??W(),t=M.item.approval_request_id??M.item.id;g.set(t,e);let n=`mcp.${M.item.name}`;r.enqueue({type:`tool-call`,toolCallId:e,toolName:n,input:M.item.arguments,providerExecuted:!0,dynamic:!0}),r.enqueue({type:`tool-approval-request`,approvalId:t,toolCallId:e})}else if(M.item.type===`local_shell_call`)x[M.output_index]=void 0,r.enqueue({type:`tool-call`,toolCallId:M.item.call_id,toolName:a.toCustomToolName(`local_shell`),input:JSON.stringify({action:{type:`exec`,command:M.item.action.command,timeoutMs:M.item.action.timeout_ms,user:M.item.action.user,workingDirectory:M.item.action.working_directory,env:M.item.action.env}}),providerMetadata:{[s]:{itemId:M.item.id}}});else if(M.item.type===`shell_call`)x[M.output_index]=void 0,r.enqueue({type:`tool-call`,toolCallId:M.item.call_id,toolName:a.toCustomToolName(`shell`),input:JSON.stringify({action:{commands:M.item.action.commands}}),...c&&{providerExecuted:!0},providerMetadata:{[s]:{itemId:M.item.id}}});else if(M.item.type===`shell_call_output`)r.enqueue({type:`tool-result`,toolCallId:M.item.call_id,toolName:a.toCustomToolName(`shell`),result:{output:M.item.output.map(e=>({stdout:e.stdout,stderr:e.stderr,outcome:e.outcome.type===`exit`?{type:`exit`,exitCode:e.outcome.exit_code}:{type:`timeout`}}))}});else if(M.item.type===`reasoning`){let e=D({itemId:M.item.id,outputIndex:M.output_index}),t=T[e];if(t!=null){let n=Object.entries(t.summaryParts).filter(([e,t])=>t===`active`||t===`can-conclude`).map(([e])=>e);for(let t of n)r.enqueue({type:`reasoning-end`,id:`${e}:${t}`,providerMetadata:{[s]:{itemId:e,reasoningEncryptedContent:M.item.encrypted_content??null}}});delete T[e]}E[M.output_index]=void 0}else M.item.type===`compaction`&&r.enqueue({type:`custom`,kind:`openai.compaction`,providerMetadata:{[s]:{type:`compaction`,itemId:M.item.id,encryptedContent:M.item.encrypted_content}}});else if(Xn(M)){let e=x[M.output_index];e!=null&&r.enqueue({type:`tool-input-delta`,id:e.toolCallId,delta:M.delta})}else if(Zn(M)){let e=x[M.output_index];e!=null&&r.enqueue({type:`tool-input-delta`,id:e.toolCallId,delta:M.delta})}else if(tr(M)){let e=x[M.output_index];e?.applyPatch&&(r.enqueue({type:`tool-input-delta`,id:e.toolCallId,delta:$(M.delta)}),e.applyPatch.hasDiff=!0)}else if(nr(M)){let e=x[M.output_index];e?.applyPatch&&!e.applyPatch.endEmitted&&(e.applyPatch.hasDiff||(r.enqueue({type:`tool-input-delta`,id:e.toolCallId,delta:$(M.diff)}),e.applyPatch.hasDiff=!0),r.enqueue({type:`tool-input-delta`,id:e.toolCallId,delta:`"}}`}),r.enqueue({type:`tool-input-end`,id:e.toolCallId}),e.applyPatch.endEmitted=!0)}else if(Qn(M))r.enqueue({type:`tool-result`,toolCallId:M.item_id,toolName:a.toCustomToolName(`image_generation`),result:{result:M.partial_image_b64},preliminary:!0});else if($n(M)){let e=x[M.output_index];e!=null&&r.enqueue({type:`tool-input-delta`,id:e.toolCallId,delta:$(M.delta)})}else if(er(M)){let e=x[M.output_index];e!=null&&(r.enqueue({type:`tool-input-delta`,id:e.toolCallId,delta:`"}`}),r.enqueue({type:`tool-input-end`,id:e.toolCallId}),r.enqueue({type:`tool-call`,toolCallId:e.toolCallId,toolName:a.toCustomToolName(`code_interpreter`),input:JSON.stringify({code:M.code,containerId:e.codeInterpreter.containerId}),providerExecuted:!0}))}else if(Yn(M))b=M.response.id,r.enqueue({type:`response-metadata`,id:M.response.id,timestamp:new Date(M.response.created_at*1e3),modelId:M.response.model});else if(Hn(M)){let t=D({itemId:M.item_id,outputIndex:M.output_index});r.enqueue({type:`text-delta`,id:t,delta:M.delta}),e.providerOptions?.[s]?.logprobs&&M.logprobs&&y.push(M.logprobs)}else if(M.type===`response.reasoning_summary_part.added`){let e=D({itemId:M.item_id,outputIndex:M.output_index});if(M.summary_index>0){let t=T[e];if(t!=null){t.summaryParts[M.summary_index]=`active`;for(let n of Object.keys(t.summaryParts))t.summaryParts[n]===`can-conclude`&&(r.enqueue({type:`reasoning-end`,id:`${e}:${n}`,providerMetadata:{[s]:{itemId:e}}}),t.summaryParts[n]=`concluded`);r.enqueue({type:`reasoning-start`,id:`${e}:${M.summary_index}`,providerMetadata:{[s]:{itemId:e,reasoningEncryptedContent:t.encryptedContent??null}}})}}}else if(M.type===`response.reasoning_summary_text.delta`){let e=D({itemId:M.item_id,outputIndex:M.output_index});r.enqueue({type:`reasoning-delta`,id:`${e}:${M.summary_index}`,delta:M.delta,providerMetadata:{[s]:{itemId:e}}})}else if(M.type===`response.reasoning_summary_part.done`){let e=D({itemId:M.item_id,outputIndex:M.output_index}),t=T[e];t!=null&&(o?(r.enqueue({type:`reasoning-end`,id:`${e}:${M.summary_index}`,providerMetadata:{[s]:{itemId:e}}}),t.summaryParts[M.summary_index]=`concluded`):t.summaryParts[M.summary_index]=`can-conclude`)}else if(qn(M))_={unified:gn({finishReason:M.response.incomplete_details?.reason,hasFunctionCall:w}),raw:M.response.incomplete_details?.reason??void 0},v=M.response.usage,typeof M.response.service_tier==`string`&&(O=M.response.service_tier),M.response.reasoning?.context!=null&&(k=M.response.reasoning.context);else if(Jn(M)){let e=M.response.incomplete_details?.reason;_={unified:e?gn({finishReason:e,hasFunctionCall:w}):`error`,raw:e??`error`},v=M.response.usage??void 0,M.response.reasoning?.context!=null&&(k=M.response.reasoning.context),!A&&M.response.error!=null&&(A=!0,r.enqueue({type:`error`,error:{type:`response.failed`,sequence_number:M.sequence_number,response:{error:M.response.error,incomplete_details:M.response.incomplete_details,service_tier:M.response.service_tier}}}))}else ir(M)?(S.push(M.annotation),M.annotation.type===`url_citation`?r.enqueue({type:`source`,sourceType:`url`,id:(f=m.config).generateId?.call(f)??W(),url:M.annotation.url,title:M.annotation.title}):M.annotation.type===`file_citation`?r.enqueue({type:`source`,sourceType:`document`,id:(p=m.config).generateId?.call(p)??W(),mediaType:`text/plain`,title:M.annotation.filename,filename:M.annotation.filename,providerMetadata:{[s]:{type:M.annotation.type,fileId:M.annotation.file_id,index:M.annotation.index}}}):M.annotation.type===`container_file_citation`?r.enqueue({type:`source`,sourceType:`document`,id:(te=m.config).generateId?.call(te)??W(),mediaType:`text/plain`,title:M.annotation.filename,filename:M.annotation.filename,providerMetadata:{[s]:{type:M.annotation.type,fileId:M.annotation.file_id,containerId:M.annotation.container_id}}}):M.annotation.type===`file_path`&&r.enqueue({type:`source`,sourceType:`document`,id:(j=m.config).generateId?.call(j)??W(),mediaType:`application/octet-stream`,title:M.annotation.file_id,filename:M.annotation.file_id,providerMetadata:{[s]:{type:M.annotation.type,fileId:M.annotation.file_id,index:M.annotation.index}}})):ar(M)&&(A=!0,_={unified:`error`,raw:`error`},r.enqueue({type:`error`,error:M}))},flush(e){let t={[s]:{responseId:b,...y.length>0?{logprobs:y}:{},...O===void 0?{}:{serviceTier:O},...k===void 0?{}:{reasoningContext:k}}};e.enqueue({type:`finish`,finishReason:_,usage:hn(v),providerMetadata:t})}})),request:{body:n},response:{headers:u}}}};function Hn(e){return e.type===`response.output_text.delta`}function Un(e){let t=Gn(e);return t!=null&&Array.isArray(t.choices)&&typeof t.type!=`string`}function Wn({value:t,cause:n,url:r,requestBodyValues:i,responseHeaders:a}){return new e({message:`Received a Chat Completions stream while using the OpenAI Responses API. The default OpenAI provider model uses the Responses API. If your custom baseURL targets a Chat Completions-compatible endpoint, use openai.chat('model-id') or createOpenAI(...).chat('model-id') instead. You can also use @ai-sdk/openai-compatible for OpenAI-compatible providers.`,url:r,requestBodyValues:i,responseHeaders:a,responseBody:JSON.stringify(t),cause:n,data:t,isRetryable:!1})}function Gn(e){return typeof e==`object`&&e?e:void 0}function Kn(e){return e.type===`response.output_item.done`}function qn(e){return e.type===`response.completed`||e.type===`response.incomplete`}function Jn(e){return e.type===`response.failed`}function Yn(e){return e.type===`response.created`}function Xn(e){return e.type===`response.function_call_arguments.delta`}function Zn(e){return e.type===`response.custom_tool_call_input.delta`}function Qn(e){return e.type===`response.image_generation_call.partial_image`}function $n(e){return e.type===`response.code_interpreter_call_code.delta`}function er(e){return e.type===`response.code_interpreter_call_code.done`}function tr(e){return e.type===`response.apply_patch_call_operation_diff.delta`}function nr(e){return e.type===`response.apply_patch_call_operation_diff.done`}function rr(e){return e.type===`response.output_item.added`}function ir(e){return e.type===`response.output_text.annotation.added`}function ar(e){return e.type===`error`}function or(e){return e.type===`response.in_progress`}function sr(e){return!(e.type===`response.created`||e.type===`response.in_progress`||e.type===`response.failed`||e.type===`error`||e.type===`unknown_chunk`)}function cr(e){if(e==null)return{};switch(e.type){case`search`:return{action:{type:`search`,query:e.query??void 0,...e.queries!=null&&{queries:e.queries}},...e.sources!=null&&{sources:e.sources}};case`open_page`:return{action:{type:`openPage`,url:e.url}};case`find_in_page`:return{action:{type:`findInPage`,url:e.url,pattern:e.pattern}}}}function $(e){return JSON.stringify(e).slice(1,-1)}var lr=`/v1/responses`,ur=2880*60,dr=d(()=>R(c({id:u(),status:u(),output_file_id:u().nullish(),error_file_id:u().nullish(),created_at:x().nullish(),expires_at:x().nullish(),request_counts:c({total:x().nullish(),completed:x().nullish(),failed:x().nullish()}).nullish(),errors:c({data:I(c({code:u().nullish(),message:u().nullish()})).nullish()}).nullish()}))),fr=d(()=>R(c({custom_id:u(),response:c({status_code:x(),request_id:u().nullish(),body:L()}).nullish(),error:c({code:u(),message:u()}).nullish()}))),pr=class{constructor(e){this.options=e}async startBatch(e){var t,n;let r=[],i=[];for(let t of e.requests){let e=await this.options.prepareRequest(t);r.push(JSON.stringify({custom_id:t.id,method:`POST`,url:lr,body:e.body}),`
|
|
12
|
+
`);for(let n of e.warnings)i.push({requestId:t.id,warning:n})}let a=`batch.jsonl`,o=new Blob(r,{type:`application/jsonl`});r.length=0;let s=new FormData;s.append(`file`,o,a),s.append(`purpose`,`batch`),s.append(`expires_after[anchor]`,`created_at`),s.append(`expires_after[seconds]`,String(ur));let{value:c}=await g({url:this.getUrl(`/files`),headers:V((t=this.options.config).headers?.call(t),e.headers),body:{content:s,values:{purpose:`batch`,"expires_after[anchor]":`created_at`,"expires_after[seconds]":String(ur),file:{name:a,type:o.type,size:o.size}}},failedResponseHandler:J,successfulResponseHandler:z(rt),abortSignal:e.abortSignal,fetch:this.options.config.fetch}),{value:l}=await f({url:this.getUrl(`/batches`),headers:V((n=this.options.config).headers?.call(n),e.headers),body:{input_file_id:c.id,endpoint:lr,completion_window:`24h`},failedResponseHandler:J,successfulResponseHandler:z(dr),abortSignal:e.abortSignal,fetch:this.options.config.fetch});return{batchId:l.id,...hr(l),warnings:i}}async getBatchStatus(e){return hr(await this.retrieveBatch(e))}async getBatchResults(e){let t=await this.retrieveBatch(e);if(hr(t).status===`pending`)throw new n({argument:`batchId`,message:`OpenAI batch "${e.batchId}" is not complete.`});let r=[t.output_file_id,t.error_file_id].filter(e=>e!=null);return ee(this.iterateBatchResults({fileIds:r,options:e}))}async retrieveBatch(e){var t;let{value:n}=await S({url:this.getUrl(`/batches/${encodeURIComponent(e.batchId)}`),headers:V((t=this.options.config).headers?.call(t),e.headers),failedResponseHandler:J,successfulResponseHandler:z(dr),abortSignal:e.abortSignal,fetch:this.options.config.fetch,validateUrl:!1});return n}async*iterateBatchResults({fileIds:e,options:t}){var n;for(let r of e){let{value:e}=await S({url:this.getUrl(`/files/${encodeURIComponent(r)}/content`),headers:V((n=this.options.config).headers?.call(n),t.headers),failedResponseHandler:J,successfulResponseHandler:xr,abortSignal:t.abortSignal,fetch:this.options.config.fetch,validateUrl:!1});for await(let t of Sr(e))yield await this.convertResultLine(t)}}async convertResultLine(e){if(e.error!=null){let t={message:e.error.message,code:e.error.code};return e.error.code===`batch_cancelled`?{id:e.custom_id,status:`cancelled`,error:t}:e.error.code===`batch_expired`?{id:e.custom_id,status:`expired`,error:t}:{id:e.custom_id,status:`failed`,error:t}}if(e.response==null)return{id:e.custom_id,status:`failed`,error:{message:`OpenAI returned a batch result without a response or error.`,code:`invalid_batch_result`}};if(e.response.status_code<200||e.response.status_code>=300)return{id:e.custom_id,status:`failed`,error:await yr({body:e.response.body,statusCode:e.response.status_code})};let t=await br(e.response.body);return t.success?{id:e.custom_id,status:`succeeded`,result:t.result}:{id:e.custom_id,status:`failed`,error:t.error}}getUrl(e){return this.options.config.url({modelId:this.options.modelId,path:e})}},mr=class e extends Vn{static[K](e){return Vn[K](e)}static[q](t){return new e(t.modelId,t.config)}constructor(e,t){super(e,t),this.batch=new pr({modelId:e,config:t,prepareRequest:async e=>{let{args:t,warnings:n}=await this.getArgs(e.options);return{body:t,warnings:n}}})}experimental_doStartBatch(e){return this.batch.startBatch(e)}experimental_doGetBatchStatus(e){return this.batch.getBatchStatus(e)}experimental_doGetBatchResults(e){return this.batch.getBatchResults(e)}};function hr(e){let t=gr(e.status),n=e.errors?.data?.[0],r=_r(e.request_counts),i=vr(e.created_at),a=vr(e.expires_at);return{status:t,rawStatus:e.status,...r==null?{}:{requestCounts:r},...n==null?{}:{error:{message:n.message??`OpenAI batch failed.`,...n.code==null?{}:{code:n.code}}},...i==null?{}:{createdAt:i},...a==null?{}:{expiresAt:a}}}function gr(e){switch(e){case`completed`:return`completed`;case`failed`:case`expired`:case`cancelled`:return`failed`;default:return`pending`}}function _r(e){let t=e?.total,n=e?.completed,r=e?.failed;if(!(t==null||n==null||r==null||t<0||n<0||r<0||n+r>t))return{total:t,pending:t-n-r,completed:n,failed:r}}function vr(e){if(e==null||!Number.isFinite(e))return;let t=new Date(e*1e3);return Number.isNaN(t.getTime())?void 0:t.toISOString()}async function yr({body:e,statusCode:t}){let n=await y({value:e,schema:Ce});return n.success?{message:n.value.error.message,type:n.value.error.type??void 0,code:n.value.error.code==null?void 0:String(n.value.error.code),statusCode:t}:{message:`OpenAI batch request failed with status code ${t}.`,statusCode:t}}async function br(e){let t=await A({value:e,schema:En});if(t.error!=null)return{success:!1,error:{message:t.error.message,type:t.error.type,code:t.error.code}};if(t.output==null){let e=t.incomplete_details?.reason;return{success:!1,error:{message:e==null?`OpenAI Responses returned no output.`:`OpenAI Responses returned no output (${e}).`,code:`invalid_response`}}}let n=[],r=[];for(let e of t.output)if(e.type===`message`)for(let t of e.content)n.push({type:`text`,text:t.text}),t.logprobs!=null&&r.push(t.logprobs);else if(e.type===`function_call`||e.type===`custom_tool_call`)return{success:!1,error:{message:`OpenAI returned a tool call, but tool calls are not supported in AI SDK text batches.`,code:`unsupported_tool_call`}};let i={openai:{responseId:t.id,...r.length>0?{logprobs:r}:{},...typeof t.service_tier==`string`?{serviceTier:t.service_tier}:{},...t.reasoning?.context==null?{}:{reasoningContext:t.reasoning.context}}};return{success:!0,result:{content:n,finishReason:{unified:gn({finishReason:t.incomplete_details?.reason,hasFunctionCall:!1}),raw:t.incomplete_details?.reason??void 0},usage:hn(t.usage),response:{id:t.id,timestamp:t.created_at==null?void 0:new Date(t.created_at*1e3),modelId:t.model},providerMetadata:i,warnings:[]}}}var xr=async({response:e})=>{if(e.body==null)throw new t;return{value:e.body}};async function*Sr(e){let t=e.getReader(),n=new TextDecoder,r=``,i=!1;try{for(;;){let{done:e,value:a}=await t.read();if(e){i=!0,r+=n.decode();break}r+=n.decode(a,{stream:!0});let o=r.indexOf(`
|
|
13
|
+
`);for(;o!==-1;){let e=r.slice(0,o).replace(/\r$/,``);r=r.slice(o+1),e.trim().length>0&&(yield await p({text:e,schema:fr})),o=r.indexOf(`
|
|
14
|
+
`)}}let e=r.replace(/\r$/,``);e.trim().length>0&&(yield await p({text:e,schema:fr}))}finally{i||await t.cancel().catch(()=>{}),t.releaseLock()}}function Cr(e){let t=e,n=t.type;switch(n){case`session.created`:return{type:`session-created`,sessionId:t.session?.id,raw:e};case`session.updated`:return{type:`session-updated`,raw:e};case`input_audio_buffer.speech_started`:return{type:`speech-started`,itemId:t.item_id,raw:e};case`input_audio_buffer.speech_stopped`:return{type:`speech-stopped`,itemId:t.item_id,raw:e};case`input_audio_buffer.committed`:return{type:`audio-committed`,itemId:t.item_id,previousItemId:t.previous_item_id,raw:e};case`conversation.item.added`:return{type:`conversation-item-added`,itemId:t.item?.id??t.item_id,item:t.item,raw:e};case`conversation.item.input_audio_transcription.completed`:return{type:`input-transcription-completed`,itemId:t.item_id,transcript:t.transcript??``,raw:e};case`response.created`:return{type:`response-created`,responseId:t.response?.id??t.response_id,raw:e};case`response.done`:return{type:`response-done`,responseId:t.response?.id??t.response_id,status:t.response?.status??`completed`,raw:e};case`response.output_item.added`:return{type:`output-item-added`,responseId:t.response_id,itemId:t.item?.id??t.item_id,raw:e};case`response.output_item.done`:return{type:`output-item-done`,responseId:t.response_id,itemId:t.item?.id??t.item_id,raw:e};case`response.content_part.added`:return{type:`content-part-added`,responseId:t.response_id,itemId:t.item_id,raw:e};case`response.content_part.done`:return{type:`content-part-done`,responseId:t.response_id,itemId:t.item_id,raw:e};case`response.output_audio.delta`:return{type:`audio-delta`,responseId:t.response_id,itemId:t.item_id,delta:t.delta,raw:e};case`response.output_audio.done`:return{type:`audio-done`,responseId:t.response_id,itemId:t.item_id,raw:e};case`response.output_audio_transcript.delta`:return{type:`audio-transcript-delta`,responseId:t.response_id,itemId:t.item_id,delta:t.delta,raw:e};case`response.output_audio_transcript.done`:return{type:`audio-transcript-done`,responseId:t.response_id,itemId:t.item_id,transcript:t.transcript,raw:e};case`response.output_text.delta`:return{type:`text-delta`,responseId:t.response_id,itemId:t.item_id,delta:t.delta,raw:e};case`response.output_text.done`:return{type:`text-done`,responseId:t.response_id,itemId:t.item_id,text:t.text,raw:e};case`response.function_call_arguments.delta`:return{type:`function-call-arguments-delta`,responseId:t.response_id,itemId:t.item_id,callId:t.call_id,delta:t.delta,raw:e};case`response.function_call_arguments.done`:return{type:`function-call-arguments-done`,responseId:t.response_id,itemId:t.item_id,callId:t.call_id,name:t.name,arguments:t.arguments,raw:e};case`error`:return{type:`error`,message:t.error?.message??t.message??`Unknown error`,code:t.error?.code??t.code,raw:e};default:return{type:`custom`,rawType:n,raw:e}}}function wr(e,t){switch(e.type){case`session-update`:return{type:`session.update`,session:Tr(e.config,t)};case`input-audio-append`:return{type:`input_audio_buffer.append`,audio:e.audio};case`input-audio-commit`:return{type:`input_audio_buffer.commit`};case`input-audio-clear`:return{type:`input_audio_buffer.clear`};case`conversation-item-create`:{let t=e.item;switch(t.type){case`text-message`:return{type:`conversation.item.create`,item:{type:`message`,role:t.role,content:[{type:`input_text`,text:t.text}]}};case`audio-message`:return{type:`conversation.item.create`,item:{type:`message`,role:t.role,content:[{type:`input_audio`,audio:t.audio}]}};case`function-call-output`:return{type:`conversation.item.create`,item:{type:`function_call_output`,call_id:t.callId,output:t.output}}}break}case`conversation-item-truncate`:return{type:`conversation.item.truncate`,item_id:e.itemId,content_index:e.contentIndex,audio_end_ms:e.audioEndMs};case`response-create`:return{type:`response.create`,...e.options==null?{}:{response:{...e.options.modalities==null?{}:{output_modalities:e.options.modalities},...e.options.instructions==null?{}:{instructions:e.options.instructions},...e.options.metadata==null?{}:{metadata:e.options.metadata}}}};case`response-cancel`:return{type:`response.cancel`}}}function Tr(e,t){let n={type:`realtime`,model:t};e.instructions!=null&&(n.instructions=e.instructions),e.outputModalities!=null&&(n.output_modalities=e.outputModalities);let r={};if(e.inputAudioFormat!=null||e.inputAudioTranscription!=null||e.turnDetection!=null){let t={};if(e.inputAudioFormat!=null&&(t.format={type:e.inputAudioFormat.type,...e.inputAudioFormat.rate==null?{}:{rate:e.inputAudioFormat.rate}}),e.turnDetection!=null)if(e.turnDetection.type===`disabled`)t.turn_detection=null;else{let n={type:e.turnDetection.type===`server-vad`?`server_vad`:`semantic_vad`};e.turnDetection.threshold!=null&&(n.threshold=e.turnDetection.threshold),e.turnDetection.silenceDurationMs!=null&&(n.silence_duration_ms=e.turnDetection.silenceDurationMs),e.turnDetection.prefixPaddingMs!=null&&(n.prefix_padding_ms=e.turnDetection.prefixPaddingMs),t.turn_detection=n}e.inputAudioTranscription!=null&&(t.transcription={model:e.inputAudioTranscription.model??`gpt-realtime-whisper`,...e.inputAudioTranscription.language==null?{}:{language:e.inputAudioTranscription.language},...e.inputAudioTranscription.prompt==null?{}:{prompt:e.inputAudioTranscription.prompt}}),r.input=t}if(e.outputAudioFormat!=null||e.voice!=null){let t={};e.outputAudioFormat!=null&&(t.format={type:e.outputAudioFormat.type,...e.outputAudioFormat.rate==null?{}:{rate:e.outputAudioFormat.rate}}),e.voice!=null&&(t.voice=e.voice),r.output=t}return Object.keys(r).length>0&&(n.audio=r),e.tools!=null&&e.tools.length>0&&(n.tools=e.tools.map(e=>({type:e.type,name:e.name,description:e.description,parameters:e.parameters})),n.tool_choice=`auto`),e.providerOptions!=null&&Object.assign(n,e.providerOptions),n}var Er=class{constructor(e,t){this.specificationVersion=`v4`,this.modelId=e,this.provider=t.provider,this.config=t}async doCreateClientSecret(e){let t=this.config.fetch??fetch,n=`${this.config.baseURL}/realtime/client_secrets`,r=e.sessionConfig==null?{type:`realtime`,model:this.modelId}:Tr(e.sessionConfig,this.modelId),i=await t(n,{method:`POST`,headers:{...this.config.headers(),"Content-Type":`application/json`},body:JSON.stringify({session:r,...e.expiresAfterSeconds==null?{}:{expires_after:{anchor:`created_at`,seconds:e.expiresAfterSeconds}}})});if(!i.ok){let e=await i.text();throw Error(`OpenAI realtime client secret request failed: ${i.status} ${e}`)}let a=await i.json();return{token:a.value,url:`wss://${new URL(this.config.baseURL).host}/v1/realtime?model=${encodeURIComponent(this.modelId)}`,expiresAt:a.expires_at}}getWebSocketConfig(e){return{url:e.url,protocols:[`realtime`,`openai-insecure-api-key.${e.token}`]}}parseServerEvent(e){return Cr(e)}serializeClientEvent(e){return wr(e,this.modelId)}buildSessionConfig(e){return Tr(e,this.modelId)}},Dr=d(()=>R(c({instructions:u().nullish(),speed:x().min(.25).max(4).default(1).nullish()}))),Or=class e{constructor(e,t){this.modelId=e,this.config=t,this.specificationVersion=`v4`}static[K](e){return N({modelId:e.modelId,config:e.config})}static[q](t){return new e(t.modelId,t.config)}get provider(){return this.config.provider}async getArgs({text:e,voice:t=`alloy`,outputFormat:n=`mp3`,speed:r,instructions:i,language:a,providerOptions:o}){let s=[],c=await w({provider:`openai`,providerOptions:o,schema:Dr}),l={model:this.modelId,input:e,voice:t,response_format:`mp3`,speed:r,instructions:i};if(n&&([`mp3`,`opus`,`aac`,`flac`,`wav`,`pcm`].includes(n)?l.response_format=n:s.push({type:`unsupported`,feature:`outputFormat`,details:`Unsupported output format: ${n}. Using mp3 instead.`})),c){let e={};for(let t in e){let n=e[t];n!==void 0&&(l[t]=n)}}return a&&s.push({type:`unsupported`,feature:`language`,details:`OpenAI speech models do not support language selection. Language parameter "${a}" was ignored.`}),{requestBody:l,warnings:s}}async doGenerate(e){var t,n;let r=((t=this.config._internal)?.currentDate)?.call(t)??new Date,{requestBody:i,warnings:a}=await this.getArgs(e),{value:o,responseHeaders:s,rawValue:c}=await f({url:this.config.url({path:`/audio/speech`,modelId:this.modelId}),headers:V((n=this.config).headers?.call(n),e.headers),body:i,failedResponseHandler:J,successfulResponseHandler:re(),abortSignal:e.abortSignal,fetch:this.config.fetch});return{audio:o,warnings:a,request:{body:JSON.stringify(i)},response:{timestamp:r,modelId:this.modelId,headers:s,body:c}}}},kr=d(()=>R(c({text:u(),language:u().nullish(),duration:x().nullish(),words:I(c({word:u(),start:x(),end:x()})).nullish(),segments:I(c({id:x(),seek:x(),start:x(),end:x(),text:u(),tokens:I(x()),temperature:x(),avg_logprob:x(),compression_ratio:x(),no_speech_prob:x()})).nullish()}))),Ar=d(()=>R(c({include:I(u()).optional(),language:u().optional(),prompt:u().optional(),temperature:x().min(0).max(1).default(0).optional(),timestampGranularities:I(F([`word`,`segment`])).default([`segment`]).optional(),streaming:c({delay:F([`minimal`,`low`,`medium`,`high`,`xhigh`]).optional(),include:I(u()).optional()}).optional()})));function jr(e){return e===`gpt-realtime-whisper`||e.startsWith(`gpt-realtime-whisper-`)}var Mr={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`},Nr=class e{constructor(e,t){this.modelId=e,this.config=t,this.specificationVersion=`v4`}static[K](e){return N({modelId:e.modelId,config:e.config})}static[q](t){return new e(t.modelId,t.config)}get provider(){return this.config.provider}async getArgs({audio:e,mediaType:t,providerOptions:n}){let r=[],i=await w({provider:`openai`,providerOptions:n,schema:Ar}),a=new FormData,o=e instanceof Uint8Array?new Blob([e]):new Blob([fe(e)]);a.append(`model`,this.modelId);let c=s(t);if(a.append(`file`,new File([o],`audio`,{type:t}),`audio.${c}`),this.modelId===`whisper-1`&&a.append(`response_format`,`verbose_json`),i){let e=[`gpt-4o-transcribe`,`gpt-4o-mini-transcribe`].includes(this.modelId),t={include:i.include,language:i.language,prompt:i.prompt,...this.modelId!==`whisper-1`&&{response_format:e?`json`:`verbose_json`},temperature:i.temperature,timestamp_granularities:i.timestampGranularities};for(let[e,n]of Object.entries(t))if(n!=null)if(Array.isArray(n))for(let t of n)a.append(`${e}[]`,String(t));else a.append(e,String(n))}return{formData:a,warnings:r}}async doGenerate(e){var t,n;if(jr(this.modelId))throw new a({functionality:`non-streaming transcription with ${this.modelId}`});let r=((t=this.config._internal)?.currentDate)?.call(t)??new Date,{formData:i,warnings:o}=await this.getArgs(e),{value:s,responseHeaders:c,rawValue:l}=await T({url:this.config.url({path:`/audio/transcriptions`,modelId:this.modelId}),headers:V((n=this.config).headers?.call(n),e.headers),formData:i,failedResponseHandler:J,successfulResponseHandler:z(kr),abortSignal:e.abortSignal,fetch:this.config.fetch}),u=s.language!=null&&s.language in Mr?Mr[s.language]:void 0;return{text:s.text,segments:s.segments?.map(e=>({text:e.text,startSecond:e.start,endSecond:e.end}))??s.words?.map(e=>({text:e.word,startSecond:e.start,endSecond:e.end}))??[],language:u,durationInSeconds:s.duration??void 0,warnings:o,response:{timestamp:r,modelId:this.modelId,headers:c,body:l}}}async doStream(e){var t,n;if(!jr(this.modelId))throw new a({functionality:`streaming transcription with ${this.modelId}`});let r=((t=this.config._internal)?.currentDate)?.call(t)??new Date,i=await w({provider:`openai`,providerOptions:e.providerOptions,schema:Ar}),o=[],s=e.providerOptions?.openai??{};for(let e of[`include`,`prompt`,`temperature`,`timestampGranularities`])s[e]!=null&&o.push({type:`unsupported`,feature:`providerOptions.openai.${e}`,details:`OpenAI streaming transcription does not support ${e}.`});let c=V((n=this.config).headers?.call(n),e.headers),l=Fr({modelId:this.modelId,inputAudioFormat:e.inputAudioFormat,providerOptions:i});return{request:{body:l},response:{timestamp:r,modelId:this.modelId},stream:Pr({webSocket:this.config.webSocket,url:be(this.config.url({path:`/realtime?intent=transcription`,modelId:this.modelId})),headers:c,sessionUpdate:l,language:i?.language,warnings:o,audio:e.audio,abortSignal:e.abortSignal,includeRawChunks:e.includeRawChunks})}}};function Pr({webSocket:e,url:t,headers:n,sessionUpdate:r,language:i,warnings:a,audio:o,abortSignal:s,includeRawChunks:c}){let l=!1,u=()=>{};return new ReadableStream({start:d=>{let f=Ir(n),p,m;u=e=>{p==null?o.cancel().catch(()=>{}):p.cancel().catch(()=>{}),m?.close(e)};let h=e=>{l||(l=!0,u(),d.error(e))},g=(e,t)=>{l||(l=!0,t!=null&&d.enqueue({type:`transcript-final`,id:t,text:e}),d.enqueue({type:`finish`,text:e,segments:[],language:i}),d.close(),u(1e3))},_=async e=>{p=o.getReader();try{for(;;){let{done:t,value:n}=await p.read();if(t||l)break;e.send(JSON.stringify({type:`input_audio_buffer.append`,audio:M(n)})),await pe(e)}}finally{p.releaseLock(),p=void 0}l||e.send(JSON.stringify({type:`input_audio_buffer.commit`}))};m=se({url:t,protocols:f.protocols,headers:f.headers,webSocket:e,abortSignal:s,onAbort:h,onProcessingError:h,onOpen:e=>{d.enqueue({type:`stream-start`,warnings:a}),e.send(JSON.stringify(r)),_(e).catch(h)},onMessageText:async e=>{let t=await D({text:e});if(!t.success)return;let n=t.value;switch(c&&d.enqueue({type:`raw`,rawValue:n}),n.type){case`conversation.item.input_audio_transcription.delta`:d.enqueue({type:`transcript-delta`,id:n.item_id,delta:n.delta??``});break;case`conversation.item.input_audio_transcription.completed`:g(n.transcript??``,n.item_id);break;case`error`:h(Error(n.error?.message??`OpenAI realtime error`));break}},onSocketError:()=>{h(Error(`OpenAI realtime transcription error`))},onClose:()=>{l||(l=!0,u(),d.close())}})},cancel:()=>{l||(l=!0,u())}})}function Fr({modelId:e,inputAudioFormat:t,providerOptions:n}){return{type:`session.update`,session:{type:`transcription`,audio:{input:{format:{type:t.type,...t.rate==null?{}:{rate:t.rate}},transcription:{model:e,...n?.language==null?{}:{language:n.language},...n?.streaming?.delay==null?{}:{delay:n.streaming.delay}},turn_detection:null}},...n?.streaming?.include==null?{}:{include:n.streaming.include}}}}function Ir(e){let t;for(let[n,r]of Object.entries(e))n.toLowerCase()===`authorization`&&r!=null&&(t=r);let n=t?.match(/^bearer\s+(.+)$/i)?.[1];return n==null?{protocols:[`realtime`],headers:e}:{protocols:[`realtime`,`openai-insecure-api-key.${n}`],headers:Object.fromEntries(Object.entries(e).filter(([e])=>e.toLowerCase()!==`authorization`))}}var Lr=d(()=>R(c({}))),Rr=class e{constructor(e,t){this.modelId=e,this.config=t,this.specificationVersion=`v4`}static[K](e){return N({modelId:e.modelId,config:e.config})}static[q](t){return new e(t.modelId,t.config)}get provider(){return this.config.provider}async doStream(e){var t,r;if(e.targetLanguage==null)throw new n({argument:`targetLanguage`,message:`targetLanguage is required for translation model '${this.modelId}'.`});let i=((t=this.config._internal)?.currentDate)?.call(t)??new Date;await w({provider:`openai`,providerOptions:e.providerOptions,schema:Lr});let a=[];Vr(e.inputAudioFormat),e.sourceLanguage!=null&&a.push({type:`unsupported`,feature:`sourceLanguage`,details:`The OpenAI Realtime translation API auto-detects the source language and does not accept a source language.`}),e.outputAudioFormat!=null&&a.push({type:`unsupported`,feature:`outputAudioFormat`,details:`The OpenAI Realtime translation API always outputs 24kHz 16-bit PCM audio and does not accept an output audio format.`});let o=V((r=this.config).headers?.call(r),e.headers),s=Br({targetLanguage:e.targetLanguage});return{request:{body:s},response:{timestamp:i,modelId:this.modelId},stream:zr({webSocket:this.config.webSocket,url:be(this.config.url({path:`/realtime/translations?model=${encodeURIComponent(this.modelId)}`,modelId:this.modelId})),headers:o,sessionUpdate:s,warnings:a,audio:e.audio,abortSignal:e.abortSignal,includeRawChunks:e.includeRawChunks})}}};function zr({webSocket:e,url:t,headers:n,sessionUpdate:r,warnings:i,audio:a,abortSignal:o,includeRawChunks:s}){let c=!1,l=()=>{};return new ReadableStream({start:u=>{let d=Hr(n),f,p,m=``,h=``;l=e=>{f==null?a.cancel().catch(()=>{}):f.cancel().catch(()=>{}),p?.close(e)};let g=e=>{c||(c=!0,l(),u.error(e))},_=()=>{c||(c=!0,m!==``&&u.enqueue({type:`source-transcript-final`,text:m}),h!==``&&u.enqueue({type:`output-text-final`,text:h}),u.enqueue({type:`finish`,sourceText:m,outputText:h,usage:void 0}),u.close(),l(1e3))},v=async e=>{f=a.getReader();try{for(;;){let{done:t,value:n}=await f.read();if(t||c)break;e.send(JSON.stringify({type:`session.input_audio_buffer.append`,audio:M(n)})),await pe(e)}}finally{f.releaseLock(),f=void 0}c||e.send(JSON.stringify({type:`session.close`}))};p=se({url:t,protocols:d.protocols,headers:d.headers,webSocket:e,abortSignal:o,onAbort:g,onProcessingError:g,onOpen:e=>{u.enqueue({type:`stream-start`,warnings:i}),e.send(JSON.stringify(r)),v(e).catch(g)},onMessageText:async e=>{if(c)return;let t=await D({text:e});if(!t.success)return;let n=t.value;switch(s&&u.enqueue({type:`raw`,rawValue:n}),n.type){case`session.output_audio.delta`:n.delta&&u.enqueue({type:`audio`,audio:n.delta});break;case`session.output_transcript.delta`:h+=n.delta??``,u.enqueue({type:`output-text-delta`,delta:n.delta??``});break;case`session.input_transcript.delta`:m+=n.delta??``,u.enqueue({type:`source-transcript-delta`,delta:n.delta??``});break;case`session.closed`:_();break;case`error`:u.enqueue({type:`error`,error:Error(n.error?.message??`OpenAI realtime error`)});break}},onSocketError:()=>{g(Error(`OpenAI realtime translation error`))},onClose:({code:e,reason:t})=>{c||g(Error(`OpenAI realtime translation WebSocket closed unexpectedly before finishing (code ${e??`unknown`}${t?`, reason: ${t}`:``}).`))}})},cancel:()=>{c||(c=!0,l())}})}function Br({targetLanguage:e}){return{type:`session.update`,session:{audio:{input:{transcription:{model:`gpt-realtime-whisper`},noise_reduction:null},output:{language:e}}}}}function Vr(e){if(e.type!==`audio/pcm`||e.rate!=null&&e.rate!==24e3)throw new n({argument:`inputAudioFormat`,message:`The OpenAI Realtime translation API only supports 24kHz 16-bit PCM input audio.`})}function Hr(e){let t;for(let[n,r]of Object.entries(e))n.toLowerCase()===`authorization`&&r!=null&&(t=r);let n=t?.match(/^bearer\s+(.+)$/i)?.[1];return n==null?{protocols:[`realtime`],headers:e}:{protocols:[`realtime`,`openai-insecure-api-key.${n}`],headers:Object.fromEntries(Object.entries(e).filter(([e])=>e.toLowerCase()!==`authorization`))}}var Ur=d(()=>R(c({id:u(),name:u().nullish(),description:u().nullish(),default_version:u().nullish(),latest_version:u().nullish(),created_at:x(),updated_at:x().nullish()})));d(()=>R(c({id:u(),version:u().nullish(),name:u().nullish(),description:u().nullish()})));var Wr=class{constructor(e){this.config=e,this.specificationVersion=`v4`}get provider(){return this.config.provider}async uploadSkill(e){let t=[];e.displayTitle!=null&&t.push({type:`unsupported`,feature:`displayTitle`});let n=new FormData;for(let t of e.files){let e=_e(t.data);n.append(`files[]`,new Blob([e]),t.path)}let{value:r}=await T({url:this.config.url({path:`/skills`}),headers:V(this.config.headers()),formData:n,failedResponseHandler:J,successfulResponseHandler:z(Ur),fetch:this.config.fetch});return{providerReference:{openai:r.id},...r.name==null?{}:{name:r.name},...r.description==null?{}:{description:r.description},...r.latest_version==null?{}:{latestVersion:r.latest_version},providerMetadata:{openai:{...r.default_version==null?{}:{defaultVersion:r.default_version},...r.created_at==null?{}:{createdAt:r.created_at},...r.updated_at==null?{}:{updatedAt:r.updated_at}}},warnings:t}}},Gr=`4.0.36`;function Kr(e={}){let t=ne(ce(_({settingValue:e.baseURL,environmentVariableName:`OPENAI_BASE_URL`})))??`https://api.openai.com/v1`,n=e.name??`openai`,r=()=>ve({Authorization:`Bearer ${m({apiKey:e.apiKey,environmentVariableName:`OPENAI_API_KEY`,description:`OpenAI`})}`,"OpenAI-Organization":e.organization,"OpenAI-Project":e.project,...e.headers},`ai-sdk/openai/${Gr}`),i=i=>new We(i,{provider:`${n}.chat`,url:({path:e})=>`${t}${e}`,headers:r,fetch:e.fetch}),a=i=>new Qe(i,{provider:`${n}.completion`,url:({path:e})=>`${t}${e}`,headers:r,fetch:e.fetch}),o=i=>new nt(i,{provider:`${n}.embedding`,url:({path:e})=>`${t}${e}`,headers:r,fetch:e.fetch}),s=i=>new mt(i,{provider:`${n}.image`,url:({path:e})=>`${t}${e}`,headers:r,fetch:e.fetch}),c=i=>new Nr(i,{provider:`${n}.transcription`,url:({path:e})=>`${t}${e}`,headers:r,fetch:e.fetch,webSocket:e.webSocket}),l=i=>new Rr(i,{provider:`${n}.speech-translation`,url:({path:e})=>`${t}${e}`,headers:r,fetch:e.fetch,webSocket:e.webSocket}),u=i=>new Or(i,{provider:`${n}.speech`,url:({path:e})=>`${t}${e}`,headers:r,fetch:e.fetch}),d=()=>new at({provider:`${n}.files`,baseURL:t,headers:r,fetch:e.fetch}),f=()=>new Wr({provider:`${n}.skills`,url:({path:e})=>`${t}${e}`,headers:r,fetch:e.fetch}),p=e=>{if(new.target)throw Error(`The OpenAI model function cannot be called with the new keyword.`);return h(e)},h=i=>new mr(i,{provider:`${n}.responses`,url:({path:e})=>`${t}${e}`,headers:r,fetch:e.fetch,fileIdPrefixes:[`file-`]}),g=i=>new Er(i,{provider:`${n}.realtime`,baseURL:t,headers:r,fetch:e.fetch}),v=Object.assign(e=>g(e),{getToken:async e=>{let t=await g(e.model).doCreateClientSecret({sessionConfig:e.sessionConfig,expiresAfterSeconds:e.expiresAfterSeconds});return{token:t.token,url:t.url,expiresAt:t.expiresAt}}}),y=function(e){return p(e)};return y.specificationVersion=`v4`,y.languageModel=p,y.chat=i,y.completion=a,y.responses=h,y.embedding=o,y.embeddingModel=o,y.textEmbedding=o,y.textEmbeddingModel=o,y.image=s,y.imageModel=s,y.transcription=c,y.transcriptionModel=c,y.translation=l,y.speechTranslationModel=l,y.speech=u,y.speechModel=u,y.files=d,y.skills=f,y.experimental_realtime=v,y.tools=mn,y}var qr=Kr();export{Er as Experimental_OpenAIRealtimeModel,Rr as Experimental_OpenAISpeechTranslationModel,Rr as Experimental_OpenAITranslationModel,Gr as VERSION,Kr as createOpenAI,qr as openai};
|