@opencode-ai/cli-darwin-x64 0.0.0-beta-202606050413 → 0.0.0-beta-202606050607
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/bin/{chunk-kkvk5eez.js.map → chunk-00dzkjhz.js.map} +1 -1
- package/bin/{chunk-xd2mrkwy.js.map → chunk-01twjd9t.js.map} +1 -1
- package/bin/{chunk-3zmvhepw.js.map → chunk-094xfckf.js.map} +1 -1
- package/bin/{chunk-2wqpg9fb.js.map → chunk-0a1sbep7.js.map} +2 -2
- package/bin/{chunk-17j53wgt.js.map → chunk-0n5bt1g8.js.map} +1 -1
- package/bin/{chunk-d6nz1m6v.js.map → chunk-0yq28232.js.map} +1 -1
- package/bin/{chunk-gv6nagng.js.map → chunk-1jjzc8en.js.map} +1 -1
- package/bin/{chunk-8rd9r1gb.js.map → chunk-1srt9zq1.js.map} +1 -1
- package/bin/{chunk-0d9ja06r.js.map → chunk-24r1extg.js.map} +1 -1
- package/bin/{chunk-3r74gwy2.js.map → chunk-267rsrtg.js.map} +1 -1
- package/bin/{chunk-yymwxqpy.js.map → chunk-2bj59myd.js.map} +1 -1
- package/bin/{chunk-jcqp2wmf.js.map → chunk-2d69p4k2.js.map} +1 -1
- package/bin/{chunk-h413ry19.js.map → chunk-2gqj6qs3.js.map} +1 -1
- package/bin/{chunk-kv0b3sh5.js.map → chunk-2hks567y.js.map} +1 -1
- package/bin/chunk-3brw1pw4.js.map +10 -0
- package/bin/{chunk-0qebdpsf.js.map → chunk-3ns5mnbb.js.map} +5 -4
- package/bin/{chunk-9vf55fj3.js.map → chunk-3qk1pb08.js.map} +1 -1
- package/bin/{chunk-rrwp4x01.js.map → chunk-3vzrwrnt.js.map} +2 -2
- package/bin/{chunk-x3ywttp7.js.map → chunk-4w6sn6ka.js.map} +1 -1
- package/bin/{chunk-n10mj2m3.js.map → chunk-4z9x1zr9.js.map} +1 -1
- package/bin/{chunk-qgpzv4wt.js.map → chunk-51brv8qd.js.map} +1 -1
- package/bin/{chunk-ck4nkjtx.js.map → chunk-563dfx2j.js.map} +1 -1
- package/bin/{chunk-ny5cyeha.js.map → chunk-58vn4c6w.js.map} +1 -1
- package/bin/{chunk-rt02k446.js.map → chunk-5dep2jyh.js.map} +1 -1
- package/bin/{chunk-pnkd37ss.js.map → chunk-5he3ax73.js.map} +1 -1
- package/bin/{chunk-1wb39pye.js.map → chunk-5j946rfb.js.map} +1 -1
- package/bin/{chunk-4980h0t7.js.map → chunk-5r8cxgxc.js.map} +1 -1
- package/bin/{chunk-98cxndhz.js.map → chunk-5szq6efb.js.map} +1 -1
- package/bin/{chunk-xaqrhtz6.js.map → chunk-5trdzhfm.js.map} +1 -1
- package/bin/{chunk-gmc0r6tm.js.map → chunk-5wmm6h35.js.map} +1 -1
- package/bin/{chunk-7fvpf4bs.js.map → chunk-66tvnnse.js.map} +1 -1
- package/bin/{chunk-sjd3wbjd.js.map → chunk-67v4vbcb.js.map} +1 -1
- package/bin/{chunk-vs30er58.js.map → chunk-6b9x631k.js.map} +1 -1
- package/bin/{chunk-g4fcmhkj.js.map → chunk-6hfeeqc8.js.map} +2 -2
- package/bin/{chunk-q6nf6fka.js.map → chunk-6htwbfva.js.map} +1 -1
- package/bin/{chunk-qq4f9z8v.js.map → chunk-71z3f2xg.js.map} +1 -1
- package/bin/{chunk-g8mpn6ke.js.map → chunk-7hyaqehy.js.map} +2 -2
- package/bin/{chunk-va2h4xya.js.map → chunk-7w1699jg.js.map} +1 -1
- package/bin/{chunk-mkze6twx.js.map → chunk-8dxqz4vx.js.map} +1 -1
- package/bin/{chunk-84amh6xf.js.map → chunk-8fawnrs0.js.map} +1 -1
- package/bin/{chunk-06d8aa69.js.map → chunk-8qdws1ne.js.map} +1 -1
- package/bin/{chunk-hxfsfpek.js.map → chunk-8wpfm04w.js.map} +1 -1
- package/bin/{chunk-3jqjf0hd.js.map → chunk-8y0z37en.js.map} +1 -1
- package/bin/{chunk-8dnkfkds.js.map → chunk-90e15fyj.js.map} +1 -1
- package/bin/{chunk-kjyd3xxc.js.map → chunk-9afhm2rq.js.map} +1 -1
- package/bin/{chunk-yg7w4jgd.js.map → chunk-9cpbbkbt.js.map} +1 -1
- package/bin/{chunk-tc8tvjey.js.map → chunk-ay5sdrq5.js.map} +2 -2
- package/bin/{chunk-9f8tmby0.js.map → chunk-bep15vm4.js.map} +1 -1
- package/bin/{chunk-vmbpvmpg.js.map → chunk-bjtanfsz.js.map} +1 -1
- package/bin/{chunk-tcqtz83b.js.map → chunk-c8d6exp6.js.map} +1 -1
- package/bin/{chunk-hp5nnq6f.js.map → chunk-caj38hx8.js.map} +1 -1
- package/bin/{chunk-sfk73pp2.js.map → chunk-csexd3e9.js.map} +1 -1
- package/bin/{chunk-hav16yge.js.map → chunk-d35vqxtw.js.map} +1 -1
- package/bin/{chunk-cyb9bpgm.js.map → chunk-d9ay6qca.js.map} +1 -1
- package/bin/{chunk-p7j7e7hb.js.map → chunk-dc6grv94.js.map} +1 -1
- package/bin/{chunk-k0980eb5.js.map → chunk-dhr2x6qc.js.map} +1 -1
- package/bin/{chunk-dk4qekzk.js.map → chunk-dj3n1gz9.js.map} +1 -1
- package/bin/{chunk-m9md5mth.js.map → chunk-dk0ryzde.js.map} +1 -1
- package/bin/{chunk-w7p62pb6.js.map → chunk-dqry7reh.js.map} +1 -1
- package/bin/{chunk-d1p8awq6.js.map → chunk-ds933zn3.js.map} +1 -1
- package/bin/{chunk-6ttpn29p.js.map → chunk-dz7a5fyh.js.map} +1 -1
- package/bin/{chunk-7vb6kdat.js.map → chunk-e1v2epap.js.map} +1 -1
- package/bin/{chunk-d7v38w4j.js.map → chunk-eygq9tnw.js.map} +1 -1
- package/bin/{chunk-9y4hgfns.js.map → chunk-f9y6s5dn.js.map} +1 -1
- package/bin/{chunk-swbdmja3.js.map → chunk-fc59m93b.js.map} +1 -1
- package/bin/{chunk-mf0qqhvb.js.map → chunk-g06twqwt.js.map} +1 -1
- package/bin/{chunk-p89bk96c.js.map → chunk-gb9cn8xk.js.map} +1 -1
- package/bin/{chunk-9hq8aywf.js.map → chunk-habd2zb7.js.map} +1 -1
- package/bin/{chunk-s983v0dp.js.map → chunk-hczcsgeg.js.map} +1 -1
- package/bin/{chunk-94yf089p.js.map → chunk-hx4hrnc1.js.map} +1 -1
- package/bin/{chunk-xs0ras4j.js.map → chunk-j0whcw6t.js.map} +1 -1
- package/bin/{chunk-p3pr1t3k.js.map → chunk-j7nfke6k.js.map} +1 -1
- package/bin/{chunk-32ewzcjk.js.map → chunk-jkwj9fs3.js.map} +1 -1
- package/bin/{chunk-8akfq1ty.js.map → chunk-jshrcjs5.js.map} +2 -2
- package/bin/{chunk-cab6ccj0.js.map → chunk-jzs9n0j5.js.map} +2 -2
- package/bin/{chunk-d9g5798m.js.map → chunk-k1rzyemp.js.map} +1 -1
- package/bin/{chunk-tvxakxv2.js.map → chunk-k3ts9xpy.js.map} +1 -1
- package/bin/{chunk-9pcp46bs.js.map → chunk-k89r0qpm.js.map} +22 -18
- package/bin/{chunk-ymy66kr8.js.map → chunk-k8aw4xj3.js.map} +2 -2
- package/bin/{chunk-qbpebjh2.js.map → chunk-mgnakf8s.js.map} +1 -1
- package/bin/chunk-mh8m416a.js.map +9 -0
- package/bin/{chunk-san15sca.js.map → chunk-nczqpjnh.js.map} +1 -1
- package/bin/{chunk-cvm4kr56.js.map → chunk-ne38zr15.js.map} +1 -1
- package/bin/chunk-ng4heg9z.js.map +9 -0
- package/bin/{chunk-gahs293a.js.map → chunk-ph9dmmvn.js.map} +1 -1
- package/bin/{chunk-xt7ap9fb.js.map → chunk-pyx64x7f.js.map} +2 -2
- package/bin/{chunk-fs6t8jdg.js.map → chunk-q2382j01.js.map} +1 -1
- package/bin/{chunk-zkqyr3hc.js.map → chunk-qdf44zd9.js.map} +1 -1
- package/bin/{chunk-01tb5qes.js.map → chunk-qgadgd0b.js.map} +1 -1
- package/bin/{chunk-gh9dcqbv.js.map → chunk-qrv36618.js.map} +1 -1
- package/bin/{chunk-p3nkd9t2.js.map → chunk-r3g4d1sf.js.map} +1 -1
- package/bin/{chunk-mzjs3qj3.js.map → chunk-ravdtrkh.js.map} +1 -1
- package/bin/{chunk-fzcqzwx5.js.map → chunk-rect24wp.js.map} +1 -1
- package/bin/{chunk-1jb1dn9p.js.map → chunk-rh1cqh58.js.map} +1 -1
- package/bin/{chunk-wr4x72qd.js.map → chunk-rmt8ghn4.js.map} +1 -1
- package/bin/{chunk-4de8gawx.js.map → chunk-rssj1p0v.js.map} +1 -1
- package/bin/{chunk-fdw7znt6.js.map → chunk-rvf5cbzt.js.map} +2 -2
- package/bin/chunk-s4k86gsy.js.map +9 -0
- package/bin/{chunk-nkhzpsnk.js.map → chunk-s8fzc9my.js.map} +1 -1
- package/bin/{chunk-g4ff66n8.js.map → chunk-sbqne7np.js.map} +1 -1
- package/bin/chunk-sevseqbq.js.map +9 -0
- package/bin/{chunk-c2gsyspz.js.map → chunk-srv13ex9.js.map} +1 -1
- package/bin/{chunk-yx4z6xsb.js.map → chunk-sstynsrs.js.map} +2 -2
- package/bin/{chunk-aag5p1fp.js.map → chunk-stma0bjm.js.map} +2 -2
- package/bin/{chunk-943th5qs.js.map → chunk-stmvhy1d.js.map} +1 -1
- package/bin/{chunk-xfh2377b.js.map → chunk-syvvz2kz.js.map} +1 -1
- package/bin/{chunk-dzzhxh1c.js.map → chunk-t0vxmebt.js.map} +1 -1
- package/bin/chunk-tb3ddhhy.js.map +9 -0
- package/bin/chunk-tkf420bz.js.map +9 -0
- package/bin/{chunk-tgxxchfy.js.map → chunk-tq7p74c2.js.map} +1 -1
- package/bin/{chunk-xya5qk3h.js.map → chunk-tz8qtdwa.js.map} +1 -1
- package/bin/{chunk-dcn0azxw.js.map → chunk-v1acxjrb.js.map} +1 -1
- package/bin/{chunk-pjbsd0sw.js.map → chunk-va9kbmg7.js.map} +1 -1
- package/bin/{chunk-njn9a3jp.js.map → chunk-vfawbmgk.js.map} +1 -1
- package/bin/chunk-vhjc1xhb.js.map +9 -0
- package/bin/chunk-vkc26enp.js.map +9 -0
- package/bin/{chunk-8x80qvzn.js.map → chunk-wh4tjf7w.js.map} +1 -1
- package/bin/{chunk-q4n12vgf.js.map → chunk-wz03fvr7.js.map} +1 -1
- package/bin/{chunk-07w2xsfy.js.map → chunk-x0qvaeq5.js.map} +1 -1
- package/bin/{chunk-z70c75xe.js.map → chunk-x3zawn3w.js.map} +1 -1
- package/bin/{chunk-0azwkk9z.js.map → chunk-xd5hhydg.js.map} +1 -1
- package/bin/{chunk-x9zjg1f7.js.map → chunk-xgc5g9zp.js.map} +1 -1
- package/bin/{chunk-x988wmrk.js.map → chunk-xjz65pxd.js.map} +1 -1
- package/bin/{chunk-1paeax4j.js.map → chunk-yerk1fzb.js.map} +1 -1
- package/bin/{chunk-gyavdmtb.js.map → chunk-yqevrpk5.js.map} +1 -1
- package/bin/{chunk-3n6vddyq.js.map → chunk-yx6c5kwa.js.map} +1 -1
- package/bin/{chunk-yhpv46tb.js.map → chunk-zgevjtft.js.map} +1 -1
- package/bin/{chunk-9w9rk9en.js.map → chunk-zh1hcqmd.js.map} +1 -1
- package/bin/index.js.map +1 -1
- package/bin/lildax +0 -0
- package/package.json +1 -1
- package/bin/chunk-9fbstsnw.js.map +0 -9
- package/bin/chunk-bt0r89ee.js.map +0 -9
- package/bin/chunk-efsmps94.js.map +0 -9
- package/bin/chunk-hrcbafh3.js.map +0 -9
- package/bin/chunk-kghptcgb.js.map +0 -9
- package/bin/chunk-mfr0xsxw.js.map +0 -9
- package/bin/chunk-n2fbt143.js.map +0 -9
- package/bin/chunk-s39nwv01.js.map +0 -9
- /package/bin/{chunk-jt9t8203.js.map → chunk-3n9pdrx3.js.map} +0 -0
- /package/bin/{chunk-vezq3hc4.js.map → chunk-g3pfgtfg.js.map} +0 -0
- /package/bin/{chunk-n6a0rctn.js.map → chunk-h4y8edw2.js.map} +0 -0
- /package/bin/{chunk-dk9tgwkh.js.map → chunk-szpksttz.js.map} +0 -0
- /package/bin/{chunk-4q5k6a0e.js.map → chunk-tf648vq4.js.map} +0 -0
- /package/bin/{chunk-r55kafff.js.map → chunk-vcx2bt68.js.map} +0 -0
- /package/bin/{chunk-c8hr0q5n.js.map → chunk-zhsdkzkr.js.map} +0 -0
|
@@ -5,6 +5,6 @@
|
|
|
5
5
|
"// src/openai-provider.ts\nimport {\n loadApiKey,\n loadOptionalSetting,\n withoutTrailingSlash,\n withUserAgentSuffix\n} from \"@ai-sdk/provider-utils\";\n\n// src/chat/openai-chat-language-model.ts\nimport {\n InvalidResponseDataError\n} from \"@ai-sdk/provider\";\nimport {\n combineHeaders,\n createEventSourceResponseHandler,\n createJsonResponseHandler,\n generateId,\n isParsableJson,\n parseProviderOptions,\n postJsonToApi\n} from \"@ai-sdk/provider-utils\";\n\n// src/openai-error.ts\nimport { z } from \"zod/v4\";\nimport { createJsonErrorResponseHandler } from \"@ai-sdk/provider-utils\";\nvar openaiErrorDataSchema = z.object({\n error: z.object({\n message: z.string(),\n // The additional information below is handled loosely to support\n // OpenAI-compatible providers that have slightly different error\n // responses:\n type: z.string().nullish(),\n param: z.any().nullish(),\n code: z.union([z.string(), z.number()]).nullish()\n })\n});\nvar openaiFailedResponseHandler = createJsonErrorResponseHandler({\n errorSchema: openaiErrorDataSchema,\n errorToMessage: (data) => data.error.message\n});\n\n// src/openai-language-model-capabilities.ts\nfunction getOpenAILanguageModelCapabilities(modelId) {\n const supportsFlexProcessing = modelId.startsWith(\"o3\") || modelId.startsWith(\"o4-mini\") || modelId.startsWith(\"gpt-5\") && !modelId.startsWith(\"gpt-5-chat\");\n const supportsPriorityProcessing = modelId.startsWith(\"gpt-4\") || modelId.startsWith(\"gpt-5\") && !modelId.startsWith(\"gpt-5-nano\") && !modelId.startsWith(\"gpt-5-chat\") && !modelId.startsWith(\"gpt-5.4-nano\") || modelId.startsWith(\"o3\") || modelId.startsWith(\"o4-mini\");\n const isReasoningModel = modelId.startsWith(\"o1\") || modelId.startsWith(\"o3\") || modelId.startsWith(\"o4-mini\") || modelId.startsWith(\"gpt-5\") && !modelId.startsWith(\"gpt-5-chat\");\n const supportsNonReasoningParameters = modelId.startsWith(\"gpt-5.1\") || modelId.startsWith(\"gpt-5.2\") || modelId.startsWith(\"gpt-5.3\") || modelId.startsWith(\"gpt-5.4\");\n const systemMessageMode = isReasoningModel ? \"developer\" : \"system\";\n return {\n supportsFlexProcessing,\n supportsPriorityProcessing,\n isReasoningModel,\n systemMessageMode,\n supportsNonReasoningParameters\n };\n}\n\n// src/chat/convert-openai-chat-usage.ts\nfunction convertOpenAIChatUsage(usage) {\n var _a, _b, _c, _d, _e, _f;\n if (usage == null) {\n return {\n inputTokens: {\n total: void 0,\n noCache: void 0,\n cacheRead: void 0,\n cacheWrite: void 0\n },\n outputTokens: {\n total: void 0,\n text: void 0,\n reasoning: void 0\n },\n raw: void 0\n };\n }\n const promptTokens = (_a = usage.prompt_tokens) != null ? _a : 0;\n const completionTokens = (_b = usage.completion_tokens) != null ? _b : 0;\n const cachedTokens = (_d = (_c = usage.prompt_tokens_details) == null ? void 0 : _c.cached_tokens) != null ? _d : 0;\n const reasoningTokens = (_f = (_e = usage.completion_tokens_details) == null ? void 0 : _e.reasoning_tokens) != null ? _f : 0;\n return {\n inputTokens: {\n total: promptTokens,\n noCache: promptTokens - cachedTokens,\n cacheRead: cachedTokens,\n cacheWrite: void 0\n },\n outputTokens: {\n total: completionTokens,\n text: completionTokens - reasoningTokens,\n reasoning: reasoningTokens\n },\n raw: usage\n };\n}\n\n// src/chat/convert-to-openai-chat-messages.ts\nimport {\n UnsupportedFunctionalityError\n} from \"@ai-sdk/provider\";\nimport { convertToBase64 } from \"@ai-sdk/provider-utils\";\nfunction serializeToolCallArguments(input) {\n return JSON.stringify(input === void 0 ? {} : input);\n}\nfunction convertToOpenAIChatMessages({\n prompt,\n systemMessageMode = \"system\"\n}) {\n var _a;\n const messages = [];\n const warnings = [];\n for (const { role, content } of prompt) {\n switch (role) {\n case \"system\": {\n switch (systemMessageMode) {\n case \"system\": {\n messages.push({ role: \"system\", content });\n break;\n }\n case \"developer\": {\n messages.push({ role: \"developer\", content });\n break;\n }\n case \"remove\": {\n warnings.push({\n type: \"other\",\n message: \"system messages are removed for this model\"\n });\n break;\n }\n default: {\n const _exhaustiveCheck = systemMessageMode;\n throw new Error(\n `Unsupported system message mode: ${_exhaustiveCheck}`\n );\n }\n }\n break;\n }\n case \"user\": {\n if (content.length === 1 && content[0].type === \"text\") {\n messages.push({ role: \"user\", content: content[0].text });\n break;\n }\n messages.push({\n role: \"user\",\n content: content.map((part, index) => {\n var _a2, _b, _c;\n switch (part.type) {\n case \"text\": {\n return { type: \"text\", text: part.text };\n }\n case \"file\": {\n if (part.mediaType.startsWith(\"image/\")) {\n const mediaType = part.mediaType === \"image/*\" ? \"image/jpeg\" : part.mediaType;\n return {\n type: \"image_url\",\n image_url: {\n url: part.data instanceof URL ? part.data.toString() : `data:${mediaType};base64,${convertToBase64(part.data)}`,\n // OpenAI specific extension: image detail\n detail: (_b = (_a2 = part.providerOptions) == null ? void 0 : _a2.openai) == null ? void 0 : _b.imageDetail\n }\n };\n } else if (part.mediaType.startsWith(\"audio/\")) {\n if (part.data instanceof URL) {\n throw new UnsupportedFunctionalityError({\n functionality: \"audio file parts with URLs\"\n });\n }\n switch (part.mediaType) {\n case \"audio/wav\": {\n return {\n type: \"input_audio\",\n input_audio: {\n data: convertToBase64(part.data),\n format: \"wav\"\n }\n };\n }\n case \"audio/mp3\":\n case \"audio/mpeg\": {\n return {\n type: \"input_audio\",\n input_audio: {\n data: convertToBase64(part.data),\n format: \"mp3\"\n }\n };\n }\n default: {\n throw new UnsupportedFunctionalityError({\n functionality: `audio content parts with media type ${part.mediaType}`\n });\n }\n }\n } else if (part.mediaType === \"application/pdf\") {\n if (part.data instanceof URL) {\n throw new UnsupportedFunctionalityError({\n functionality: \"PDF file parts with URLs\"\n });\n }\n return {\n type: \"file\",\n file: typeof part.data === \"string\" && part.data.startsWith(\"file-\") ? { file_id: part.data } : {\n filename: (_c = part.filename) != null ? _c : `part-${index}.pdf`,\n file_data: `data:application/pdf;base64,${convertToBase64(part.data)}`\n }\n };\n } else {\n throw new UnsupportedFunctionalityError({\n functionality: `file part media type ${part.mediaType}`\n });\n }\n }\n }\n })\n });\n break;\n }\n case \"assistant\": {\n let text = \"\";\n const toolCalls = [];\n for (const part of content) {\n switch (part.type) {\n case \"text\": {\n text += part.text;\n break;\n }\n case \"tool-call\": {\n toolCalls.push({\n id: part.toolCallId,\n type: \"function\",\n function: {\n name: part.toolName,\n arguments: serializeToolCallArguments(part.input)\n }\n });\n break;\n }\n }\n }\n messages.push({\n role: \"assistant\",\n content: text,\n tool_calls: toolCalls.length > 0 ? toolCalls : void 0\n });\n break;\n }\n case \"tool\": {\n for (const toolResponse of content) {\n if (toolResponse.type === \"tool-approval-response\") {\n continue;\n }\n const output = toolResponse.output;\n let contentValue;\n switch (output.type) {\n case \"text\":\n case \"error-text\":\n contentValue = output.value;\n break;\n case \"execution-denied\":\n contentValue = (_a = output.reason) != null ? _a : \"Tool execution denied.\";\n break;\n case \"content\":\n case \"json\":\n case \"error-json\":\n contentValue = JSON.stringify(output.value);\n break;\n }\n messages.push({\n role: \"tool\",\n tool_call_id: toolResponse.toolCallId,\n content: contentValue\n });\n }\n break;\n }\n default: {\n const _exhaustiveCheck = role;\n throw new Error(`Unsupported role: ${_exhaustiveCheck}`);\n }\n }\n }\n return { messages, warnings };\n}\n\n// src/chat/get-response-metadata.ts\nfunction getResponseMetadata({\n id,\n model,\n created\n}) {\n return {\n id: id != null ? id : void 0,\n modelId: model != null ? model : void 0,\n timestamp: created ? new Date(created * 1e3) : void 0\n };\n}\n\n// src/chat/map-openai-finish-reason.ts\nfunction mapOpenAIFinishReason(finishReason) {\n switch (finishReason) {\n case \"stop\":\n return \"stop\";\n case \"length\":\n return \"length\";\n case \"content_filter\":\n return \"content-filter\";\n case \"function_call\":\n case \"tool_calls\":\n return \"tool-calls\";\n default:\n return \"other\";\n }\n}\n\n// src/chat/openai-chat-api.ts\nimport { lazySchema, zodSchema } from \"@ai-sdk/provider-utils\";\nimport { z as z2 } from \"zod/v4\";\nvar openaiChatResponseSchema = lazySchema(\n () => zodSchema(\n z2.object({\n id: z2.string().nullish(),\n created: z2.number().nullish(),\n model: z2.string().nullish(),\n choices: z2.array(\n z2.object({\n message: z2.object({\n role: z2.literal(\"assistant\").nullish(),\n content: z2.string().nullish(),\n tool_calls: z2.array(\n z2.object({\n id: z2.string().nullish(),\n type: z2.literal(\"function\"),\n function: z2.object({\n name: z2.string(),\n arguments: z2.string()\n })\n })\n ).nullish(),\n annotations: z2.array(\n z2.object({\n type: z2.literal(\"url_citation\"),\n url_citation: z2.object({\n start_index: z2.number(),\n end_index: z2.number(),\n url: z2.string(),\n title: z2.string()\n })\n })\n ).nullish()\n }),\n index: z2.number(),\n logprobs: z2.object({\n content: z2.array(\n z2.object({\n token: z2.string(),\n logprob: z2.number(),\n top_logprobs: z2.array(\n z2.object({\n token: z2.string(),\n logprob: z2.number()\n })\n )\n })\n ).nullish()\n }).nullish(),\n finish_reason: z2.string().nullish()\n })\n ),\n usage: z2.object({\n prompt_tokens: z2.number().nullish(),\n completion_tokens: z2.number().nullish(),\n total_tokens: z2.number().nullish(),\n prompt_tokens_details: z2.object({\n cached_tokens: z2.number().nullish()\n }).nullish(),\n completion_tokens_details: z2.object({\n reasoning_tokens: z2.number().nullish(),\n accepted_prediction_tokens: z2.number().nullish(),\n rejected_prediction_tokens: z2.number().nullish()\n }).nullish()\n }).nullish()\n })\n )\n);\nvar openaiChatChunkSchema = lazySchema(\n () => zodSchema(\n z2.union([\n z2.object({\n id: z2.string().nullish(),\n created: z2.number().nullish(),\n model: z2.string().nullish(),\n choices: z2.array(\n z2.object({\n delta: z2.object({\n role: z2.enum([\"assistant\"]).nullish(),\n content: z2.string().nullish(),\n tool_calls: z2.array(\n z2.object({\n index: z2.number(),\n id: z2.string().nullish(),\n type: z2.literal(\"function\").nullish(),\n function: z2.object({\n name: z2.string().nullish(),\n arguments: z2.string().nullish()\n })\n })\n ).nullish(),\n annotations: z2.array(\n z2.object({\n type: z2.literal(\"url_citation\"),\n url_citation: z2.object({\n start_index: z2.number(),\n end_index: z2.number(),\n url: z2.string(),\n title: z2.string()\n })\n })\n ).nullish()\n }).nullish(),\n logprobs: z2.object({\n content: z2.array(\n z2.object({\n token: z2.string(),\n logprob: z2.number(),\n top_logprobs: z2.array(\n z2.object({\n token: z2.string(),\n logprob: z2.number()\n })\n )\n })\n ).nullish()\n }).nullish(),\n finish_reason: z2.string().nullish(),\n index: z2.number()\n })\n ),\n usage: z2.object({\n prompt_tokens: z2.number().nullish(),\n completion_tokens: z2.number().nullish(),\n total_tokens: z2.number().nullish(),\n prompt_tokens_details: z2.object({\n cached_tokens: z2.number().nullish()\n }).nullish(),\n completion_tokens_details: z2.object({\n reasoning_tokens: z2.number().nullish(),\n accepted_prediction_tokens: z2.number().nullish(),\n rejected_prediction_tokens: z2.number().nullish()\n }).nullish()\n }).nullish()\n }),\n openaiErrorDataSchema\n ])\n )\n);\n\n// src/chat/openai-chat-options.ts\nimport { lazySchema as lazySchema2, zodSchema as zodSchema2 } from \"@ai-sdk/provider-utils\";\nimport { z as z3 } from \"zod/v4\";\nvar openaiLanguageModelChatOptions = lazySchema2(\n () => zodSchema2(\n z3.object({\n /**\n * Modify the likelihood of specified tokens appearing in the completion.\n *\n * Accepts a JSON object that maps tokens (specified by their token ID in\n * the GPT tokenizer) to an associated bias value from -100 to 100.\n */\n logitBias: z3.record(z3.coerce.number(), z3.number()).optional(),\n /**\n * Return the log probabilities of the tokens.\n *\n * Setting to true will return the log probabilities of the tokens that\n * were generated.\n *\n * Setting to a number will return the log probabilities of the top n\n * tokens that were generated.\n */\n logprobs: z3.union([z3.boolean(), z3.number()]).optional(),\n /**\n * Whether to enable parallel function calling during tool use. Default to true.\n */\n parallelToolCalls: z3.boolean().optional(),\n /**\n * A unique identifier representing your end-user, which can help OpenAI to\n * monitor and detect abuse.\n */\n user: z3.string().optional(),\n /**\n * Reasoning effort for reasoning models. Defaults to `medium`.\n */\n reasoningEffort: z3.enum([\"none\", \"minimal\", \"low\", \"medium\", \"high\", \"xhigh\"]).optional(),\n /**\n * Maximum number of completion tokens to generate. Useful for reasoning models.\n */\n maxCompletionTokens: z3.number().optional(),\n /**\n * Whether to enable persistence in responses API.\n */\n store: z3.boolean().optional(),\n /**\n * Metadata to associate with the request.\n */\n metadata: z3.record(z3.string().max(64), z3.string().max(512)).optional(),\n /**\n * Parameters for prediction mode.\n */\n prediction: z3.record(z3.string(), z3.any()).optional(),\n /**\n * Service tier for the request.\n * - 'auto': Default service tier. The request will be processed with the service tier configured in the\n * Project settings. Unless otherwise configured, the Project will use 'default'.\n * - 'flex': 50% cheaper processing at the cost of increased latency. Only available for o3 and o4-mini models.\n * - 'priority': Higher-speed processing with predictably low latency at premium cost. Available for Enterprise customers.\n * - 'default': The request will be processed with the standard pricing and performance for the selected model.\n *\n * @default 'auto'\n */\n serviceTier: z3.enum([\"auto\", \"flex\", \"priority\", \"default\"]).optional(),\n /**\n * Whether to use strict JSON schema validation.\n *\n * @default true\n */\n strictJsonSchema: z3.boolean().optional(),\n /**\n * Controls the verbosity of the model's responses.\n * Lower values will result in more concise responses, while higher values will result in more verbose responses.\n */\n textVerbosity: z3.enum([\"low\", \"medium\", \"high\"]).optional(),\n /**\n * A cache key for prompt caching. Allows manual control over prompt caching behavior.\n * Useful for improving cache hit rates and working around automatic caching issues.\n */\n promptCacheKey: z3.string().optional(),\n /**\n * The retention policy for the prompt cache.\n * - 'in_memory': Default. Standard prompt caching behavior.\n * - '24h': Extended prompt caching that keeps cached prefixes active for up to 24 hours.\n * Currently only available for 5.1 series models.\n *\n * @default 'in_memory'\n */\n promptCacheRetention: z3.enum([\"in_memory\", \"24h\"]).optional(),\n /**\n * A stable identifier used to help detect users of your application\n * that may be violating OpenAI's usage policies. The IDs should be a\n * string that uniquely identifies each user. We recommend hashing their\n * username or email address, in order to avoid sending us any identifying\n * information.\n */\n safetyIdentifier: z3.string().optional(),\n /**\n * Override the system message mode for this model.\n * - 'system': Use the 'system' role for system messages (default for most models)\n * - 'developer': Use the 'developer' role for system messages (used by reasoning models)\n * - 'remove': Remove system messages entirely\n *\n * If not specified, the mode is automatically determined based on the model.\n */\n systemMessageMode: z3.enum([\"system\", \"developer\", \"remove\"]).optional(),\n /**\n * Force treating this model as a reasoning model.\n *\n * This is useful for \"stealth\" reasoning models (e.g. via a custom baseURL)\n * where the model ID is not recognized by the SDK's allowlist.\n *\n * When enabled, the SDK applies reasoning-model parameter compatibility rules\n * and defaults `systemMessageMode` to `developer` unless overridden.\n */\n forceReasoning: z3.boolean().optional()\n })\n )\n);\n\n// src/chat/openai-chat-prepare-tools.ts\nimport {\n UnsupportedFunctionalityError as UnsupportedFunctionalityError2\n} from \"@ai-sdk/provider\";\nfunction prepareChatTools({\n tools,\n toolChoice\n}) {\n tools = (tools == null ? void 0 : tools.length) ? tools : void 0;\n const toolWarnings = [];\n if (tools == null) {\n return { tools: void 0, toolChoice: void 0, toolWarnings };\n }\n const openaiTools2 = [];\n for (const tool of tools) {\n switch (tool.type) {\n case \"function\":\n openaiTools2.push({\n type: \"function\",\n function: {\n name: tool.name,\n description: tool.description,\n parameters: tool.inputSchema,\n ...tool.strict != null ? { strict: tool.strict } : {}\n }\n });\n break;\n default:\n toolWarnings.push({\n type: \"unsupported\",\n feature: `tool type: ${tool.type}`\n });\n break;\n }\n }\n if (toolChoice == null) {\n return { tools: openaiTools2, toolChoice: void 0, toolWarnings };\n }\n const type = toolChoice.type;\n switch (type) {\n case \"auto\":\n case \"none\":\n case \"required\":\n return { tools: openaiTools2, toolChoice: type, toolWarnings };\n case \"tool\":\n return {\n tools: openaiTools2,\n toolChoice: {\n type: \"function\",\n function: {\n name: toolChoice.toolName\n }\n },\n toolWarnings\n };\n default: {\n const _exhaustiveCheck = type;\n throw new UnsupportedFunctionalityError2({\n functionality: `tool choice type: ${_exhaustiveCheck}`\n });\n }\n }\n}\n\n// src/chat/openai-chat-language-model.ts\nvar OpenAIChatLanguageModel = class {\n constructor(modelId, config) {\n this.specificationVersion = \"v3\";\n this.supportedUrls = {\n \"image/*\": [/^https?:\\/\\/.*$/]\n };\n this.modelId = modelId;\n this.config = config;\n }\n get provider() {\n return this.config.provider;\n }\n async getArgs({\n prompt,\n maxOutputTokens,\n temperature,\n topP,\n topK,\n frequencyPenalty,\n presencePenalty,\n stopSequences,\n responseFormat,\n seed,\n tools,\n toolChoice,\n providerOptions\n }) {\n var _a, _b, _c, _d, _e;\n const warnings = [];\n const openaiOptions = (_a = await parseProviderOptions({\n provider: \"openai\",\n providerOptions,\n schema: openaiLanguageModelChatOptions\n })) != null ? _a : {};\n const modelCapabilities = getOpenAILanguageModelCapabilities(this.modelId);\n const isReasoningModel = (_b = openaiOptions.forceReasoning) != null ? _b : modelCapabilities.isReasoningModel;\n if (topK != null) {\n warnings.push({ type: \"unsupported\", feature: \"topK\" });\n }\n const { messages, warnings: messageWarnings } = convertToOpenAIChatMessages(\n {\n prompt,\n systemMessageMode: (_c = openaiOptions.systemMessageMode) != null ? _c : isReasoningModel ? \"developer\" : modelCapabilities.systemMessageMode\n }\n );\n warnings.push(...messageWarnings);\n const strictJsonSchema = (_d = openaiOptions.strictJsonSchema) != null ? _d : true;\n const baseArgs = {\n // model id:\n model: this.modelId,\n // model specific settings:\n logit_bias: openaiOptions.logitBias,\n logprobs: openaiOptions.logprobs === true || typeof openaiOptions.logprobs === \"number\" ? true : void 0,\n top_logprobs: typeof openaiOptions.logprobs === \"number\" ? openaiOptions.logprobs : typeof openaiOptions.logprobs === \"boolean\" ? openaiOptions.logprobs ? 0 : void 0 : void 0,\n user: openaiOptions.user,\n parallel_tool_calls: openaiOptions.parallelToolCalls,\n // standardized settings:\n max_tokens: maxOutputTokens,\n temperature,\n top_p: topP,\n frequency_penalty: frequencyPenalty,\n presence_penalty: presencePenalty,\n response_format: (responseFormat == null ? void 0 : responseFormat.type) === \"json\" ? responseFormat.schema != null ? {\n type: \"json_schema\",\n json_schema: {\n schema: responseFormat.schema,\n strict: strictJsonSchema,\n name: (_e = responseFormat.name) != null ? _e : \"response\",\n description: responseFormat.description\n }\n } : { type: \"json_object\" } : void 0,\n stop: stopSequences,\n seed,\n verbosity: openaiOptions.textVerbosity,\n // openai specific settings:\n // TODO AI SDK 6: remove, we auto-map maxOutputTokens now\n max_completion_tokens: openaiOptions.maxCompletionTokens,\n store: openaiOptions.store,\n metadata: openaiOptions.metadata,\n prediction: openaiOptions.prediction,\n reasoning_effort: openaiOptions.reasoningEffort,\n service_tier: openaiOptions.serviceTier,\n prompt_cache_key: openaiOptions.promptCacheKey,\n prompt_cache_retention: openaiOptions.promptCacheRetention,\n safety_identifier: openaiOptions.safetyIdentifier,\n // messages:\n messages\n };\n if (isReasoningModel) {\n if (openaiOptions.reasoningEffort !== \"none\" || !modelCapabilities.supportsNonReasoningParameters) {\n if (baseArgs.temperature != null) {\n baseArgs.temperature = void 0;\n warnings.push({\n type: \"unsupported\",\n feature: \"temperature\",\n details: \"temperature is not supported for reasoning models\"\n });\n }\n if (baseArgs.top_p != null) {\n baseArgs.top_p = void 0;\n warnings.push({\n type: \"unsupported\",\n feature: \"topP\",\n details: \"topP is not supported for reasoning models\"\n });\n }\n if (baseArgs.logprobs != null) {\n baseArgs.logprobs = void 0;\n warnings.push({\n type: \"other\",\n message: \"logprobs is not supported for reasoning models\"\n });\n }\n }\n if (baseArgs.frequency_penalty != null) {\n baseArgs.frequency_penalty = void 0;\n warnings.push({\n type: \"unsupported\",\n feature: \"frequencyPenalty\",\n details: \"frequencyPenalty is not supported for reasoning models\"\n });\n }\n if (baseArgs.presence_penalty != null) {\n baseArgs.presence_penalty = void 0;\n warnings.push({\n type: \"unsupported\",\n feature: \"presencePenalty\",\n details: \"presencePenalty is not supported for reasoning models\"\n });\n }\n if (baseArgs.logit_bias != null) {\n baseArgs.logit_bias = void 0;\n warnings.push({\n type: \"other\",\n message: \"logitBias is not supported for reasoning models\"\n });\n }\n if (baseArgs.top_logprobs != null) {\n baseArgs.top_logprobs = void 0;\n warnings.push({\n type: \"other\",\n message: \"topLogprobs is not supported for reasoning models\"\n });\n }\n if (baseArgs.max_tokens != null) {\n if (baseArgs.max_completion_tokens == null) {\n baseArgs.max_completion_tokens = baseArgs.max_tokens;\n }\n baseArgs.max_tokens = void 0;\n }\n } else if (this.modelId.startsWith(\"gpt-4o-search-preview\") || this.modelId.startsWith(\"gpt-4o-mini-search-preview\")) {\n if (baseArgs.temperature != null) {\n baseArgs.temperature = void 0;\n warnings.push({\n type: \"unsupported\",\n feature: \"temperature\",\n details: \"temperature is not supported for the search preview models and has been removed.\"\n });\n }\n }\n if (openaiOptions.serviceTier === \"flex\" && !modelCapabilities.supportsFlexProcessing) {\n warnings.push({\n type: \"unsupported\",\n feature: \"serviceTier\",\n details: \"flex processing is only available for o3, o4-mini, and gpt-5 models\"\n });\n baseArgs.service_tier = void 0;\n }\n if (openaiOptions.serviceTier === \"priority\" && !modelCapabilities.supportsPriorityProcessing) {\n warnings.push({\n type: \"unsupported\",\n feature: \"serviceTier\",\n 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\"\n });\n baseArgs.service_tier = void 0;\n }\n const {\n tools: openaiTools2,\n toolChoice: openaiToolChoice,\n toolWarnings\n } = prepareChatTools({\n tools,\n toolChoice\n });\n return {\n args: {\n ...baseArgs,\n tools: openaiTools2,\n tool_choice: openaiToolChoice\n },\n warnings: [...warnings, ...toolWarnings]\n };\n }\n async doGenerate(options) {\n var _a, _b, _c, _d, _e, _f, _g;\n const { args: body, warnings } = await this.getArgs(options);\n const {\n responseHeaders,\n value: response,\n rawValue: rawResponse\n } = await postJsonToApi({\n url: this.config.url({\n path: \"/chat/completions\",\n modelId: this.modelId\n }),\n headers: combineHeaders(this.config.headers(), options.headers),\n body,\n failedResponseHandler: openaiFailedResponseHandler,\n successfulResponseHandler: createJsonResponseHandler(\n openaiChatResponseSchema\n ),\n abortSignal: options.abortSignal,\n fetch: this.config.fetch\n });\n const choice = response.choices[0];\n const content = [];\n const text = choice.message.content;\n if (text != null && text.length > 0) {\n content.push({ type: \"text\", text });\n }\n for (const toolCall of (_a = choice.message.tool_calls) != null ? _a : []) {\n content.push({\n type: \"tool-call\",\n toolCallId: (_b = toolCall.id) != null ? _b : generateId(),\n toolName: toolCall.function.name,\n input: toolCall.function.arguments\n });\n }\n for (const annotation of (_c = choice.message.annotations) != null ? _c : []) {\n content.push({\n type: \"source\",\n sourceType: \"url\",\n id: generateId(),\n url: annotation.url_citation.url,\n title: annotation.url_citation.title\n });\n }\n const completionTokenDetails = (_d = response.usage) == null ? void 0 : _d.completion_tokens_details;\n const promptTokenDetails = (_e = response.usage) == null ? void 0 : _e.prompt_tokens_details;\n const providerMetadata = { openai: {} };\n if ((completionTokenDetails == null ? void 0 : completionTokenDetails.accepted_prediction_tokens) != null) {\n providerMetadata.openai.acceptedPredictionTokens = completionTokenDetails == null ? void 0 : completionTokenDetails.accepted_prediction_tokens;\n }\n if ((completionTokenDetails == null ? void 0 : completionTokenDetails.rejected_prediction_tokens) != null) {\n providerMetadata.openai.rejectedPredictionTokens = completionTokenDetails == null ? void 0 : completionTokenDetails.rejected_prediction_tokens;\n }\n if (((_f = choice.logprobs) == null ? void 0 : _f.content) != null) {\n providerMetadata.openai.logprobs = choice.logprobs.content;\n }\n return {\n content,\n finishReason: {\n unified: mapOpenAIFinishReason(choice.finish_reason),\n raw: (_g = choice.finish_reason) != null ? _g : void 0\n },\n usage: convertOpenAIChatUsage(response.usage),\n request: { body },\n response: {\n ...getResponseMetadata(response),\n headers: responseHeaders,\n body: rawResponse\n },\n warnings,\n providerMetadata\n };\n }\n async doStream(options) {\n const { args, warnings } = await this.getArgs(options);\n const body = {\n ...args,\n stream: true,\n stream_options: {\n include_usage: true\n }\n };\n const { responseHeaders, value: response } = await postJsonToApi({\n url: this.config.url({\n path: \"/chat/completions\",\n modelId: this.modelId\n }),\n headers: combineHeaders(this.config.headers(), options.headers),\n body,\n failedResponseHandler: openaiFailedResponseHandler,\n successfulResponseHandler: createEventSourceResponseHandler(\n openaiChatChunkSchema\n ),\n abortSignal: options.abortSignal,\n fetch: this.config.fetch\n });\n const toolCalls = [];\n let finishReason = {\n unified: \"other\",\n raw: void 0\n };\n let usage = void 0;\n let metadataExtracted = false;\n let isActiveText = false;\n const providerMetadata = { openai: {} };\n return {\n stream: response.pipeThrough(\n new TransformStream({\n start(controller) {\n controller.enqueue({ type: \"stream-start\", warnings });\n },\n transform(chunk, controller) {\n var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k, _l, _m, _n, _o, _p, _q;\n if (options.includeRawChunks) {\n controller.enqueue({ type: \"raw\", rawValue: chunk.rawValue });\n }\n if (!chunk.success) {\n finishReason = { unified: \"error\", raw: void 0 };\n controller.enqueue({ type: \"error\", error: chunk.error });\n return;\n }\n const value = chunk.value;\n if (\"error\" in value) {\n finishReason = { unified: \"error\", raw: void 0 };\n controller.enqueue({ type: \"error\", error: value.error });\n return;\n }\n if (!metadataExtracted) {\n const metadata = getResponseMetadata(value);\n if (Object.values(metadata).some(Boolean)) {\n metadataExtracted = true;\n controller.enqueue({\n type: \"response-metadata\",\n ...getResponseMetadata(value)\n });\n }\n }\n if (value.usage != null) {\n usage = value.usage;\n if (((_a = value.usage.completion_tokens_details) == null ? void 0 : _a.accepted_prediction_tokens) != null) {\n providerMetadata.openai.acceptedPredictionTokens = (_b = value.usage.completion_tokens_details) == null ? void 0 : _b.accepted_prediction_tokens;\n }\n if (((_c = value.usage.completion_tokens_details) == null ? void 0 : _c.rejected_prediction_tokens) != null) {\n providerMetadata.openai.rejectedPredictionTokens = (_d = value.usage.completion_tokens_details) == null ? void 0 : _d.rejected_prediction_tokens;\n }\n }\n const choice = value.choices[0];\n if ((choice == null ? void 0 : choice.finish_reason) != null) {\n finishReason = {\n unified: mapOpenAIFinishReason(choice.finish_reason),\n raw: choice.finish_reason\n };\n }\n if (((_e = choice == null ? void 0 : choice.logprobs) == null ? void 0 : _e.content) != null) {\n providerMetadata.openai.logprobs = choice.logprobs.content;\n }\n if ((choice == null ? void 0 : choice.delta) == null) {\n return;\n }\n const delta = choice.delta;\n if (delta.content != null) {\n if (!isActiveText) {\n controller.enqueue({ type: \"text-start\", id: \"0\" });\n isActiveText = true;\n }\n controller.enqueue({\n type: \"text-delta\",\n id: \"0\",\n delta: delta.content\n });\n }\n if (delta.tool_calls != null) {\n for (const toolCallDelta of delta.tool_calls) {\n const index = toolCallDelta.index;\n if (toolCalls[index] == null) {\n if (toolCallDelta.type != null && toolCallDelta.type !== \"function\") {\n throw new InvalidResponseDataError({\n data: toolCallDelta,\n message: `Expected 'function' type.`\n });\n }\n if (toolCallDelta.id == null) {\n throw new InvalidResponseDataError({\n data: toolCallDelta,\n message: `Expected 'id' to be a string.`\n });\n }\n if (((_f = toolCallDelta.function) == null ? void 0 : _f.name) == null) {\n throw new InvalidResponseDataError({\n data: toolCallDelta,\n message: `Expected 'function.name' to be a string.`\n });\n }\n controller.enqueue({\n type: \"tool-input-start\",\n id: toolCallDelta.id,\n toolName: toolCallDelta.function.name\n });\n toolCalls[index] = {\n id: toolCallDelta.id,\n type: \"function\",\n function: {\n name: toolCallDelta.function.name,\n arguments: (_g = toolCallDelta.function.arguments) != null ? _g : \"\"\n },\n hasFinished: false\n };\n const toolCall2 = toolCalls[index];\n if (((_h = toolCall2.function) == null ? void 0 : _h.name) != null && ((_i = toolCall2.function) == null ? void 0 : _i.arguments) != null) {\n if (toolCall2.function.arguments.length > 0) {\n controller.enqueue({\n type: \"tool-input-delta\",\n id: toolCall2.id,\n delta: toolCall2.function.arguments\n });\n }\n if (isParsableJson(toolCall2.function.arguments)) {\n controller.enqueue({\n type: \"tool-input-end\",\n id: toolCall2.id\n });\n controller.enqueue({\n type: \"tool-call\",\n toolCallId: (_j = toolCall2.id) != null ? _j : generateId(),\n toolName: toolCall2.function.name,\n input: toolCall2.function.arguments\n });\n toolCall2.hasFinished = true;\n }\n }\n continue;\n }\n const toolCall = toolCalls[index];\n if (toolCall.hasFinished) {\n continue;\n }\n if (((_k = toolCallDelta.function) == null ? void 0 : _k.arguments) != null) {\n toolCall.function.arguments += (_m = (_l = toolCallDelta.function) == null ? void 0 : _l.arguments) != null ? _m : \"\";\n }\n controller.enqueue({\n type: \"tool-input-delta\",\n id: toolCall.id,\n delta: (_n = toolCallDelta.function.arguments) != null ? _n : \"\"\n });\n if (((_o = toolCall.function) == null ? void 0 : _o.name) != null && ((_p = toolCall.function) == null ? void 0 : _p.arguments) != null && isParsableJson(toolCall.function.arguments)) {\n controller.enqueue({\n type: \"tool-input-end\",\n id: toolCall.id\n });\n controller.enqueue({\n type: \"tool-call\",\n toolCallId: (_q = toolCall.id) != null ? _q : generateId(),\n toolName: toolCall.function.name,\n input: toolCall.function.arguments\n });\n toolCall.hasFinished = true;\n }\n }\n }\n if (delta.annotations != null) {\n for (const annotation of delta.annotations) {\n controller.enqueue({\n type: \"source\",\n sourceType: \"url\",\n id: generateId(),\n url: annotation.url_citation.url,\n title: annotation.url_citation.title\n });\n }\n }\n },\n flush(controller) {\n if (isActiveText) {\n controller.enqueue({ type: \"text-end\", id: \"0\" });\n }\n controller.enqueue({\n type: \"finish\",\n finishReason,\n usage: convertOpenAIChatUsage(usage),\n ...providerMetadata != null ? { providerMetadata } : {}\n });\n }\n })\n ),\n request: { body },\n response: { headers: responseHeaders }\n };\n }\n};\n\n// src/completion/openai-completion-language-model.ts\nimport {\n combineHeaders as combineHeaders2,\n createEventSourceResponseHandler as createEventSourceResponseHandler2,\n createJsonResponseHandler as createJsonResponseHandler2,\n parseProviderOptions as parseProviderOptions2,\n postJsonToApi as postJsonToApi2\n} from \"@ai-sdk/provider-utils\";\n\n// src/completion/convert-openai-completion-usage.ts\nfunction convertOpenAICompletionUsage(usage) {\n var _a, _b, _c, _d;\n if (usage == null) {\n return {\n inputTokens: {\n total: void 0,\n noCache: void 0,\n cacheRead: void 0,\n cacheWrite: void 0\n },\n outputTokens: {\n total: void 0,\n text: void 0,\n reasoning: void 0\n },\n raw: void 0\n };\n }\n const promptTokens = (_a = usage.prompt_tokens) != null ? _a : 0;\n const completionTokens = (_b = usage.completion_tokens) != null ? _b : 0;\n return {\n inputTokens: {\n total: (_c = usage.prompt_tokens) != null ? _c : void 0,\n noCache: promptTokens,\n cacheRead: void 0,\n cacheWrite: void 0\n },\n outputTokens: {\n total: (_d = usage.completion_tokens) != null ? _d : void 0,\n text: completionTokens,\n reasoning: void 0\n },\n raw: usage\n };\n}\n\n// src/completion/convert-to-openai-completion-prompt.ts\nimport {\n InvalidPromptError,\n UnsupportedFunctionalityError as UnsupportedFunctionalityError3\n} from \"@ai-sdk/provider\";\nfunction convertToOpenAICompletionPrompt({\n prompt,\n user = \"user\",\n assistant = \"assistant\"\n}) {\n let text = \"\";\n if (prompt[0].role === \"system\") {\n text += `${prompt[0].content}\n\n`;\n prompt = prompt.slice(1);\n }\n for (const { role, content } of prompt) {\n switch (role) {\n case \"system\": {\n throw new InvalidPromptError({\n message: \"Unexpected system message in prompt: ${content}\",\n prompt\n });\n }\n case \"user\": {\n const userMessage = content.map((part) => {\n switch (part.type) {\n case \"text\": {\n return part.text;\n }\n }\n }).filter(Boolean).join(\"\");\n text += `${user}:\n${userMessage}\n\n`;\n break;\n }\n case \"assistant\": {\n const assistantMessage = content.map((part) => {\n switch (part.type) {\n case \"text\": {\n return part.text;\n }\n case \"tool-call\": {\n throw new UnsupportedFunctionalityError3({\n functionality: \"tool-call messages\"\n });\n }\n }\n }).join(\"\");\n text += `${assistant}:\n${assistantMessage}\n\n`;\n break;\n }\n case \"tool\": {\n throw new UnsupportedFunctionalityError3({\n functionality: \"tool messages\"\n });\n }\n default: {\n const _exhaustiveCheck = role;\n throw new Error(`Unsupported role: ${_exhaustiveCheck}`);\n }\n }\n }\n text += `${assistant}:\n`;\n return {\n prompt: text,\n stopSequences: [`\n${user}:`]\n };\n}\n\n// src/completion/get-response-metadata.ts\nfunction getResponseMetadata2({\n id,\n model,\n created\n}) {\n return {\n id: id != null ? id : void 0,\n modelId: model != null ? model : void 0,\n timestamp: created != null ? new Date(created * 1e3) : void 0\n };\n}\n\n// src/completion/map-openai-finish-reason.ts\nfunction mapOpenAIFinishReason2(finishReason) {\n switch (finishReason) {\n case \"stop\":\n return \"stop\";\n case \"length\":\n return \"length\";\n case \"content_filter\":\n return \"content-filter\";\n case \"function_call\":\n case \"tool_calls\":\n return \"tool-calls\";\n default:\n return \"other\";\n }\n}\n\n// src/completion/openai-completion-api.ts\nimport { z as z4 } from \"zod/v4\";\nimport { lazySchema as lazySchema3, zodSchema as zodSchema3 } from \"@ai-sdk/provider-utils\";\nvar openaiCompletionResponseSchema = lazySchema3(\n () => zodSchema3(\n z4.object({\n id: z4.string().nullish(),\n created: z4.number().nullish(),\n model: z4.string().nullish(),\n choices: z4.array(\n z4.object({\n text: z4.string(),\n finish_reason: z4.string(),\n logprobs: z4.object({\n tokens: z4.array(z4.string()),\n token_logprobs: z4.array(z4.number()),\n top_logprobs: z4.array(z4.record(z4.string(), z4.number())).nullish()\n }).nullish()\n })\n ),\n usage: z4.object({\n prompt_tokens: z4.number(),\n completion_tokens: z4.number(),\n total_tokens: z4.number()\n }).nullish()\n })\n )\n);\nvar openaiCompletionChunkSchema = lazySchema3(\n () => zodSchema3(\n z4.union([\n z4.object({\n id: z4.string().nullish(),\n created: z4.number().nullish(),\n model: z4.string().nullish(),\n choices: z4.array(\n z4.object({\n text: z4.string(),\n finish_reason: z4.string().nullish(),\n index: z4.number(),\n logprobs: z4.object({\n tokens: z4.array(z4.string()),\n token_logprobs: z4.array(z4.number()),\n top_logprobs: z4.array(z4.record(z4.string(), z4.number())).nullish()\n }).nullish()\n })\n ),\n usage: z4.object({\n prompt_tokens: z4.number(),\n completion_tokens: z4.number(),\n total_tokens: z4.number()\n }).nullish()\n }),\n openaiErrorDataSchema\n ])\n )\n);\n\n// src/completion/openai-completion-options.ts\nimport { lazySchema as lazySchema4, zodSchema as zodSchema4 } from \"@ai-sdk/provider-utils\";\nimport { z as z5 } from \"zod/v4\";\nvar openaiLanguageModelCompletionOptions = lazySchema4(\n () => zodSchema4(\n z5.object({\n /**\n * Echo back the prompt in addition to the completion.\n */\n echo: z5.boolean().optional(),\n /**\n * Modify the likelihood of specified tokens appearing in the completion.\n *\n * Accepts a JSON object that maps tokens (specified by their token ID in\n * the GPT tokenizer) to an associated bias value from -100 to 100. You\n * can use this tokenizer tool to convert text to token IDs. Mathematically,\n * the bias is added to the logits generated by the model prior to sampling.\n * The exact effect will vary per model, but values between -1 and 1 should\n * decrease or increase likelihood of selection; values like -100 or 100\n * should result in a ban or exclusive selection of the relevant token.\n *\n * As an example, you can pass {\"50256\": -100} to prevent the <|endoftext|>\n * token from being generated.\n */\n logitBias: z5.record(z5.string(), z5.number()).optional(),\n /**\n * The suffix that comes after a completion of inserted text.\n */\n suffix: z5.string().optional(),\n /**\n * A unique identifier representing your end-user, which can help OpenAI to\n * monitor and detect abuse. Learn more.\n */\n user: z5.string().optional(),\n /**\n * Return the log probabilities of the tokens. Including logprobs will increase\n * the response size and can slow down response times. However, it can\n * be useful to better understand how the model is behaving.\n * Setting to true will return the log probabilities of the tokens that\n * were generated.\n * Setting to a number will return the log probabilities of the top n\n * tokens that were generated.\n */\n logprobs: z5.union([z5.boolean(), z5.number()]).optional()\n })\n )\n);\n\n// src/completion/openai-completion-language-model.ts\nvar OpenAICompletionLanguageModel = class {\n constructor(modelId, config) {\n this.specificationVersion = \"v3\";\n this.supportedUrls = {\n // No URLs are supported for completion models.\n };\n this.modelId = modelId;\n this.config = config;\n }\n get providerOptionsName() {\n return this.config.provider.split(\".\")[0].trim();\n }\n get provider() {\n return this.config.provider;\n }\n async getArgs({\n prompt,\n maxOutputTokens,\n temperature,\n topP,\n topK,\n frequencyPenalty,\n presencePenalty,\n stopSequences: userStopSequences,\n responseFormat,\n tools,\n toolChoice,\n seed,\n providerOptions\n }) {\n const warnings = [];\n const openaiOptions = {\n ...await parseProviderOptions2({\n provider: \"openai\",\n providerOptions,\n schema: openaiLanguageModelCompletionOptions\n }),\n ...await parseProviderOptions2({\n provider: this.providerOptionsName,\n providerOptions,\n schema: openaiLanguageModelCompletionOptions\n })\n };\n if (topK != null) {\n warnings.push({ type: \"unsupported\", feature: \"topK\" });\n }\n if (tools == null ? void 0 : tools.length) {\n warnings.push({ type: \"unsupported\", feature: \"tools\" });\n }\n if (toolChoice != null) {\n warnings.push({ type: \"unsupported\", feature: \"toolChoice\" });\n }\n if (responseFormat != null && responseFormat.type !== \"text\") {\n warnings.push({\n type: \"unsupported\",\n feature: \"responseFormat\",\n details: \"JSON response format is not supported.\"\n });\n }\n const { prompt: completionPrompt, stopSequences } = convertToOpenAICompletionPrompt({ prompt });\n const stop = [...stopSequences != null ? stopSequences : [], ...userStopSequences != null ? userStopSequences : []];\n return {\n args: {\n // model id:\n model: this.modelId,\n // model specific settings:\n echo: openaiOptions.echo,\n logit_bias: openaiOptions.logitBias,\n logprobs: (openaiOptions == null ? void 0 : openaiOptions.logprobs) === true ? 0 : (openaiOptions == null ? void 0 : openaiOptions.logprobs) === false ? void 0 : openaiOptions == null ? void 0 : openaiOptions.logprobs,\n suffix: openaiOptions.suffix,\n user: openaiOptions.user,\n // standardized settings:\n max_tokens: maxOutputTokens,\n temperature,\n top_p: topP,\n frequency_penalty: frequencyPenalty,\n presence_penalty: presencePenalty,\n seed,\n // prompt:\n prompt: completionPrompt,\n // stop sequences:\n stop: stop.length > 0 ? stop : void 0\n },\n warnings\n };\n }\n async doGenerate(options) {\n var _a;\n const { args, warnings } = await this.getArgs(options);\n const {\n responseHeaders,\n value: response,\n rawValue: rawResponse\n } = await postJsonToApi2({\n url: this.config.url({\n path: \"/completions\",\n modelId: this.modelId\n }),\n headers: combineHeaders2(this.config.headers(), options.headers),\n body: args,\n failedResponseHandler: openaiFailedResponseHandler,\n successfulResponseHandler: createJsonResponseHandler2(\n openaiCompletionResponseSchema\n ),\n abortSignal: options.abortSignal,\n fetch: this.config.fetch\n });\n const choice = response.choices[0];\n const providerMetadata = { openai: {} };\n if (choice.logprobs != null) {\n providerMetadata.openai.logprobs = choice.logprobs;\n }\n return {\n content: [{ type: \"text\", text: choice.text }],\n usage: convertOpenAICompletionUsage(response.usage),\n finishReason: {\n unified: mapOpenAIFinishReason2(choice.finish_reason),\n raw: (_a = choice.finish_reason) != null ? _a : void 0\n },\n request: { body: args },\n response: {\n ...getResponseMetadata2(response),\n headers: responseHeaders,\n body: rawResponse\n },\n providerMetadata,\n warnings\n };\n }\n async doStream(options) {\n const { args, warnings } = await this.getArgs(options);\n const body = {\n ...args,\n stream: true,\n stream_options: {\n include_usage: true\n }\n };\n const { responseHeaders, value: response } = await postJsonToApi2({\n url: this.config.url({\n path: \"/completions\",\n modelId: this.modelId\n }),\n headers: combineHeaders2(this.config.headers(), options.headers),\n body,\n failedResponseHandler: openaiFailedResponseHandler,\n successfulResponseHandler: createEventSourceResponseHandler2(\n openaiCompletionChunkSchema\n ),\n abortSignal: options.abortSignal,\n fetch: this.config.fetch\n });\n let finishReason = {\n unified: \"other\",\n raw: void 0\n };\n const providerMetadata = { openai: {} };\n let usage = void 0;\n let isFirstChunk = true;\n return {\n stream: response.pipeThrough(\n new TransformStream({\n start(controller) {\n controller.enqueue({ type: \"stream-start\", warnings });\n },\n transform(chunk, controller) {\n if (options.includeRawChunks) {\n controller.enqueue({ type: \"raw\", rawValue: chunk.rawValue });\n }\n if (!chunk.success) {\n finishReason = { unified: \"error\", raw: void 0 };\n controller.enqueue({ type: \"error\", error: chunk.error });\n return;\n }\n const value = chunk.value;\n if (\"error\" in value) {\n finishReason = { unified: \"error\", raw: void 0 };\n controller.enqueue({ type: \"error\", error: value.error });\n return;\n }\n if (isFirstChunk) {\n isFirstChunk = false;\n controller.enqueue({\n type: \"response-metadata\",\n ...getResponseMetadata2(value)\n });\n controller.enqueue({ type: \"text-start\", id: \"0\" });\n }\n if (value.usage != null) {\n usage = value.usage;\n }\n const choice = value.choices[0];\n if ((choice == null ? void 0 : choice.finish_reason) != null) {\n finishReason = {\n unified: mapOpenAIFinishReason2(choice.finish_reason),\n raw: choice.finish_reason\n };\n }\n if ((choice == null ? void 0 : choice.logprobs) != null) {\n providerMetadata.openai.logprobs = choice.logprobs;\n }\n if ((choice == null ? void 0 : choice.text) != null && choice.text.length > 0) {\n controller.enqueue({\n type: \"text-delta\",\n id: \"0\",\n delta: choice.text\n });\n }\n },\n flush(controller) {\n if (!isFirstChunk) {\n controller.enqueue({ type: \"text-end\", id: \"0\" });\n }\n controller.enqueue({\n type: \"finish\",\n finishReason,\n providerMetadata,\n usage: convertOpenAICompletionUsage(usage)\n });\n }\n })\n ),\n request: { body },\n response: { headers: responseHeaders }\n };\n }\n};\n\n// src/embedding/openai-embedding-model.ts\nimport {\n TooManyEmbeddingValuesForCallError\n} from \"@ai-sdk/provider\";\nimport {\n combineHeaders as combineHeaders3,\n createJsonResponseHandler as createJsonResponseHandler3,\n parseProviderOptions as parseProviderOptions3,\n postJsonToApi as postJsonToApi3\n} from \"@ai-sdk/provider-utils\";\n\n// src/embedding/openai-embedding-options.ts\nimport { lazySchema as lazySchema5, zodSchema as zodSchema5 } from \"@ai-sdk/provider-utils\";\nimport { z as z6 } from \"zod/v4\";\nvar openaiEmbeddingModelOptions = lazySchema5(\n () => zodSchema5(\n z6.object({\n /**\n * The number of dimensions the resulting output embeddings should have.\n * Only supported in text-embedding-3 and later models.\n */\n dimensions: z6.number().optional(),\n /**\n * A unique identifier representing your end-user, which can help OpenAI to\n * monitor and detect abuse. Learn more.\n */\n user: z6.string().optional()\n })\n )\n);\n\n// src/embedding/openai-embedding-api.ts\nimport { lazySchema as lazySchema6, zodSchema as zodSchema6 } from \"@ai-sdk/provider-utils\";\nimport { z as z7 } from \"zod/v4\";\nvar openaiTextEmbeddingResponseSchema = lazySchema6(\n () => zodSchema6(\n z7.object({\n data: z7.array(z7.object({ embedding: z7.array(z7.number()) })),\n usage: z7.object({ prompt_tokens: z7.number() }).nullish()\n })\n )\n);\n\n// src/embedding/openai-embedding-model.ts\nvar OpenAIEmbeddingModel = class {\n constructor(modelId, config) {\n this.specificationVersion = \"v3\";\n this.maxEmbeddingsPerCall = 2048;\n this.supportsParallelCalls = true;\n this.modelId = modelId;\n this.config = config;\n }\n get provider() {\n return this.config.provider;\n }\n async doEmbed({\n values,\n headers,\n abortSignal,\n providerOptions\n }) {\n var _a;\n if (values.length > this.maxEmbeddingsPerCall) {\n throw new TooManyEmbeddingValuesForCallError({\n provider: this.provider,\n modelId: this.modelId,\n maxEmbeddingsPerCall: this.maxEmbeddingsPerCall,\n values\n });\n }\n const openaiOptions = (_a = await parseProviderOptions3({\n provider: \"openai\",\n providerOptions,\n schema: openaiEmbeddingModelOptions\n })) != null ? _a : {};\n const {\n responseHeaders,\n value: response,\n rawValue\n } = await postJsonToApi3({\n url: this.config.url({\n path: \"/embeddings\",\n modelId: this.modelId\n }),\n headers: combineHeaders3(this.config.headers(), headers),\n body: {\n model: this.modelId,\n input: values,\n encoding_format: \"float\",\n dimensions: openaiOptions.dimensions,\n user: openaiOptions.user\n },\n failedResponseHandler: openaiFailedResponseHandler,\n successfulResponseHandler: createJsonResponseHandler3(\n openaiTextEmbeddingResponseSchema\n ),\n abortSignal,\n fetch: this.config.fetch\n });\n return {\n warnings: [],\n embeddings: response.data.map((item) => item.embedding),\n usage: response.usage ? { tokens: response.usage.prompt_tokens } : void 0,\n response: { headers: responseHeaders, body: rawValue }\n };\n }\n};\n\n// src/image/openai-image-model.ts\nimport {\n combineHeaders as combineHeaders4,\n convertBase64ToUint8Array,\n convertToFormData,\n createJsonResponseHandler as createJsonResponseHandler4,\n downloadBlob,\n postFormDataToApi,\n postJsonToApi as postJsonToApi4\n} from \"@ai-sdk/provider-utils\";\n\n// src/image/openai-image-api.ts\nimport { lazySchema as lazySchema7, zodSchema as zodSchema7 } from \"@ai-sdk/provider-utils\";\nimport { z as z8 } from \"zod/v4\";\nvar openaiImageResponseSchema = lazySchema7(\n () => zodSchema7(\n z8.object({\n created: z8.number().nullish(),\n data: z8.array(\n z8.object({\n b64_json: z8.string(),\n revised_prompt: z8.string().nullish()\n })\n ),\n background: z8.string().nullish(),\n output_format: z8.string().nullish(),\n size: z8.string().nullish(),\n quality: z8.string().nullish(),\n usage: z8.object({\n input_tokens: z8.number().nullish(),\n output_tokens: z8.number().nullish(),\n total_tokens: z8.number().nullish(),\n input_tokens_details: z8.object({\n image_tokens: z8.number().nullish(),\n text_tokens: z8.number().nullish()\n }).nullish()\n }).nullish()\n })\n )\n);\n\n// src/image/openai-image-options.ts\nvar modelMaxImagesPerCall = {\n \"dall-e-3\": 1,\n \"dall-e-2\": 10,\n \"gpt-image-1\": 10,\n \"gpt-image-1-mini\": 10,\n \"gpt-image-1.5\": 10,\n \"chatgpt-image-latest\": 10\n};\nvar defaultResponseFormatPrefixes = [\n \"chatgpt-image-\",\n \"gpt-image-1-mini\",\n \"gpt-image-1.5\",\n \"gpt-image-1\"\n];\nfunction hasDefaultResponseFormat(modelId) {\n return defaultResponseFormatPrefixes.some(\n (prefix) => modelId.startsWith(prefix)\n );\n}\n\n// src/image/openai-image-model.ts\nvar OpenAIImageModel = class {\n constructor(modelId, config) {\n this.modelId = modelId;\n this.config = config;\n this.specificationVersion = \"v3\";\n }\n get maxImagesPerCall() {\n var _a;\n return (_a = modelMaxImagesPerCall[this.modelId]) != null ? _a : 1;\n }\n get provider() {\n return this.config.provider;\n }\n async doGenerate({\n prompt,\n files,\n mask,\n n,\n size,\n aspectRatio,\n seed,\n providerOptions,\n headers,\n abortSignal\n }) {\n var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k;\n const warnings = [];\n if (aspectRatio != null) {\n warnings.push({\n type: \"unsupported\",\n feature: \"aspectRatio\",\n details: \"This model does not support aspect ratio. Use `size` instead.\"\n });\n }\n if (seed != null) {\n warnings.push({ type: \"unsupported\", feature: \"seed\" });\n }\n const currentDate = (_c = (_b = (_a = this.config._internal) == null ? void 0 : _a.currentDate) == null ? void 0 : _b.call(_a)) != null ? _c : /* @__PURE__ */ new Date();\n if (files != null) {\n const { value: response2, responseHeaders: responseHeaders2 } = await postFormDataToApi({\n url: this.config.url({\n path: \"/images/edits\",\n modelId: this.modelId\n }),\n headers: combineHeaders4(this.config.headers(), headers),\n formData: convertToFormData({\n model: this.modelId,\n prompt,\n image: await Promise.all(\n files.map(\n (file) => file.type === \"file\" ? new Blob(\n [\n file.data instanceof Uint8Array ? new Blob([file.data], {\n type: file.mediaType\n }) : new Blob([convertBase64ToUint8Array(file.data)], {\n type: file.mediaType\n })\n ],\n { type: file.mediaType }\n ) : downloadBlob(file.url)\n )\n ),\n mask: mask != null ? await fileToBlob(mask) : void 0,\n n,\n size,\n ...(_d = providerOptions.openai) != null ? _d : {}\n }),\n failedResponseHandler: openaiFailedResponseHandler,\n successfulResponseHandler: createJsonResponseHandler4(\n openaiImageResponseSchema\n ),\n abortSignal,\n fetch: this.config.fetch\n });\n return {\n images: response2.data.map((item) => item.b64_json),\n warnings,\n usage: response2.usage != null ? {\n inputTokens: (_e = response2.usage.input_tokens) != null ? _e : void 0,\n outputTokens: (_f = response2.usage.output_tokens) != null ? _f : void 0,\n totalTokens: (_g = response2.usage.total_tokens) != null ? _g : void 0\n } : void 0,\n response: {\n timestamp: currentDate,\n modelId: this.modelId,\n headers: responseHeaders2\n },\n providerMetadata: {\n openai: {\n images: response2.data.map((item, index) => {\n var _a2, _b2, _c2, _d2, _e2, _f2;\n return {\n ...item.revised_prompt ? { revisedPrompt: item.revised_prompt } : {},\n created: (_a2 = response2.created) != null ? _a2 : void 0,\n size: (_b2 = response2.size) != null ? _b2 : void 0,\n quality: (_c2 = response2.quality) != null ? _c2 : void 0,\n background: (_d2 = response2.background) != null ? _d2 : void 0,\n outputFormat: (_e2 = response2.output_format) != null ? _e2 : void 0,\n ...distributeTokenDetails(\n (_f2 = response2.usage) == null ? void 0 : _f2.input_tokens_details,\n index,\n response2.data.length\n )\n };\n })\n }\n }\n };\n }\n const { value: response, responseHeaders } = await postJsonToApi4({\n url: this.config.url({\n path: \"/images/generations\",\n modelId: this.modelId\n }),\n headers: combineHeaders4(this.config.headers(), headers),\n body: {\n model: this.modelId,\n prompt,\n n,\n size,\n ...(_h = providerOptions.openai) != null ? _h : {},\n ...!hasDefaultResponseFormat(this.modelId) ? { response_format: \"b64_json\" } : {}\n },\n failedResponseHandler: openaiFailedResponseHandler,\n successfulResponseHandler: createJsonResponseHandler4(\n openaiImageResponseSchema\n ),\n abortSignal,\n fetch: this.config.fetch\n });\n return {\n images: response.data.map((item) => item.b64_json),\n warnings,\n usage: response.usage != null ? {\n inputTokens: (_i = response.usage.input_tokens) != null ? _i : void 0,\n outputTokens: (_j = response.usage.output_tokens) != null ? _j : void 0,\n totalTokens: (_k = response.usage.total_tokens) != null ? _k : void 0\n } : void 0,\n response: {\n timestamp: currentDate,\n modelId: this.modelId,\n headers: responseHeaders\n },\n providerMetadata: {\n openai: {\n images: response.data.map((item, index) => {\n var _a2, _b2, _c2, _d2, _e2, _f2;\n return {\n ...item.revised_prompt ? { revisedPrompt: item.revised_prompt } : {},\n created: (_a2 = response.created) != null ? _a2 : void 0,\n size: (_b2 = response.size) != null ? _b2 : void 0,\n quality: (_c2 = response.quality) != null ? _c2 : void 0,\n background: (_d2 = response.background) != null ? _d2 : void 0,\n outputFormat: (_e2 = response.output_format) != null ? _e2 : void 0,\n ...distributeTokenDetails(\n (_f2 = response.usage) == null ? void 0 : _f2.input_tokens_details,\n index,\n response.data.length\n )\n };\n })\n }\n }\n };\n }\n};\nfunction distributeTokenDetails(details, index, total) {\n if (details == null) {\n return {};\n }\n const result = {};\n if (details.image_tokens != null) {\n const base = Math.floor(details.image_tokens / total);\n const remainder = details.image_tokens - base * (total - 1);\n result.imageTokens = index === total - 1 ? remainder : base;\n }\n if (details.text_tokens != null) {\n const base = Math.floor(details.text_tokens / total);\n const remainder = details.text_tokens - base * (total - 1);\n result.textTokens = index === total - 1 ? remainder : base;\n }\n return result;\n}\nasync function fileToBlob(file) {\n if (!file) return void 0;\n if (file.type === \"url\") {\n return downloadBlob(file.url);\n }\n const data = file.data instanceof Uint8Array ? file.data : convertBase64ToUint8Array(file.data);\n return new Blob([data], { type: file.mediaType });\n}\n\n// src/tool/apply-patch.ts\nimport {\n createProviderToolFactoryWithOutputSchema,\n lazySchema as lazySchema8,\n zodSchema as zodSchema8\n} from \"@ai-sdk/provider-utils\";\nimport { z as z9 } from \"zod/v4\";\nvar applyPatchInputSchema = lazySchema8(\n () => zodSchema8(\n z9.object({\n callId: z9.string(),\n operation: z9.discriminatedUnion(\"type\", [\n z9.object({\n type: z9.literal(\"create_file\"),\n path: z9.string(),\n diff: z9.string()\n }),\n z9.object({\n type: z9.literal(\"delete_file\"),\n path: z9.string()\n }),\n z9.object({\n type: z9.literal(\"update_file\"),\n path: z9.string(),\n diff: z9.string()\n })\n ])\n })\n )\n);\nvar applyPatchOutputSchema = lazySchema8(\n () => zodSchema8(\n z9.object({\n status: z9.enum([\"completed\", \"failed\"]),\n output: z9.string().optional()\n })\n )\n);\nvar applyPatchArgsSchema = lazySchema8(() => zodSchema8(z9.object({})));\nvar applyPatchToolFactory = createProviderToolFactoryWithOutputSchema({\n id: \"openai.apply_patch\",\n inputSchema: applyPatchInputSchema,\n outputSchema: applyPatchOutputSchema\n});\nvar applyPatch = applyPatchToolFactory;\n\n// src/tool/code-interpreter.ts\nimport {\n createProviderToolFactoryWithOutputSchema as createProviderToolFactoryWithOutputSchema2,\n lazySchema as lazySchema9,\n zodSchema as zodSchema9\n} from \"@ai-sdk/provider-utils\";\nimport { z as z10 } from \"zod/v4\";\nvar codeInterpreterInputSchema = lazySchema9(\n () => zodSchema9(\n z10.object({\n code: z10.string().nullish(),\n containerId: z10.string()\n })\n )\n);\nvar codeInterpreterOutputSchema = lazySchema9(\n () => zodSchema9(\n z10.object({\n outputs: z10.array(\n z10.discriminatedUnion(\"type\", [\n z10.object({ type: z10.literal(\"logs\"), logs: z10.string() }),\n z10.object({ type: z10.literal(\"image\"), url: z10.string() })\n ])\n ).nullish()\n })\n )\n);\nvar codeInterpreterArgsSchema = lazySchema9(\n () => zodSchema9(\n z10.object({\n container: z10.union([\n z10.string(),\n z10.object({\n fileIds: z10.array(z10.string()).optional()\n })\n ]).optional()\n })\n )\n);\nvar codeInterpreterToolFactory = createProviderToolFactoryWithOutputSchema2({\n id: \"openai.code_interpreter\",\n inputSchema: codeInterpreterInputSchema,\n outputSchema: codeInterpreterOutputSchema\n});\nvar codeInterpreter = (args = {}) => {\n return codeInterpreterToolFactory(args);\n};\n\n// src/tool/custom.ts\nimport {\n createProviderToolFactory,\n lazySchema as lazySchema10,\n zodSchema as zodSchema10\n} from \"@ai-sdk/provider-utils\";\nimport { z as z11 } from \"zod/v4\";\nvar customArgsSchema = lazySchema10(\n () => zodSchema10(\n z11.object({\n name: z11.string(),\n description: z11.string().optional(),\n format: z11.union([\n z11.object({\n type: z11.literal(\"grammar\"),\n syntax: z11.enum([\"regex\", \"lark\"]),\n definition: z11.string()\n }),\n z11.object({\n type: z11.literal(\"text\")\n })\n ]).optional()\n })\n )\n);\nvar customInputSchema = lazySchema10(() => zodSchema10(z11.string()));\nvar customToolFactory = createProviderToolFactory({\n id: \"openai.custom\",\n inputSchema: customInputSchema\n});\nvar customTool = (args) => customToolFactory(args);\n\n// src/tool/file-search.ts\nimport {\n createProviderToolFactoryWithOutputSchema as createProviderToolFactoryWithOutputSchema3,\n lazySchema as lazySchema11,\n zodSchema as zodSchema11\n} from \"@ai-sdk/provider-utils\";\nimport { z as z12 } from \"zod/v4\";\nvar comparisonFilterSchema = z12.object({\n key: z12.string(),\n type: z12.enum([\"eq\", \"ne\", \"gt\", \"gte\", \"lt\", \"lte\", \"in\", \"nin\"]),\n value: z12.union([z12.string(), z12.number(), z12.boolean(), z12.array(z12.string())])\n});\nvar compoundFilterSchema = z12.object({\n type: z12.enum([\"and\", \"or\"]),\n filters: z12.array(\n z12.union([comparisonFilterSchema, z12.lazy(() => compoundFilterSchema)])\n )\n});\nvar fileSearchArgsSchema = lazySchema11(\n () => zodSchema11(\n z12.object({\n vectorStoreIds: z12.array(z12.string()),\n maxNumResults: z12.number().optional(),\n ranking: z12.object({\n ranker: z12.string().optional(),\n scoreThreshold: z12.number().optional()\n }).optional(),\n filters: z12.union([comparisonFilterSchema, compoundFilterSchema]).optional()\n })\n )\n);\nvar fileSearchOutputSchema = lazySchema11(\n () => zodSchema11(\n z12.object({\n queries: z12.array(z12.string()),\n results: z12.array(\n z12.object({\n attributes: z12.record(z12.string(), z12.unknown()),\n fileId: z12.string(),\n filename: z12.string(),\n score: z12.number(),\n text: z12.string()\n })\n ).nullable()\n })\n )\n);\nvar fileSearch = createProviderToolFactoryWithOutputSchema3({\n id: \"openai.file_search\",\n inputSchema: z12.object({}),\n outputSchema: fileSearchOutputSchema\n});\n\n// src/tool/image-generation.ts\nimport {\n createProviderToolFactoryWithOutputSchema as createProviderToolFactoryWithOutputSchema4,\n lazySchema as lazySchema12,\n zodSchema as zodSchema12\n} from \"@ai-sdk/provider-utils\";\nimport { z as z13 } from \"zod/v4\";\nvar imageGenerationArgsSchema = lazySchema12(\n () => zodSchema12(\n z13.object({\n background: z13.enum([\"auto\", \"opaque\", \"transparent\"]).optional(),\n inputFidelity: z13.enum([\"low\", \"high\"]).optional(),\n inputImageMask: z13.object({\n fileId: z13.string().optional(),\n imageUrl: z13.string().optional()\n }).optional(),\n model: z13.string().optional(),\n moderation: z13.enum([\"auto\"]).optional(),\n outputCompression: z13.number().int().min(0).max(100).optional(),\n outputFormat: z13.enum([\"png\", \"jpeg\", \"webp\"]).optional(),\n partialImages: z13.number().int().min(0).max(3).optional(),\n quality: z13.enum([\"auto\", \"low\", \"medium\", \"high\"]).optional(),\n size: z13.enum([\"1024x1024\", \"1024x1536\", \"1536x1024\", \"auto\"]).optional()\n }).strict()\n )\n);\nvar imageGenerationInputSchema = lazySchema12(() => zodSchema12(z13.object({})));\nvar imageGenerationOutputSchema = lazySchema12(\n () => zodSchema12(z13.object({ result: z13.string() }))\n);\nvar imageGenerationToolFactory = createProviderToolFactoryWithOutputSchema4({\n id: \"openai.image_generation\",\n inputSchema: imageGenerationInputSchema,\n outputSchema: imageGenerationOutputSchema\n});\nvar imageGeneration = (args = {}) => {\n return imageGenerationToolFactory(args);\n};\n\n// src/tool/local-shell.ts\nimport {\n createProviderToolFactoryWithOutputSchema as createProviderToolFactoryWithOutputSchema5,\n lazySchema as lazySchema13,\n zodSchema as zodSchema13\n} from \"@ai-sdk/provider-utils\";\nimport { z as z14 } from \"zod/v4\";\nvar localShellInputSchema = lazySchema13(\n () => zodSchema13(\n z14.object({\n action: z14.object({\n type: z14.literal(\"exec\"),\n command: z14.array(z14.string()),\n timeoutMs: z14.number().optional(),\n user: z14.string().optional(),\n workingDirectory: z14.string().optional(),\n env: z14.record(z14.string(), z14.string()).optional()\n })\n })\n )\n);\nvar localShellOutputSchema = lazySchema13(\n () => zodSchema13(z14.object({ output: z14.string() }))\n);\nvar localShell = createProviderToolFactoryWithOutputSchema5({\n id: \"openai.local_shell\",\n inputSchema: localShellInputSchema,\n outputSchema: localShellOutputSchema\n});\n\n// src/tool/shell.ts\nimport {\n createProviderToolFactoryWithOutputSchema as createProviderToolFactoryWithOutputSchema6,\n lazySchema as lazySchema14,\n zodSchema as zodSchema14\n} from \"@ai-sdk/provider-utils\";\nimport { z as z15 } from \"zod/v4\";\nvar shellInputSchema = lazySchema14(\n () => zodSchema14(\n z15.object({\n action: z15.object({\n commands: z15.array(z15.string()),\n timeoutMs: z15.number().optional(),\n maxOutputLength: z15.number().optional()\n })\n })\n )\n);\nvar shellOutputSchema = lazySchema14(\n () => zodSchema14(\n z15.object({\n output: z15.array(\n z15.object({\n stdout: z15.string(),\n stderr: z15.string(),\n outcome: z15.discriminatedUnion(\"type\", [\n z15.object({ type: z15.literal(\"timeout\") }),\n z15.object({ type: z15.literal(\"exit\"), exitCode: z15.number() })\n ])\n })\n )\n })\n )\n);\nvar shellSkillsSchema = z15.array(\n z15.discriminatedUnion(\"type\", [\n z15.object({\n type: z15.literal(\"skillReference\"),\n skillId: z15.string(),\n version: z15.string().optional()\n }),\n z15.object({\n type: z15.literal(\"inline\"),\n name: z15.string(),\n description: z15.string(),\n source: z15.object({\n type: z15.literal(\"base64\"),\n mediaType: z15.literal(\"application/zip\"),\n data: z15.string()\n })\n })\n ])\n).optional();\nvar shellArgsSchema = lazySchema14(\n () => zodSchema14(\n z15.object({\n environment: z15.union([\n z15.object({\n type: z15.literal(\"containerAuto\"),\n fileIds: z15.array(z15.string()).optional(),\n memoryLimit: z15.enum([\"1g\", \"4g\", \"16g\", \"64g\"]).optional(),\n networkPolicy: z15.discriminatedUnion(\"type\", [\n z15.object({ type: z15.literal(\"disabled\") }),\n z15.object({\n type: z15.literal(\"allowlist\"),\n allowedDomains: z15.array(z15.string()),\n domainSecrets: z15.array(\n z15.object({\n domain: z15.string(),\n name: z15.string(),\n value: z15.string()\n })\n ).optional()\n })\n ]).optional(),\n skills: shellSkillsSchema\n }),\n z15.object({\n type: z15.literal(\"containerReference\"),\n containerId: z15.string()\n }),\n z15.object({\n type: z15.literal(\"local\").optional(),\n skills: z15.array(\n z15.object({\n name: z15.string(),\n description: z15.string(),\n path: z15.string()\n })\n ).optional()\n })\n ]).optional()\n })\n )\n);\nvar shell = createProviderToolFactoryWithOutputSchema6({\n id: \"openai.shell\",\n inputSchema: shellInputSchema,\n outputSchema: shellOutputSchema\n});\n\n// src/tool/tool-search.ts\nimport {\n createProviderToolFactoryWithOutputSchema as createProviderToolFactoryWithOutputSchema7,\n lazySchema as lazySchema15,\n zodSchema as zodSchema15\n} from \"@ai-sdk/provider-utils\";\nimport { z as z16 } from \"zod/v4\";\nvar toolSearchArgsSchema = lazySchema15(\n () => zodSchema15(\n z16.object({\n execution: z16.enum([\"server\", \"client\"]).optional(),\n description: z16.string().optional(),\n parameters: z16.record(z16.string(), z16.unknown()).optional()\n })\n )\n);\nvar toolSearchInputSchema = lazySchema15(\n () => zodSchema15(\n z16.object({\n arguments: z16.unknown().optional(),\n call_id: z16.string().nullish()\n })\n )\n);\nvar toolSearchOutputSchema = lazySchema15(\n () => zodSchema15(\n z16.object({\n tools: z16.array(z16.record(z16.string(), z16.unknown()))\n })\n )\n);\nvar toolSearchToolFactory = createProviderToolFactoryWithOutputSchema7({\n id: \"openai.tool_search\",\n inputSchema: toolSearchInputSchema,\n outputSchema: toolSearchOutputSchema\n});\nvar toolSearch = (args = {}) => toolSearchToolFactory(args);\n\n// src/tool/web-search.ts\nimport {\n createProviderToolFactoryWithOutputSchema as createProviderToolFactoryWithOutputSchema8,\n lazySchema as lazySchema16,\n zodSchema as zodSchema16\n} from \"@ai-sdk/provider-utils\";\nimport { z as z17 } from \"zod/v4\";\nvar webSearchArgsSchema = lazySchema16(\n () => zodSchema16(\n z17.object({\n externalWebAccess: z17.boolean().optional(),\n filters: z17.object({ allowedDomains: z17.array(z17.string()).optional() }).optional(),\n searchContextSize: z17.enum([\"low\", \"medium\", \"high\"]).optional(),\n userLocation: z17.object({\n type: z17.literal(\"approximate\"),\n country: z17.string().optional(),\n city: z17.string().optional(),\n region: z17.string().optional(),\n timezone: z17.string().optional()\n }).optional()\n })\n )\n);\nvar webSearchInputSchema = lazySchema16(() => zodSchema16(z17.object({})));\nvar webSearchOutputSchema = lazySchema16(\n () => zodSchema16(\n z17.object({\n action: z17.discriminatedUnion(\"type\", [\n z17.object({\n type: z17.literal(\"search\"),\n query: z17.string().optional()\n }),\n z17.object({\n type: z17.literal(\"openPage\"),\n url: z17.string().nullish()\n }),\n z17.object({\n type: z17.literal(\"findInPage\"),\n url: z17.string().nullish(),\n pattern: z17.string().nullish()\n })\n ]).optional(),\n sources: z17.array(\n z17.discriminatedUnion(\"type\", [\n z17.object({ type: z17.literal(\"url\"), url: z17.string() }),\n z17.object({ type: z17.literal(\"api\"), name: z17.string() })\n ])\n ).optional()\n })\n )\n);\nvar webSearchToolFactory = createProviderToolFactoryWithOutputSchema8({\n id: \"openai.web_search\",\n inputSchema: webSearchInputSchema,\n outputSchema: webSearchOutputSchema\n});\nvar webSearch = (args = {}) => webSearchToolFactory(args);\n\n// src/tool/web-search-preview.ts\nimport {\n createProviderToolFactoryWithOutputSchema as createProviderToolFactoryWithOutputSchema9,\n lazySchema as lazySchema17,\n zodSchema as zodSchema17\n} from \"@ai-sdk/provider-utils\";\nimport { z as z18 } from \"zod/v4\";\nvar webSearchPreviewArgsSchema = lazySchema17(\n () => zodSchema17(\n z18.object({\n searchContextSize: z18.enum([\"low\", \"medium\", \"high\"]).optional(),\n userLocation: z18.object({\n type: z18.literal(\"approximate\"),\n country: z18.string().optional(),\n city: z18.string().optional(),\n region: z18.string().optional(),\n timezone: z18.string().optional()\n }).optional()\n })\n )\n);\nvar webSearchPreviewInputSchema = lazySchema17(\n () => zodSchema17(z18.object({}))\n);\nvar webSearchPreviewOutputSchema = lazySchema17(\n () => zodSchema17(\n z18.object({\n action: z18.discriminatedUnion(\"type\", [\n z18.object({\n type: z18.literal(\"search\"),\n query: z18.string().optional()\n }),\n z18.object({\n type: z18.literal(\"openPage\"),\n url: z18.string().nullish()\n }),\n z18.object({\n type: z18.literal(\"findInPage\"),\n url: z18.string().nullish(),\n pattern: z18.string().nullish()\n })\n ]).optional()\n })\n )\n);\nvar webSearchPreview = createProviderToolFactoryWithOutputSchema9({\n id: \"openai.web_search_preview\",\n inputSchema: webSearchPreviewInputSchema,\n outputSchema: webSearchPreviewOutputSchema\n});\n\n// src/tool/mcp.ts\nimport {\n createProviderToolFactoryWithOutputSchema as createProviderToolFactoryWithOutputSchema10,\n lazySchema as lazySchema18,\n zodSchema as zodSchema18\n} from \"@ai-sdk/provider-utils\";\nimport { z as z19 } from \"zod/v4\";\nvar jsonValueSchema = z19.lazy(\n () => z19.union([\n z19.string(),\n z19.number(),\n z19.boolean(),\n z19.null(),\n z19.array(jsonValueSchema),\n z19.record(z19.string(), jsonValueSchema)\n ])\n);\nvar mcpArgsSchema = lazySchema18(\n () => zodSchema18(\n z19.object({\n serverLabel: z19.string(),\n allowedTools: z19.union([\n z19.array(z19.string()),\n z19.object({\n readOnly: z19.boolean().optional(),\n toolNames: z19.array(z19.string()).optional()\n })\n ]).optional(),\n authorization: z19.string().optional(),\n connectorId: z19.string().optional(),\n headers: z19.record(z19.string(), z19.string()).optional(),\n requireApproval: z19.union([\n z19.enum([\"always\", \"never\"]),\n z19.object({\n never: z19.object({\n toolNames: z19.array(z19.string()).optional()\n }).optional()\n })\n ]).optional(),\n serverDescription: z19.string().optional(),\n serverUrl: z19.string().optional()\n }).refine(\n (v) => v.serverUrl != null || v.connectorId != null,\n \"One of serverUrl or connectorId must be provided.\"\n )\n )\n);\nvar mcpInputSchema = lazySchema18(() => zodSchema18(z19.object({})));\nvar mcpOutputSchema = lazySchema18(\n () => zodSchema18(\n z19.object({\n type: z19.literal(\"call\"),\n serverLabel: z19.string(),\n name: z19.string(),\n arguments: z19.string(),\n output: z19.string().nullish(),\n error: z19.union([z19.string(), jsonValueSchema]).optional()\n })\n )\n);\nvar mcpToolFactory = createProviderToolFactoryWithOutputSchema10({\n id: \"openai.mcp\",\n inputSchema: mcpInputSchema,\n outputSchema: mcpOutputSchema\n});\nvar mcp = (args) => mcpToolFactory(args);\n\n// src/openai-tools.ts\nvar openaiTools = {\n /**\n * The apply_patch tool lets GPT-5.1 create, update, and delete files in your\n * codebase using structured diffs. Instead of just suggesting edits, the model\n * emits patch operations that your application applies and then reports back on,\n * enabling iterative, multi-step code editing workflows.\n *\n */\n applyPatch,\n /**\n * Custom tools let callers constrain model output to a grammar (regex or\n * Lark syntax). The model returns a `custom_tool_call` output item whose\n * `input` field is a string matching the specified grammar.\n *\n * @param name - The name of the custom tool.\n * @param description - An optional description of the tool.\n * @param format - The output format constraint (grammar type, syntax, and definition).\n */\n customTool,\n /**\n * The Code Interpreter tool allows models to write and run Python code in a\n * sandboxed environment to solve complex problems in domains like data analysis,\n * coding, and math.\n *\n * @param container - The container to use for the code interpreter.\n */\n codeInterpreter,\n /**\n * File search is a tool available in the Responses API. It enables models to\n * retrieve information in a knowledge base of previously uploaded files through\n * semantic and keyword search.\n *\n * @param vectorStoreIds - The vector store IDs to use for the file search.\n * @param maxNumResults - The maximum number of results to return.\n * @param ranking - The ranking options to use for the file search.\n * @param filters - The filters to use for the file search.\n */\n fileSearch,\n /**\n * The image generation tool allows you to generate images using a text prompt,\n * and optionally image inputs. It leverages the GPT Image model,\n * and automatically optimizes text inputs for improved performance.\n *\n * @param background - Background type for the generated image. One of 'auto', 'opaque', or 'transparent'.\n * @param inputFidelity - Input fidelity for the generated image. One of 'low' or 'high'.\n * @param inputImageMask - Optional mask for inpainting. Contains fileId and/or imageUrl.\n * @param model - The image generation model to use. Default: gpt-image-1.\n * @param moderation - Moderation level for the generated image. Default: 'auto'.\n * @param outputCompression - Compression level for the output image (0-100).\n * @param outputFormat - The output format of the generated image. One of 'png', 'jpeg', or 'webp'.\n * @param partialImages - Number of partial images to generate in streaming mode (0-3).\n * @param quality - The quality of the generated image. One of 'auto', 'low', 'medium', or 'high'.\n * @param size - The size of the generated image. One of 'auto', '1024x1024', '1024x1536', or '1536x1024'.\n */\n imageGeneration,\n /**\n * Local shell is a tool that allows agents to run shell commands locally\n * on a machine you or the user provides.\n *\n * Supported models: `gpt-5-codex`\n */\n localShell,\n /**\n * The shell tool allows the model to interact with your local computer through\n * a controlled command-line interface. The model proposes shell commands; your\n * integration executes them and returns the outputs.\n *\n * Available through the Responses API for use with GPT-5.1.\n *\n * WARNING: Running arbitrary shell commands can be dangerous. Always sandbox\n * execution or add strict allow-/deny-lists before forwarding a command to\n * the system shell.\n */\n shell,\n /**\n * Web search allows models to access up-to-date information from the internet\n * and provide answers with sourced citations.\n *\n * @param searchContextSize - The search context size to use for the web search.\n * @param userLocation - The user location to use for the web search.\n */\n webSearchPreview,\n /**\n * Web search allows models to access up-to-date information from the internet\n * and provide answers with sourced citations.\n *\n * @param filters - The filters to use for the web search.\n * @param searchContextSize - The search context size to use for the web search.\n * @param userLocation - The user location to use for the web search.\n */\n webSearch,\n /**\n * MCP (Model Context Protocol) allows models to call tools exposed by\n * remote MCP servers or service connectors.\n *\n * @param serverLabel - Label to identify the MCP server.\n * @param allowedTools - Allowed tool names or filter object.\n * @param authorization - OAuth access token for the MCP server/connector.\n * @param connectorId - Identifier for a service connector.\n * @param headers - Optional headers to include in MCP requests.\n * // param requireApproval - Approval policy ('always'|'never'|filter object). (Removed - always 'never')\n * @param serverDescription - Optional description of the server.\n * @param serverUrl - URL for the MCP server.\n */\n mcp,\n /**\n * Tool search allows the model to dynamically search for and load deferred\n * tools into the model's context as needed. This helps reduce overall token\n * usage, cost, and latency by only loading tools when the model needs them.\n *\n * To use tool search, mark functions or namespaces with `defer_loading: true`\n * in the tools array. The model will use tool search to load these tools\n * when it determines they are needed.\n */\n toolSearch\n};\n\n// src/responses/openai-responses-language-model.ts\nimport {\n APICallError\n} from \"@ai-sdk/provider\";\nimport {\n combineHeaders as combineHeaders5,\n createEventSourceResponseHandler as createEventSourceResponseHandler3,\n createJsonResponseHandler as createJsonResponseHandler5,\n createToolNameMapping,\n generateId as generateId2,\n parseProviderOptions as parseProviderOptions5,\n postJsonToApi as postJsonToApi5\n} from \"@ai-sdk/provider-utils\";\n\n// src/responses/convert-openai-responses-usage.ts\nfunction convertOpenAIResponsesUsage(usage) {\n var _a, _b, _c, _d;\n if (usage == null) {\n return {\n inputTokens: {\n total: void 0,\n noCache: void 0,\n cacheRead: void 0,\n cacheWrite: void 0\n },\n outputTokens: {\n total: void 0,\n text: void 0,\n reasoning: void 0\n },\n raw: void 0\n };\n }\n const inputTokens = usage.input_tokens;\n const outputTokens = usage.output_tokens;\n const cachedTokens = (_b = (_a = usage.input_tokens_details) == null ? void 0 : _a.cached_tokens) != null ? _b : 0;\n const reasoningTokens = (_d = (_c = usage.output_tokens_details) == null ? void 0 : _c.reasoning_tokens) != null ? _d : 0;\n return {\n inputTokens: {\n total: inputTokens,\n noCache: inputTokens - cachedTokens,\n cacheRead: cachedTokens,\n cacheWrite: void 0\n },\n outputTokens: {\n total: outputTokens,\n text: outputTokens - reasoningTokens,\n reasoning: reasoningTokens\n },\n raw: usage\n };\n}\n\n// src/responses/convert-to-openai-responses-input.ts\nimport {\n UnsupportedFunctionalityError as UnsupportedFunctionalityError4\n} from \"@ai-sdk/provider\";\nimport {\n convertToBase64 as convertToBase642,\n isNonNullable,\n parseJSON,\n parseProviderOptions as parseProviderOptions4,\n validateTypes\n} from \"@ai-sdk/provider-utils\";\nimport { z as z20 } from \"zod/v4\";\nfunction serializeToolCallArguments2(input) {\n return JSON.stringify(input === void 0 ? {} : input);\n}\nfunction isFileId(data, prefixes) {\n if (!prefixes) return false;\n return prefixes.some((prefix) => data.startsWith(prefix));\n}\nasync function convertToOpenAIResponsesInput({\n prompt,\n toolNameMapping,\n systemMessageMode,\n providerOptionsName,\n fileIdPrefixes,\n store,\n hasConversation = false,\n hasLocalShellTool = false,\n hasShellTool = false,\n hasApplyPatchTool = false,\n customProviderToolNames\n}) {\n var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k, _l, _m, _n, _o, _p, _q;\n let input = [];\n const warnings = [];\n const processedApprovalIds = /* @__PURE__ */ new Set();\n for (const { role, content } of prompt) {\n switch (role) {\n case \"system\": {\n switch (systemMessageMode) {\n case \"system\": {\n input.push({ role: \"system\", content });\n break;\n }\n case \"developer\": {\n input.push({ role: \"developer\", content });\n break;\n }\n case \"remove\": {\n warnings.push({\n type: \"other\",\n message: \"system messages are removed for this model\"\n });\n break;\n }\n default: {\n const _exhaustiveCheck = systemMessageMode;\n throw new Error(\n `Unsupported system message mode: ${_exhaustiveCheck}`\n );\n }\n }\n break;\n }\n case \"user\": {\n input.push({\n role: \"user\",\n content: content.map((part, index) => {\n var _a2, _b2, _c2;\n switch (part.type) {\n case \"text\": {\n return { type: \"input_text\", text: part.text };\n }\n case \"file\": {\n if (part.mediaType.startsWith(\"image/\")) {\n const mediaType = part.mediaType === \"image/*\" ? \"image/jpeg\" : part.mediaType;\n return {\n type: \"input_image\",\n ...part.data instanceof URL ? { image_url: part.data.toString() } : typeof part.data === \"string\" && isFileId(part.data, fileIdPrefixes) ? { file_id: part.data } : {\n image_url: `data:${mediaType};base64,${convertToBase642(part.data)}`\n },\n detail: (_b2 = (_a2 = part.providerOptions) == null ? void 0 : _a2[providerOptionsName]) == null ? void 0 : _b2.imageDetail\n };\n } else if (part.mediaType === \"application/pdf\") {\n if (part.data instanceof URL) {\n return {\n type: \"input_file\",\n file_url: part.data.toString()\n };\n }\n return {\n type: \"input_file\",\n ...typeof part.data === \"string\" && isFileId(part.data, fileIdPrefixes) ? { file_id: part.data } : {\n filename: (_c2 = part.filename) != null ? _c2 : `part-${index}.pdf`,\n file_data: `data:application/pdf;base64,${convertToBase642(part.data)}`\n }\n };\n } else {\n throw new UnsupportedFunctionalityError4({\n functionality: `file part media type ${part.mediaType}`\n });\n }\n }\n }\n })\n });\n break;\n }\n case \"assistant\": {\n const reasoningMessages = {};\n for (const part of content) {\n switch (part.type) {\n case \"text\": {\n const providerOpts = (_a = part.providerOptions) == null ? void 0 : _a[providerOptionsName];\n const id = providerOpts == null ? void 0 : providerOpts.itemId;\n const phase = providerOpts == null ? void 0 : providerOpts.phase;\n if (hasConversation && id != null) {\n break;\n }\n if (store && id != null) {\n input.push({ type: \"item_reference\", id });\n break;\n }\n input.push({\n role: \"assistant\",\n content: [{ type: \"output_text\", text: part.text }],\n id,\n ...phase != null && { phase }\n });\n break;\n }\n case \"tool-call\": {\n const id = (_f = (_c = (_b = part.providerOptions) == null ? void 0 : _b[providerOptionsName]) == null ? void 0 : _c.itemId) != null ? _f : (_e = (_d = part.providerMetadata) == null ? void 0 : _d[providerOptionsName]) == null ? void 0 : _e.itemId;\n if (hasConversation && id != null) {\n break;\n }\n const resolvedToolName = toolNameMapping.toProviderToolName(\n part.toolName\n );\n if (resolvedToolName === \"tool_search\") {\n if (store && id != null) {\n input.push({ type: \"item_reference\", id });\n break;\n }\n const parsedInput = typeof part.input === \"string\" ? await parseJSON({\n text: part.input,\n schema: toolSearchInputSchema\n }) : await validateTypes({\n value: part.input,\n schema: toolSearchInputSchema\n });\n const execution = parsedInput.call_id != null ? \"client\" : \"server\";\n input.push({\n type: \"tool_search_call\",\n id: id != null ? id : part.toolCallId,\n execution,\n call_id: (_g = parsedInput.call_id) != null ? _g : null,\n status: \"completed\",\n arguments: parsedInput.arguments\n });\n break;\n }\n if (part.providerExecuted) {\n if (store && id != null) {\n input.push({ type: \"item_reference\", id });\n }\n break;\n }\n if (store && id != null) {\n input.push({ type: \"item_reference\", id });\n break;\n }\n if (hasLocalShellTool && resolvedToolName === \"local_shell\") {\n const parsedInput = await validateTypes({\n value: part.input,\n schema: localShellInputSchema\n });\n input.push({\n type: \"local_shell_call\",\n call_id: part.toolCallId,\n id,\n action: {\n type: \"exec\",\n command: parsedInput.action.command,\n timeout_ms: parsedInput.action.timeoutMs,\n user: parsedInput.action.user,\n working_directory: parsedInput.action.workingDirectory,\n env: parsedInput.action.env\n }\n });\n break;\n }\n if (hasShellTool && resolvedToolName === \"shell\") {\n const parsedInput = await validateTypes({\n value: part.input,\n schema: shellInputSchema\n });\n input.push({\n type: \"shell_call\",\n call_id: part.toolCallId,\n id,\n status: \"completed\",\n action: {\n commands: parsedInput.action.commands,\n timeout_ms: parsedInput.action.timeoutMs,\n max_output_length: parsedInput.action.maxOutputLength\n }\n });\n break;\n }\n if (hasApplyPatchTool && resolvedToolName === \"apply_patch\") {\n const parsedInput = await validateTypes({\n value: part.input,\n schema: applyPatchInputSchema\n });\n input.push({\n type: \"apply_patch_call\",\n call_id: parsedInput.callId,\n id,\n status: \"completed\",\n operation: parsedInput.operation\n });\n break;\n }\n if (customProviderToolNames == null ? void 0 : customProviderToolNames.has(resolvedToolName)) {\n input.push({\n type: \"custom_tool_call\",\n call_id: part.toolCallId,\n name: resolvedToolName,\n input: typeof part.input === \"string\" ? part.input : JSON.stringify(part.input),\n id\n });\n break;\n }\n input.push({\n type: \"function_call\",\n call_id: part.toolCallId,\n name: resolvedToolName,\n arguments: serializeToolCallArguments2(part.input),\n id\n });\n break;\n }\n // assistant tool result parts are from provider-executed tools:\n case \"tool-result\": {\n if (part.output.type === \"execution-denied\" || part.output.type === \"json\" && typeof part.output.value === \"object\" && part.output.value != null && \"type\" in part.output.value && part.output.value.type === \"execution-denied\") {\n break;\n }\n if (hasConversation) {\n break;\n }\n const resolvedResultToolName = toolNameMapping.toProviderToolName(\n part.toolName\n );\n if (resolvedResultToolName === \"tool_search\") {\n const itemId = (_j = (_i = (_h = part.providerOptions) == null ? void 0 : _h[providerOptionsName]) == null ? void 0 : _i.itemId) != null ? _j : part.toolCallId;\n if (store) {\n input.push({ type: \"item_reference\", id: itemId });\n } else if (part.output.type === \"json\") {\n const parsedOutput = await validateTypes({\n value: part.output.value,\n schema: toolSearchOutputSchema\n });\n input.push({\n type: \"tool_search_output\",\n id: itemId,\n execution: \"server\",\n call_id: null,\n status: \"completed\",\n tools: parsedOutput.tools\n });\n }\n break;\n }\n if (hasShellTool && resolvedResultToolName === \"shell\") {\n if (part.output.type === \"json\") {\n const parsedOutput = await validateTypes({\n value: part.output.value,\n schema: shellOutputSchema\n });\n input.push({\n type: \"shell_call_output\",\n call_id: part.toolCallId,\n output: parsedOutput.output.map((item) => ({\n stdout: item.stdout,\n stderr: item.stderr,\n outcome: item.outcome.type === \"timeout\" ? { type: \"timeout\" } : {\n type: \"exit\",\n exit_code: item.outcome.exitCode\n }\n }))\n });\n }\n break;\n }\n if (store) {\n const itemId = (_m = (_l = (_k = part.providerOptions) == null ? void 0 : _k[providerOptionsName]) == null ? void 0 : _l.itemId) != null ? _m : part.toolCallId;\n input.push({ type: \"item_reference\", id: itemId });\n } else {\n warnings.push({\n type: \"other\",\n message: `Results for OpenAI tool ${part.toolName} are not sent to the API when store is false`\n });\n }\n break;\n }\n case \"reasoning\": {\n const providerOptions = await parseProviderOptions4({\n provider: providerOptionsName,\n providerOptions: part.providerOptions,\n schema: openaiResponsesReasoningProviderOptionsSchema\n });\n const reasoningId = providerOptions == null ? void 0 : providerOptions.itemId;\n if (hasConversation && reasoningId != null) {\n break;\n }\n if (reasoningId != null) {\n const reasoningMessage = reasoningMessages[reasoningId];\n if (store) {\n if (reasoningMessage === void 0) {\n input.push({ type: \"item_reference\", id: reasoningId });\n reasoningMessages[reasoningId] = {\n type: \"reasoning\",\n id: reasoningId,\n summary: []\n };\n }\n } else {\n const summaryParts = [];\n if (part.text.length > 0) {\n summaryParts.push({\n type: \"summary_text\",\n text: part.text\n });\n } else if (reasoningMessage !== void 0) {\n warnings.push({\n type: \"other\",\n message: `Cannot append empty reasoning part to existing reasoning sequence. Skipping reasoning part: ${JSON.stringify(part)}.`\n });\n }\n if (reasoningMessage === void 0) {\n reasoningMessages[reasoningId] = {\n type: \"reasoning\",\n id: reasoningId,\n encrypted_content: providerOptions == null ? void 0 : providerOptions.reasoningEncryptedContent,\n summary: summaryParts\n };\n input.push(reasoningMessages[reasoningId]);\n } else {\n reasoningMessage.summary.push(...summaryParts);\n if ((providerOptions == null ? void 0 : providerOptions.reasoningEncryptedContent) != null) {\n reasoningMessage.encrypted_content = providerOptions.reasoningEncryptedContent;\n }\n }\n }\n } else {\n const encryptedContent = providerOptions == null ? void 0 : providerOptions.reasoningEncryptedContent;\n if (encryptedContent != null) {\n const summaryParts = [];\n if (part.text.length > 0) {\n summaryParts.push({\n type: \"summary_text\",\n text: part.text\n });\n }\n input.push({\n type: \"reasoning\",\n encrypted_content: encryptedContent,\n summary: summaryParts\n });\n } else {\n warnings.push({\n type: \"other\",\n message: `Non-OpenAI reasoning parts are not supported. Skipping reasoning part: ${JSON.stringify(part)}.`\n });\n }\n }\n break;\n }\n }\n }\n break;\n }\n case \"tool\": {\n for (const part of content) {\n if (part.type === \"tool-approval-response\") {\n const approvalResponse = part;\n if (processedApprovalIds.has(approvalResponse.approvalId)) {\n continue;\n }\n processedApprovalIds.add(approvalResponse.approvalId);\n if (store) {\n input.push({\n type: \"item_reference\",\n id: approvalResponse.approvalId\n });\n }\n input.push({\n type: \"mcp_approval_response\",\n approval_request_id: approvalResponse.approvalId,\n approve: approvalResponse.approved\n });\n continue;\n }\n const output = part.output;\n if (output.type === \"execution-denied\") {\n const approvalId = (_o = (_n = output.providerOptions) == null ? void 0 : _n.openai) == null ? void 0 : _o.approvalId;\n if (approvalId) {\n continue;\n }\n }\n const resolvedToolName = toolNameMapping.toProviderToolName(\n part.toolName\n );\n if (resolvedToolName === \"tool_search\" && output.type === \"json\") {\n const parsedOutput = await validateTypes({\n value: output.value,\n schema: toolSearchOutputSchema\n });\n input.push({\n type: \"tool_search_output\",\n execution: \"client\",\n call_id: part.toolCallId,\n status: \"completed\",\n tools: parsedOutput.tools\n });\n continue;\n }\n if (hasLocalShellTool && resolvedToolName === \"local_shell\" && output.type === \"json\") {\n const parsedOutput = await validateTypes({\n value: output.value,\n schema: localShellOutputSchema\n });\n input.push({\n type: \"local_shell_call_output\",\n call_id: part.toolCallId,\n output: parsedOutput.output\n });\n continue;\n }\n if (hasShellTool && resolvedToolName === \"shell\" && output.type === \"json\") {\n const parsedOutput = await validateTypes({\n value: output.value,\n schema: shellOutputSchema\n });\n input.push({\n type: \"shell_call_output\",\n call_id: part.toolCallId,\n output: parsedOutput.output.map((item) => ({\n stdout: item.stdout,\n stderr: item.stderr,\n outcome: item.outcome.type === \"timeout\" ? { type: \"timeout\" } : {\n type: \"exit\",\n exit_code: item.outcome.exitCode\n }\n }))\n });\n continue;\n }\n if (hasApplyPatchTool && part.toolName === \"apply_patch\" && output.type === \"json\") {\n const parsedOutput = await validateTypes({\n value: output.value,\n schema: applyPatchOutputSchema\n });\n input.push({\n type: \"apply_patch_call_output\",\n call_id: part.toolCallId,\n status: parsedOutput.status,\n output: parsedOutput.output\n });\n continue;\n }\n if (customProviderToolNames == null ? void 0 : customProviderToolNames.has(resolvedToolName)) {\n let outputValue;\n switch (output.type) {\n case \"text\":\n case \"error-text\":\n outputValue = output.value;\n break;\n case \"execution-denied\":\n outputValue = (_p = output.reason) != null ? _p : \"Tool execution denied.\";\n break;\n case \"json\":\n case \"error-json\":\n outputValue = JSON.stringify(output.value);\n break;\n case \"content\":\n outputValue = output.value.map((item) => {\n var _a2;\n switch (item.type) {\n case \"text\":\n return { type: \"input_text\", text: item.text };\n case \"image-data\":\n return {\n type: \"input_image\",\n image_url: `data:${item.mediaType};base64,${item.data}`\n };\n case \"image-url\":\n return {\n type: \"input_image\",\n image_url: item.url\n };\n case \"file-data\":\n return {\n type: \"input_file\",\n filename: (_a2 = item.filename) != null ? _a2 : \"data\",\n file_data: `data:${item.mediaType};base64,${item.data}`\n };\n case \"file-url\":\n return {\n type: \"input_file\",\n file_url: item.url\n };\n default:\n warnings.push({\n type: \"other\",\n message: `unsupported custom tool content part type: ${item.type}`\n });\n return void 0;\n }\n }).filter(isNonNullable);\n break;\n default:\n outputValue = \"\";\n }\n input.push({\n type: \"custom_tool_call_output\",\n call_id: part.toolCallId,\n output: outputValue\n });\n continue;\n }\n let contentValue;\n switch (output.type) {\n case \"text\":\n case \"error-text\":\n contentValue = output.value;\n break;\n case \"execution-denied\":\n contentValue = (_q = output.reason) != null ? _q : \"Tool execution denied.\";\n break;\n case \"json\":\n case \"error-json\":\n contentValue = JSON.stringify(output.value);\n break;\n case \"content\":\n contentValue = output.value.map((item) => {\n var _a2;\n switch (item.type) {\n case \"text\": {\n return { type: \"input_text\", text: item.text };\n }\n case \"image-data\": {\n return {\n type: \"input_image\",\n image_url: `data:${item.mediaType};base64,${item.data}`\n };\n }\n case \"image-url\": {\n return {\n type: \"input_image\",\n image_url: item.url\n };\n }\n case \"file-data\": {\n return {\n type: \"input_file\",\n filename: (_a2 = item.filename) != null ? _a2 : \"data\",\n file_data: `data:${item.mediaType};base64,${item.data}`\n };\n }\n case \"file-url\": {\n return {\n type: \"input_file\",\n file_url: item.url\n };\n }\n default: {\n warnings.push({\n type: \"other\",\n message: `unsupported tool content part type: ${item.type}`\n });\n return void 0;\n }\n }\n }).filter(isNonNullable);\n break;\n }\n input.push({\n type: \"function_call_output\",\n call_id: part.toolCallId,\n output: contentValue\n });\n }\n break;\n }\n default: {\n const _exhaustiveCheck = role;\n throw new Error(`Unsupported role: ${_exhaustiveCheck}`);\n }\n }\n }\n if (!store && input.some(\n (item) => \"type\" in item && item.type === \"reasoning\" && item.encrypted_content == null\n )) {\n warnings.push({\n type: \"other\",\n message: \"Reasoning parts without encrypted content are not supported when store is false. Skipping reasoning parts.\"\n });\n input = input.filter(\n (item) => !(\"type\" in item) || item.type !== \"reasoning\" || item.encrypted_content != null\n );\n }\n return { input, warnings };\n}\nvar openaiResponsesReasoningProviderOptionsSchema = z20.object({\n itemId: z20.string().nullish(),\n reasoningEncryptedContent: z20.string().nullish()\n});\n\n// src/responses/map-openai-responses-finish-reason.ts\nfunction mapOpenAIResponseFinishReason({\n finishReason,\n hasFunctionCall\n}) {\n switch (finishReason) {\n case void 0:\n case null:\n return hasFunctionCall ? \"tool-calls\" : \"stop\";\n case \"max_output_tokens\":\n return \"length\";\n case \"content_filter\":\n return \"content-filter\";\n default:\n return hasFunctionCall ? \"tool-calls\" : \"other\";\n }\n}\n\n// src/responses/openai-responses-api.ts\nimport { lazySchema as lazySchema19, zodSchema as zodSchema19 } from \"@ai-sdk/provider-utils\";\nimport { z as z21 } from \"zod/v4\";\nvar jsonValueSchema2 = z21.lazy(\n () => z21.union([\n z21.string(),\n z21.number(),\n z21.boolean(),\n z21.null(),\n z21.array(jsonValueSchema2),\n z21.record(z21.string(), jsonValueSchema2.optional())\n ])\n);\nvar openaiResponsesChunkSchema = lazySchema19(\n () => zodSchema19(\n z21.union([\n z21.object({\n type: z21.literal(\"response.output_text.delta\"),\n item_id: z21.string(),\n delta: z21.string(),\n logprobs: z21.array(\n z21.object({\n token: z21.string(),\n logprob: z21.number(),\n top_logprobs: z21.array(\n z21.object({\n token: z21.string(),\n logprob: z21.number()\n })\n )\n })\n ).nullish()\n }),\n z21.object({\n type: z21.enum([\"response.completed\", \"response.incomplete\"]),\n response: z21.object({\n incomplete_details: z21.object({ reason: z21.string() }).nullish(),\n usage: z21.object({\n input_tokens: z21.number(),\n input_tokens_details: z21.object({ cached_tokens: z21.number().nullish() }).nullish(),\n output_tokens: z21.number(),\n output_tokens_details: z21.object({ reasoning_tokens: z21.number().nullish() }).nullish()\n }),\n service_tier: z21.string().nullish()\n })\n }),\n z21.object({\n type: z21.literal(\"response.failed\"),\n response: z21.object({\n error: z21.object({\n code: z21.string().nullish(),\n message: z21.string()\n }).nullish(),\n incomplete_details: z21.object({ reason: z21.string() }).nullish(),\n usage: z21.object({\n input_tokens: z21.number(),\n input_tokens_details: z21.object({ cached_tokens: z21.number().nullish() }).nullish(),\n output_tokens: z21.number(),\n output_tokens_details: z21.object({ reasoning_tokens: z21.number().nullish() }).nullish()\n }).nullish(),\n service_tier: z21.string().nullish()\n })\n }),\n z21.object({\n type: z21.literal(\"response.created\"),\n response: z21.object({\n id: z21.string(),\n created_at: z21.number(),\n model: z21.string(),\n service_tier: z21.string().nullish()\n })\n }),\n z21.object({\n type: z21.literal(\"response.output_item.added\"),\n output_index: z21.number(),\n item: z21.discriminatedUnion(\"type\", [\n z21.object({\n type: z21.literal(\"message\"),\n id: z21.string(),\n phase: z21.enum([\"commentary\", \"final_answer\"]).nullish()\n }),\n z21.object({\n type: z21.literal(\"reasoning\"),\n id: z21.string(),\n encrypted_content: z21.string().nullish()\n }),\n z21.object({\n type: z21.literal(\"function_call\"),\n id: z21.string(),\n call_id: z21.string(),\n name: z21.string(),\n arguments: z21.string()\n }),\n z21.object({\n type: z21.literal(\"web_search_call\"),\n id: z21.string(),\n status: z21.string()\n }),\n z21.object({\n type: z21.literal(\"computer_call\"),\n id: z21.string(),\n status: z21.string()\n }),\n z21.object({\n type: z21.literal(\"file_search_call\"),\n id: z21.string()\n }),\n z21.object({\n type: z21.literal(\"image_generation_call\"),\n id: z21.string()\n }),\n z21.object({\n type: z21.literal(\"code_interpreter_call\"),\n id: z21.string(),\n container_id: z21.string(),\n code: z21.string().nullable(),\n outputs: z21.array(\n z21.discriminatedUnion(\"type\", [\n z21.object({ type: z21.literal(\"logs\"), logs: z21.string() }),\n z21.object({ type: z21.literal(\"image\"), url: z21.string() })\n ])\n ).nullable(),\n status: z21.string()\n }),\n z21.object({\n type: z21.literal(\"mcp_call\"),\n id: z21.string(),\n status: z21.string(),\n approval_request_id: z21.string().nullish()\n }),\n z21.object({\n type: z21.literal(\"mcp_list_tools\"),\n id: z21.string()\n }),\n z21.object({\n type: z21.literal(\"mcp_approval_request\"),\n id: z21.string()\n }),\n z21.object({\n type: z21.literal(\"apply_patch_call\"),\n id: z21.string(),\n call_id: z21.string(),\n status: z21.enum([\"in_progress\", \"completed\"]),\n operation: z21.discriminatedUnion(\"type\", [\n z21.object({\n type: z21.literal(\"create_file\"),\n path: z21.string(),\n diff: z21.string()\n }),\n z21.object({\n type: z21.literal(\"delete_file\"),\n path: z21.string()\n }),\n z21.object({\n type: z21.literal(\"update_file\"),\n path: z21.string(),\n diff: z21.string()\n })\n ])\n }),\n z21.object({\n type: z21.literal(\"custom_tool_call\"),\n id: z21.string(),\n call_id: z21.string(),\n name: z21.string(),\n input: z21.string()\n }),\n z21.object({\n type: z21.literal(\"shell_call\"),\n id: z21.string(),\n call_id: z21.string(),\n status: z21.enum([\"in_progress\", \"completed\", \"incomplete\"]),\n action: z21.object({\n commands: z21.array(z21.string())\n })\n }),\n z21.object({\n type: z21.literal(\"shell_call_output\"),\n id: z21.string(),\n call_id: z21.string(),\n status: z21.enum([\"in_progress\", \"completed\", \"incomplete\"]),\n output: z21.array(\n z21.object({\n stdout: z21.string(),\n stderr: z21.string(),\n outcome: z21.discriminatedUnion(\"type\", [\n z21.object({ type: z21.literal(\"timeout\") }),\n z21.object({\n type: z21.literal(\"exit\"),\n exit_code: z21.number()\n })\n ])\n })\n )\n }),\n z21.object({\n type: z21.literal(\"tool_search_call\"),\n id: z21.string(),\n execution: z21.enum([\"server\", \"client\"]),\n call_id: z21.string().nullable(),\n status: z21.enum([\"in_progress\", \"completed\", \"incomplete\"]),\n arguments: z21.unknown()\n }),\n z21.object({\n type: z21.literal(\"tool_search_output\"),\n id: z21.string(),\n execution: z21.enum([\"server\", \"client\"]),\n call_id: z21.string().nullable(),\n status: z21.enum([\"in_progress\", \"completed\", \"incomplete\"]),\n tools: z21.array(z21.record(z21.string(), jsonValueSchema2.optional()))\n })\n ])\n }),\n z21.object({\n type: z21.literal(\"response.output_item.done\"),\n output_index: z21.number(),\n item: z21.discriminatedUnion(\"type\", [\n z21.object({\n type: z21.literal(\"message\"),\n id: z21.string(),\n phase: z21.enum([\"commentary\", \"final_answer\"]).nullish()\n }),\n z21.object({\n type: z21.literal(\"reasoning\"),\n id: z21.string(),\n encrypted_content: z21.string().nullish()\n }),\n z21.object({\n type: z21.literal(\"function_call\"),\n id: z21.string(),\n call_id: z21.string(),\n name: z21.string(),\n arguments: z21.string(),\n status: z21.literal(\"completed\")\n }),\n z21.object({\n type: z21.literal(\"custom_tool_call\"),\n id: z21.string(),\n call_id: z21.string(),\n name: z21.string(),\n input: z21.string(),\n status: z21.literal(\"completed\")\n }),\n z21.object({\n type: z21.literal(\"code_interpreter_call\"),\n id: z21.string(),\n code: z21.string().nullable(),\n container_id: z21.string(),\n outputs: z21.array(\n z21.discriminatedUnion(\"type\", [\n z21.object({ type: z21.literal(\"logs\"), logs: z21.string() }),\n z21.object({ type: z21.literal(\"image\"), url: z21.string() })\n ])\n ).nullable()\n }),\n z21.object({\n type: z21.literal(\"image_generation_call\"),\n id: z21.string(),\n result: z21.string()\n }),\n z21.object({\n type: z21.literal(\"web_search_call\"),\n id: z21.string(),\n status: z21.string(),\n action: z21.discriminatedUnion(\"type\", [\n z21.object({\n type: z21.literal(\"search\"),\n query: z21.string().nullish(),\n sources: z21.array(\n z21.discriminatedUnion(\"type\", [\n z21.object({ type: z21.literal(\"url\"), url: z21.string() }),\n z21.object({ type: z21.literal(\"api\"), name: z21.string() })\n ])\n ).nullish()\n }),\n z21.object({\n type: z21.literal(\"open_page\"),\n url: z21.string().nullish()\n }),\n z21.object({\n type: z21.literal(\"find_in_page\"),\n url: z21.string().nullish(),\n pattern: z21.string().nullish()\n })\n ]).nullish()\n }),\n z21.object({\n type: z21.literal(\"file_search_call\"),\n id: z21.string(),\n queries: z21.array(z21.string()),\n results: z21.array(\n z21.object({\n attributes: z21.record(\n z21.string(),\n z21.union([z21.string(), z21.number(), z21.boolean()])\n ),\n file_id: z21.string(),\n filename: z21.string(),\n score: z21.number(),\n text: z21.string()\n })\n ).nullish()\n }),\n z21.object({\n type: z21.literal(\"local_shell_call\"),\n id: z21.string(),\n call_id: z21.string(),\n action: z21.object({\n type: z21.literal(\"exec\"),\n command: z21.array(z21.string()),\n timeout_ms: z21.number().optional(),\n user: z21.string().optional(),\n working_directory: z21.string().optional(),\n env: z21.record(z21.string(), z21.string()).optional()\n })\n }),\n z21.object({\n type: z21.literal(\"computer_call\"),\n id: z21.string(),\n status: z21.literal(\"completed\")\n }),\n z21.object({\n type: z21.literal(\"mcp_call\"),\n id: z21.string(),\n status: z21.string(),\n arguments: z21.string(),\n name: z21.string(),\n server_label: z21.string(),\n output: z21.string().nullish(),\n error: z21.union([\n z21.string(),\n z21.object({\n type: z21.string().optional(),\n code: z21.union([z21.number(), z21.string()]).optional(),\n message: z21.string().optional()\n }).loose()\n ]).nullish(),\n approval_request_id: z21.string().nullish()\n }),\n z21.object({\n type: z21.literal(\"mcp_list_tools\"),\n id: z21.string(),\n server_label: z21.string(),\n tools: z21.array(\n z21.object({\n name: z21.string(),\n description: z21.string().optional(),\n input_schema: z21.any(),\n annotations: z21.record(z21.string(), z21.unknown()).optional()\n })\n ),\n error: z21.union([\n z21.string(),\n z21.object({\n type: z21.string().optional(),\n code: z21.union([z21.number(), z21.string()]).optional(),\n message: z21.string().optional()\n }).loose()\n ]).optional()\n }),\n z21.object({\n type: z21.literal(\"mcp_approval_request\"),\n id: z21.string(),\n server_label: z21.string(),\n name: z21.string(),\n arguments: z21.string(),\n approval_request_id: z21.string().optional()\n }),\n z21.object({\n type: z21.literal(\"apply_patch_call\"),\n id: z21.string(),\n call_id: z21.string(),\n status: z21.enum([\"in_progress\", \"completed\"]),\n operation: z21.discriminatedUnion(\"type\", [\n z21.object({\n type: z21.literal(\"create_file\"),\n path: z21.string(),\n diff: z21.string()\n }),\n z21.object({\n type: z21.literal(\"delete_file\"),\n path: z21.string()\n }),\n z21.object({\n type: z21.literal(\"update_file\"),\n path: z21.string(),\n diff: z21.string()\n })\n ])\n }),\n z21.object({\n type: z21.literal(\"shell_call\"),\n id: z21.string(),\n call_id: z21.string(),\n status: z21.enum([\"in_progress\", \"completed\", \"incomplete\"]),\n action: z21.object({\n commands: z21.array(z21.string())\n })\n }),\n z21.object({\n type: z21.literal(\"shell_call_output\"),\n id: z21.string(),\n call_id: z21.string(),\n status: z21.enum([\"in_progress\", \"completed\", \"incomplete\"]),\n output: z21.array(\n z21.object({\n stdout: z21.string(),\n stderr: z21.string(),\n outcome: z21.discriminatedUnion(\"type\", [\n z21.object({ type: z21.literal(\"timeout\") }),\n z21.object({\n type: z21.literal(\"exit\"),\n exit_code: z21.number()\n })\n ])\n })\n )\n }),\n z21.object({\n type: z21.literal(\"tool_search_call\"),\n id: z21.string(),\n execution: z21.enum([\"server\", \"client\"]),\n call_id: z21.string().nullable(),\n status: z21.enum([\"in_progress\", \"completed\", \"incomplete\"]),\n arguments: z21.unknown()\n }),\n z21.object({\n type: z21.literal(\"tool_search_output\"),\n id: z21.string(),\n execution: z21.enum([\"server\", \"client\"]),\n call_id: z21.string().nullable(),\n status: z21.enum([\"in_progress\", \"completed\", \"incomplete\"]),\n tools: z21.array(z21.record(z21.string(), jsonValueSchema2.optional()))\n })\n ])\n }),\n z21.object({\n type: z21.literal(\"response.function_call_arguments.delta\"),\n item_id: z21.string(),\n output_index: z21.number(),\n delta: z21.string()\n }),\n z21.object({\n type: z21.literal(\"response.custom_tool_call_input.delta\"),\n item_id: z21.string(),\n output_index: z21.number(),\n delta: z21.string()\n }),\n z21.object({\n type: z21.literal(\"response.image_generation_call.partial_image\"),\n item_id: z21.string(),\n output_index: z21.number(),\n partial_image_b64: z21.string()\n }),\n z21.object({\n type: z21.literal(\"response.code_interpreter_call_code.delta\"),\n item_id: z21.string(),\n output_index: z21.number(),\n delta: z21.string()\n }),\n z21.object({\n type: z21.literal(\"response.code_interpreter_call_code.done\"),\n item_id: z21.string(),\n output_index: z21.number(),\n code: z21.string()\n }),\n z21.object({\n type: z21.literal(\"response.output_text.annotation.added\"),\n annotation: z21.discriminatedUnion(\"type\", [\n z21.object({\n type: z21.literal(\"url_citation\"),\n start_index: z21.number(),\n end_index: z21.number(),\n url: z21.string(),\n title: z21.string()\n }),\n z21.object({\n type: z21.literal(\"file_citation\"),\n file_id: z21.string(),\n filename: z21.string(),\n index: z21.number()\n }),\n z21.object({\n type: z21.literal(\"container_file_citation\"),\n container_id: z21.string(),\n file_id: z21.string(),\n filename: z21.string(),\n start_index: z21.number(),\n end_index: z21.number()\n }),\n z21.object({\n type: z21.literal(\"file_path\"),\n file_id: z21.string(),\n index: z21.number()\n })\n ])\n }),\n z21.object({\n type: z21.literal(\"response.reasoning_summary_part.added\"),\n item_id: z21.string(),\n summary_index: z21.number()\n }),\n z21.object({\n type: z21.literal(\"response.reasoning_summary_text.delta\"),\n item_id: z21.string(),\n summary_index: z21.number(),\n delta: z21.string()\n }),\n z21.object({\n type: z21.literal(\"response.reasoning_summary_part.done\"),\n item_id: z21.string(),\n summary_index: z21.number()\n }),\n z21.object({\n type: z21.literal(\"response.apply_patch_call_operation_diff.delta\"),\n item_id: z21.string(),\n output_index: z21.number(),\n delta: z21.string(),\n obfuscation: z21.string().nullish()\n }),\n z21.object({\n type: z21.literal(\"response.apply_patch_call_operation_diff.done\"),\n item_id: z21.string(),\n output_index: z21.number(),\n diff: z21.string()\n }),\n z21.object({\n type: z21.literal(\"error\"),\n sequence_number: z21.number(),\n error: z21.object({\n type: z21.string(),\n code: z21.string(),\n message: z21.string(),\n param: z21.string().nullish()\n })\n }),\n z21.object({ type: z21.string() }).loose().transform((value) => ({\n type: \"unknown_chunk\",\n message: value.type\n }))\n // fallback for unknown chunks\n ])\n )\n);\nvar openaiResponsesResponseSchema = lazySchema19(\n () => zodSchema19(\n z21.object({\n id: z21.string().optional(),\n created_at: z21.number().optional(),\n error: z21.object({\n message: z21.string(),\n type: z21.string(),\n param: z21.string().nullish(),\n code: z21.string()\n }).nullish(),\n model: z21.string().optional(),\n output: z21.array(\n z21.discriminatedUnion(\"type\", [\n z21.object({\n type: z21.literal(\"message\"),\n role: z21.literal(\"assistant\"),\n id: z21.string(),\n phase: z21.enum([\"commentary\", \"final_answer\"]).nullish(),\n content: z21.array(\n z21.object({\n type: z21.literal(\"output_text\"),\n text: z21.string(),\n logprobs: z21.array(\n z21.object({\n token: z21.string(),\n logprob: z21.number(),\n top_logprobs: z21.array(\n z21.object({\n token: z21.string(),\n logprob: z21.number()\n })\n )\n })\n ).nullish(),\n annotations: z21.array(\n z21.discriminatedUnion(\"type\", [\n z21.object({\n type: z21.literal(\"url_citation\"),\n start_index: z21.number(),\n end_index: z21.number(),\n url: z21.string(),\n title: z21.string()\n }),\n z21.object({\n type: z21.literal(\"file_citation\"),\n file_id: z21.string(),\n filename: z21.string(),\n index: z21.number()\n }),\n z21.object({\n type: z21.literal(\"container_file_citation\"),\n container_id: z21.string(),\n file_id: z21.string(),\n filename: z21.string(),\n start_index: z21.number(),\n end_index: z21.number()\n }),\n z21.object({\n type: z21.literal(\"file_path\"),\n file_id: z21.string(),\n index: z21.number()\n })\n ])\n )\n })\n )\n }),\n z21.object({\n type: z21.literal(\"web_search_call\"),\n id: z21.string(),\n status: z21.string(),\n action: z21.discriminatedUnion(\"type\", [\n z21.object({\n type: z21.literal(\"search\"),\n query: z21.string().nullish(),\n sources: z21.array(\n z21.discriminatedUnion(\"type\", [\n z21.object({ type: z21.literal(\"url\"), url: z21.string() }),\n z21.object({\n type: z21.literal(\"api\"),\n name: z21.string()\n })\n ])\n ).nullish()\n }),\n z21.object({\n type: z21.literal(\"open_page\"),\n url: z21.string().nullish()\n }),\n z21.object({\n type: z21.literal(\"find_in_page\"),\n url: z21.string().nullish(),\n pattern: z21.string().nullish()\n })\n ]).nullish()\n }),\n z21.object({\n type: z21.literal(\"file_search_call\"),\n id: z21.string(),\n queries: z21.array(z21.string()),\n results: z21.array(\n z21.object({\n attributes: z21.record(\n z21.string(),\n z21.union([z21.string(), z21.number(), z21.boolean()])\n ),\n file_id: z21.string(),\n filename: z21.string(),\n score: z21.number(),\n text: z21.string()\n })\n ).nullish()\n }),\n z21.object({\n type: z21.literal(\"code_interpreter_call\"),\n id: z21.string(),\n code: z21.string().nullable(),\n container_id: z21.string(),\n outputs: z21.array(\n z21.discriminatedUnion(\"type\", [\n z21.object({ type: z21.literal(\"logs\"), logs: z21.string() }),\n z21.object({ type: z21.literal(\"image\"), url: z21.string() })\n ])\n ).nullable()\n }),\n z21.object({\n type: z21.literal(\"image_generation_call\"),\n id: z21.string(),\n result: z21.string()\n }),\n z21.object({\n type: z21.literal(\"local_shell_call\"),\n id: z21.string(),\n call_id: z21.string(),\n action: z21.object({\n type: z21.literal(\"exec\"),\n command: z21.array(z21.string()),\n timeout_ms: z21.number().optional(),\n user: z21.string().optional(),\n working_directory: z21.string().optional(),\n env: z21.record(z21.string(), z21.string()).optional()\n })\n }),\n z21.object({\n type: z21.literal(\"function_call\"),\n call_id: z21.string(),\n name: z21.string(),\n arguments: z21.string(),\n id: z21.string()\n }),\n z21.object({\n type: z21.literal(\"custom_tool_call\"),\n call_id: z21.string(),\n name: z21.string(),\n input: z21.string(),\n id: z21.string()\n }),\n z21.object({\n type: z21.literal(\"computer_call\"),\n id: z21.string(),\n status: z21.string().optional()\n }),\n z21.object({\n type: z21.literal(\"reasoning\"),\n id: z21.string(),\n encrypted_content: z21.string().nullish(),\n summary: z21.array(\n z21.object({\n type: z21.literal(\"summary_text\"),\n text: z21.string()\n })\n )\n }),\n z21.object({\n type: z21.literal(\"mcp_call\"),\n id: z21.string(),\n status: z21.string(),\n arguments: z21.string(),\n name: z21.string(),\n server_label: z21.string(),\n output: z21.string().nullish(),\n error: z21.union([\n z21.string(),\n z21.object({\n type: z21.string().optional(),\n code: z21.union([z21.number(), z21.string()]).optional(),\n message: z21.string().optional()\n }).loose()\n ]).nullish(),\n approval_request_id: z21.string().nullish()\n }),\n z21.object({\n type: z21.literal(\"mcp_list_tools\"),\n id: z21.string(),\n server_label: z21.string(),\n tools: z21.array(\n z21.object({\n name: z21.string(),\n description: z21.string().optional(),\n input_schema: z21.any(),\n annotations: z21.record(z21.string(), z21.unknown()).optional()\n })\n ),\n error: z21.union([\n z21.string(),\n z21.object({\n type: z21.string().optional(),\n code: z21.union([z21.number(), z21.string()]).optional(),\n message: z21.string().optional()\n }).loose()\n ]).optional()\n }),\n z21.object({\n type: z21.literal(\"mcp_approval_request\"),\n id: z21.string(),\n server_label: z21.string(),\n name: z21.string(),\n arguments: z21.string(),\n approval_request_id: z21.string().optional()\n }),\n z21.object({\n type: z21.literal(\"apply_patch_call\"),\n id: z21.string(),\n call_id: z21.string(),\n status: z21.enum([\"in_progress\", \"completed\"]),\n operation: z21.discriminatedUnion(\"type\", [\n z21.object({\n type: z21.literal(\"create_file\"),\n path: z21.string(),\n diff: z21.string()\n }),\n z21.object({\n type: z21.literal(\"delete_file\"),\n path: z21.string()\n }),\n z21.object({\n type: z21.literal(\"update_file\"),\n path: z21.string(),\n diff: z21.string()\n })\n ])\n }),\n z21.object({\n type: z21.literal(\"shell_call\"),\n id: z21.string(),\n call_id: z21.string(),\n status: z21.enum([\"in_progress\", \"completed\", \"incomplete\"]),\n action: z21.object({\n commands: z21.array(z21.string())\n })\n }),\n z21.object({\n type: z21.literal(\"shell_call_output\"),\n id: z21.string(),\n call_id: z21.string(),\n status: z21.enum([\"in_progress\", \"completed\", \"incomplete\"]),\n output: z21.array(\n z21.object({\n stdout: z21.string(),\n stderr: z21.string(),\n outcome: z21.discriminatedUnion(\"type\", [\n z21.object({ type: z21.literal(\"timeout\") }),\n z21.object({\n type: z21.literal(\"exit\"),\n exit_code: z21.number()\n })\n ])\n })\n )\n }),\n z21.object({\n type: z21.literal(\"tool_search_call\"),\n id: z21.string(),\n execution: z21.enum([\"server\", \"client\"]),\n call_id: z21.string().nullable(),\n status: z21.enum([\"in_progress\", \"completed\", \"incomplete\"]),\n arguments: z21.unknown()\n }),\n z21.object({\n type: z21.literal(\"tool_search_output\"),\n id: z21.string(),\n execution: z21.enum([\"server\", \"client\"]),\n call_id: z21.string().nullable(),\n status: z21.enum([\"in_progress\", \"completed\", \"incomplete\"]),\n tools: z21.array(z21.record(z21.string(), jsonValueSchema2.optional()))\n })\n ])\n ).optional(),\n service_tier: z21.string().nullish(),\n incomplete_details: z21.object({ reason: z21.string() }).nullish(),\n usage: z21.object({\n input_tokens: z21.number(),\n input_tokens_details: z21.object({ cached_tokens: z21.number().nullish() }).nullish(),\n output_tokens: z21.number(),\n output_tokens_details: z21.object({ reasoning_tokens: z21.number().nullish() }).nullish()\n }).optional()\n })\n )\n);\n\n// src/responses/openai-responses-options.ts\nimport { lazySchema as lazySchema20, zodSchema as zodSchema20 } from \"@ai-sdk/provider-utils\";\nimport { z as z22 } from \"zod/v4\";\nvar TOP_LOGPROBS_MAX = 20;\nvar openaiResponsesReasoningModelIds = [\n \"o1\",\n \"o1-2024-12-17\",\n \"o3\",\n \"o3-2025-04-16\",\n \"o3-mini\",\n \"o3-mini-2025-01-31\",\n \"o4-mini\",\n \"o4-mini-2025-04-16\",\n \"gpt-5\",\n \"gpt-5-2025-08-07\",\n \"gpt-5-codex\",\n \"gpt-5-mini\",\n \"gpt-5-mini-2025-08-07\",\n \"gpt-5-nano\",\n \"gpt-5-nano-2025-08-07\",\n \"gpt-5-pro\",\n \"gpt-5-pro-2025-10-06\",\n \"gpt-5.1\",\n \"gpt-5.1-chat-latest\",\n \"gpt-5.1-codex-mini\",\n \"gpt-5.1-codex\",\n \"gpt-5.1-codex-max\",\n \"gpt-5.2\",\n \"gpt-5.2-chat-latest\",\n \"gpt-5.2-pro\",\n \"gpt-5.2-codex\",\n \"gpt-5.3-chat-latest\",\n \"gpt-5.3-codex\",\n \"gpt-5.4\",\n \"gpt-5.4-2026-03-05\",\n \"gpt-5.4-mini\",\n \"gpt-5.4-mini-2026-03-17\",\n \"gpt-5.4-nano\",\n \"gpt-5.4-nano-2026-03-17\",\n \"gpt-5.4-pro\",\n \"gpt-5.4-pro-2026-03-05\"\n];\nvar openaiResponsesModelIds = [\n \"gpt-4.1\",\n \"gpt-4.1-2025-04-14\",\n \"gpt-4.1-mini\",\n \"gpt-4.1-mini-2025-04-14\",\n \"gpt-4.1-nano\",\n \"gpt-4.1-nano-2025-04-14\",\n \"gpt-4o\",\n \"gpt-4o-2024-05-13\",\n \"gpt-4o-2024-08-06\",\n \"gpt-4o-2024-11-20\",\n \"gpt-4o-audio-preview\",\n \"gpt-4o-audio-preview-2024-12-17\",\n \"gpt-4o-search-preview\",\n \"gpt-4o-search-preview-2025-03-11\",\n \"gpt-4o-mini-search-preview\",\n \"gpt-4o-mini-search-preview-2025-03-11\",\n \"gpt-4o-mini\",\n \"gpt-4o-mini-2024-07-18\",\n \"gpt-3.5-turbo-0125\",\n \"gpt-3.5-turbo\",\n \"gpt-3.5-turbo-1106\",\n \"gpt-5-chat-latest\",\n ...openaiResponsesReasoningModelIds\n];\nvar openaiLanguageModelResponsesOptionsSchema = lazySchema20(\n () => zodSchema20(\n z22.object({\n /**\n * The ID of the OpenAI Conversation to continue.\n * You must create a conversation first via the OpenAI API.\n * Cannot be used in conjunction with `previousResponseId`.\n * Defaults to `undefined`.\n * @see https://platform.openai.com/docs/api-reference/conversations/create\n */\n conversation: z22.string().nullish(),\n /**\n * The set of extra fields to include in the response (advanced, usually not needed).\n * Example values: 'reasoning.encrypted_content', 'file_search_call.results', 'message.output_text.logprobs'.\n */\n include: z22.array(\n z22.enum([\n \"reasoning.encrypted_content\",\n // handled internally by default, only needed for unknown reasoning models\n \"file_search_call.results\",\n \"message.output_text.logprobs\"\n ])\n ).nullish(),\n /**\n * Instructions for the model.\n * They can be used to change the system or developer message when continuing a conversation using the `previousResponseId` option.\n * Defaults to `undefined`.\n */\n instructions: z22.string().nullish(),\n /**\n * Return the log probabilities of the tokens. Including logprobs will increase\n * the response size and can slow down response times. However, it can\n * be useful to better understand how the model is behaving.\n *\n * Setting to true will return the log probabilities of the tokens that\n * were generated.\n *\n * Setting to a number will return the log probabilities of the top n\n * tokens that were generated.\n *\n * @see https://platform.openai.com/docs/api-reference/responses/create\n * @see https://cookbook.openai.com/examples/using_logprobs\n */\n logprobs: z22.union([z22.boolean(), z22.number().min(1).max(TOP_LOGPROBS_MAX)]).optional(),\n /**\n * The maximum number of total calls to built-in tools that can be processed in a response.\n * This maximum number applies across all built-in tool calls, not per individual tool.\n * Any further attempts to call a tool by the model will be ignored.\n */\n maxToolCalls: z22.number().nullish(),\n /**\n * Additional metadata to store with the generation.\n */\n metadata: z22.any().nullish(),\n /**\n * Whether to use parallel tool calls. Defaults to `true`.\n */\n parallelToolCalls: z22.boolean().nullish(),\n /**\n * The ID of the previous response. You can use it to continue a conversation.\n * Defaults to `undefined`.\n */\n previousResponseId: z22.string().nullish(),\n /**\n * Sets a cache key to tie this prompt to cached prefixes for better caching performance.\n */\n promptCacheKey: z22.string().nullish(),\n /**\n * The retention policy for the prompt cache.\n * - 'in_memory': Default. Standard prompt caching behavior.\n * - '24h': Extended prompt caching that keeps cached prefixes active for up to 24 hours.\n * Currently only available for 5.1 series models.\n *\n * @default 'in_memory'\n */\n promptCacheRetention: z22.enum([\"in_memory\", \"24h\"]).nullish(),\n /**\n * Reasoning effort for reasoning models. Defaults to `medium`. If you use\n * `providerOptions` to set the `reasoningEffort` option, this model setting will be ignored.\n * Valid values: 'none' | 'minimal' | 'low' | 'medium' | 'high' | 'xhigh'\n *\n * The 'none' type for `reasoningEffort` is only available for OpenAI's GPT-5.1\n * models. Also, the 'xhigh' type for `reasoningEffort` is only available for\n * OpenAI's GPT-5.1-Codex-Max model. Setting `reasoningEffort` to 'none' or 'xhigh' with unsupported models will result in\n * an error.\n */\n reasoningEffort: z22.string().nullish(),\n /**\n * Controls reasoning summary output from the model.\n * Set to \"auto\" to automatically receive the richest level available,\n * or \"detailed\" for comprehensive summaries.\n */\n reasoningSummary: z22.string().nullish(),\n /**\n * The identifier for safety monitoring and tracking.\n */\n safetyIdentifier: z22.string().nullish(),\n /**\n * Service tier for the request.\n * Set to 'flex' for 50% cheaper processing at the cost of increased latency (available for o3, o4-mini, and gpt-5 models).\n * Set to 'priority' for faster processing with Enterprise access (available for gpt-4, gpt-5, gpt-5-mini, o3, o4-mini; gpt-5-nano is not supported).\n *\n * Defaults to 'auto'.\n */\n serviceTier: z22.enum([\"auto\", \"flex\", \"priority\", \"default\"]).nullish(),\n /**\n * Whether to store the generation. Defaults to `true`.\n */\n store: z22.boolean().nullish(),\n /**\n * Whether to use strict JSON schema validation.\n * Defaults to `true`.\n */\n strictJsonSchema: z22.boolean().nullish(),\n /**\n * Controls the verbosity of the model's responses. Lower values ('low') will result\n * in more concise responses, while higher values ('high') will result in more verbose responses.\n * Valid values: 'low', 'medium', 'high'.\n */\n textVerbosity: z22.enum([\"low\", \"medium\", \"high\"]).nullish(),\n /**\n * Controls output truncation. 'auto' (default) performs truncation automatically;\n * 'disabled' turns truncation off.\n */\n truncation: z22.enum([\"auto\", \"disabled\"]).nullish(),\n /**\n * A unique identifier representing your end-user, which can help OpenAI to\n * monitor and detect abuse.\n * Defaults to `undefined`.\n * @see https://platform.openai.com/docs/guides/safety-best-practices/end-user-ids\n */\n user: z22.string().nullish(),\n /**\n * Override the system message mode for this model.\n * - 'system': Use the 'system' role for system messages (default for most models)\n * - 'developer': Use the 'developer' role for system messages (used by reasoning models)\n * - 'remove': Remove system messages entirely\n *\n * If not specified, the mode is automatically determined based on the model.\n */\n systemMessageMode: z22.enum([\"system\", \"developer\", \"remove\"]).optional(),\n /**\n * Force treating this model as a reasoning model.\n *\n * This is useful for \"stealth\" reasoning models (e.g. via a custom baseURL)\n * where the model ID is not recognized by the SDK's allowlist.\n *\n * When enabled, the SDK applies reasoning-model parameter compatibility rules\n * and defaults `systemMessageMode` to `developer` unless overridden.\n */\n forceReasoning: z22.boolean().optional()\n })\n )\n);\n\n// src/responses/openai-responses-prepare-tools.ts\nimport {\n UnsupportedFunctionalityError as UnsupportedFunctionalityError5\n} from \"@ai-sdk/provider\";\nimport { validateTypes as validateTypes2 } from \"@ai-sdk/provider-utils\";\nasync function prepareResponsesTools({\n tools,\n toolChoice,\n toolNameMapping,\n customProviderToolNames\n}) {\n var _a, _b;\n tools = (tools == null ? void 0 : tools.length) ? tools : void 0;\n const toolWarnings = [];\n if (tools == null) {\n return { tools: void 0, toolChoice: void 0, toolWarnings };\n }\n const openaiTools2 = [];\n const resolvedCustomProviderToolNames = customProviderToolNames != null ? customProviderToolNames : /* @__PURE__ */ new Set();\n for (const tool of tools) {\n switch (tool.type) {\n case \"function\": {\n const openaiOptions = (_a = tool.providerOptions) == null ? void 0 : _a.openai;\n const deferLoading = openaiOptions == null ? void 0 : openaiOptions.deferLoading;\n openaiTools2.push({\n type: \"function\",\n name: tool.name,\n description: tool.description,\n parameters: tool.inputSchema,\n ...tool.strict != null ? { strict: tool.strict } : {},\n ...deferLoading != null ? { defer_loading: deferLoading } : {}\n });\n break;\n }\n case \"provider\": {\n switch (tool.id) {\n case \"openai.file_search\": {\n const args = await validateTypes2({\n value: tool.args,\n schema: fileSearchArgsSchema\n });\n openaiTools2.push({\n type: \"file_search\",\n vector_store_ids: args.vectorStoreIds,\n max_num_results: args.maxNumResults,\n ranking_options: args.ranking ? {\n ranker: args.ranking.ranker,\n score_threshold: args.ranking.scoreThreshold\n } : void 0,\n filters: args.filters\n });\n break;\n }\n case \"openai.local_shell\": {\n openaiTools2.push({\n type: \"local_shell\"\n });\n break;\n }\n case \"openai.shell\": {\n const args = await validateTypes2({\n value: tool.args,\n schema: shellArgsSchema\n });\n openaiTools2.push({\n type: \"shell\",\n ...args.environment && {\n environment: mapShellEnvironment(args.environment)\n }\n });\n break;\n }\n case \"openai.apply_patch\": {\n openaiTools2.push({\n type: \"apply_patch\"\n });\n break;\n }\n case \"openai.web_search_preview\": {\n const args = await validateTypes2({\n value: tool.args,\n schema: webSearchPreviewArgsSchema\n });\n openaiTools2.push({\n type: \"web_search_preview\",\n search_context_size: args.searchContextSize,\n user_location: args.userLocation\n });\n break;\n }\n case \"openai.web_search\": {\n const args = await validateTypes2({\n value: tool.args,\n schema: webSearchArgsSchema\n });\n openaiTools2.push({\n type: \"web_search\",\n filters: args.filters != null ? { allowed_domains: args.filters.allowedDomains } : void 0,\n external_web_access: args.externalWebAccess,\n search_context_size: args.searchContextSize,\n user_location: args.userLocation\n });\n break;\n }\n case \"openai.code_interpreter\": {\n const args = await validateTypes2({\n value: tool.args,\n schema: codeInterpreterArgsSchema\n });\n openaiTools2.push({\n type: \"code_interpreter\",\n container: args.container == null ? { type: \"auto\", file_ids: void 0 } : typeof args.container === \"string\" ? args.container : { type: \"auto\", file_ids: args.container.fileIds }\n });\n break;\n }\n case \"openai.image_generation\": {\n const args = await validateTypes2({\n value: tool.args,\n schema: imageGenerationArgsSchema\n });\n openaiTools2.push({\n type: \"image_generation\",\n background: args.background,\n input_fidelity: args.inputFidelity,\n input_image_mask: args.inputImageMask ? {\n file_id: args.inputImageMask.fileId,\n image_url: args.inputImageMask.imageUrl\n } : void 0,\n model: args.model,\n moderation: args.moderation,\n partial_images: args.partialImages,\n quality: args.quality,\n output_compression: args.outputCompression,\n output_format: args.outputFormat,\n size: args.size\n });\n break;\n }\n case \"openai.mcp\": {\n const args = await validateTypes2({\n value: tool.args,\n schema: mcpArgsSchema\n });\n const mapApprovalFilter = (filter) => ({\n tool_names: filter.toolNames\n });\n const requireApproval = args.requireApproval;\n const requireApprovalParam = requireApproval == null ? void 0 : typeof requireApproval === \"string\" ? requireApproval : requireApproval.never != null ? { never: mapApprovalFilter(requireApproval.never) } : void 0;\n openaiTools2.push({\n type: \"mcp\",\n server_label: args.serverLabel,\n allowed_tools: Array.isArray(args.allowedTools) ? args.allowedTools : args.allowedTools ? {\n read_only: args.allowedTools.readOnly,\n tool_names: args.allowedTools.toolNames\n } : void 0,\n authorization: args.authorization,\n connector_id: args.connectorId,\n headers: args.headers,\n require_approval: requireApprovalParam != null ? requireApprovalParam : \"never\",\n server_description: args.serverDescription,\n server_url: args.serverUrl\n });\n break;\n }\n case \"openai.custom\": {\n const args = await validateTypes2({\n value: tool.args,\n schema: customArgsSchema\n });\n openaiTools2.push({\n type: \"custom\",\n name: args.name,\n description: args.description,\n format: args.format\n });\n resolvedCustomProviderToolNames.add(args.name);\n break;\n }\n case \"openai.tool_search\": {\n const args = await validateTypes2({\n value: tool.args,\n schema: toolSearchArgsSchema\n });\n openaiTools2.push({\n type: \"tool_search\",\n ...args.execution != null ? { execution: args.execution } : {},\n ...args.description != null ? { description: args.description } : {},\n ...args.parameters != null ? { parameters: args.parameters } : {}\n });\n break;\n }\n }\n break;\n }\n default:\n toolWarnings.push({\n type: \"unsupported\",\n feature: `function tool ${tool}`\n });\n break;\n }\n }\n if (toolChoice == null) {\n return { tools: openaiTools2, toolChoice: void 0, toolWarnings };\n }\n const type = toolChoice.type;\n switch (type) {\n case \"auto\":\n case \"none\":\n case \"required\":\n return { tools: openaiTools2, toolChoice: type, toolWarnings };\n case \"tool\": {\n const resolvedToolName = (_b = toolNameMapping == null ? void 0 : toolNameMapping.toProviderToolName(toolChoice.toolName)) != null ? _b : toolChoice.toolName;\n return {\n tools: openaiTools2,\n toolChoice: resolvedToolName === \"code_interpreter\" || resolvedToolName === \"file_search\" || resolvedToolName === \"image_generation\" || resolvedToolName === \"web_search_preview\" || resolvedToolName === \"web_search\" || resolvedToolName === \"mcp\" || resolvedToolName === \"apply_patch\" ? { type: resolvedToolName } : resolvedCustomProviderToolNames.has(resolvedToolName) ? { type: \"custom\", name: resolvedToolName } : { type: \"function\", name: resolvedToolName },\n toolWarnings\n };\n }\n default: {\n const _exhaustiveCheck = type;\n throw new UnsupportedFunctionalityError5({\n functionality: `tool choice type: ${_exhaustiveCheck}`\n });\n }\n }\n}\nfunction mapShellEnvironment(environment) {\n if (environment.type === \"containerReference\") {\n const env2 = environment;\n return {\n type: \"container_reference\",\n container_id: env2.containerId\n };\n }\n if (environment.type === \"containerAuto\") {\n const env2 = environment;\n return {\n type: \"container_auto\",\n file_ids: env2.fileIds,\n memory_limit: env2.memoryLimit,\n network_policy: env2.networkPolicy == null ? void 0 : env2.networkPolicy.type === \"disabled\" ? { type: \"disabled\" } : {\n type: \"allowlist\",\n allowed_domains: env2.networkPolicy.allowedDomains,\n domain_secrets: env2.networkPolicy.domainSecrets\n },\n skills: mapShellSkills(env2.skills)\n };\n }\n const env = environment;\n return {\n type: \"local\",\n skills: env.skills\n };\n}\nfunction mapShellSkills(skills) {\n return skills == null ? void 0 : skills.map(\n (skill) => skill.type === \"skillReference\" ? {\n type: \"skill_reference\",\n skill_id: skill.skillId,\n version: skill.version\n } : {\n type: \"inline\",\n name: skill.name,\n description: skill.description,\n source: {\n type: \"base64\",\n media_type: skill.source.mediaType,\n data: skill.source.data\n }\n }\n );\n}\n\n// src/responses/openai-responses-language-model.ts\nfunction extractApprovalRequestIdToToolCallIdMapping(prompt) {\n var _a, _b;\n const mapping = {};\n for (const message of prompt) {\n if (message.role !== \"assistant\") continue;\n for (const part of message.content) {\n if (part.type !== \"tool-call\") continue;\n const approvalRequestId = (_b = (_a = part.providerOptions) == null ? void 0 : _a.openai) == null ? void 0 : _b.approvalRequestId;\n if (approvalRequestId != null) {\n mapping[approvalRequestId] = part.toolCallId;\n }\n }\n }\n return mapping;\n}\nvar OpenAIResponsesLanguageModel = class {\n constructor(modelId, config) {\n this.specificationVersion = \"v3\";\n this.supportedUrls = {\n \"image/*\": [/^https?:\\/\\/.*$/],\n \"application/pdf\": [/^https?:\\/\\/.*$/]\n };\n this.modelId = modelId;\n this.config = config;\n }\n get provider() {\n return this.config.provider;\n }\n async getArgs({\n maxOutputTokens,\n temperature,\n stopSequences,\n topP,\n topK,\n presencePenalty,\n frequencyPenalty,\n seed,\n prompt,\n providerOptions,\n tools,\n toolChoice,\n responseFormat\n }) {\n var _a, _b, _c, _d, _e, _f, _g, _h, _i;\n const warnings = [];\n const modelCapabilities = getOpenAILanguageModelCapabilities(this.modelId);\n if (topK != null) {\n warnings.push({ type: \"unsupported\", feature: \"topK\" });\n }\n if (seed != null) {\n warnings.push({ type: \"unsupported\", feature: \"seed\" });\n }\n if (presencePenalty != null) {\n warnings.push({ type: \"unsupported\", feature: \"presencePenalty\" });\n }\n if (frequencyPenalty != null) {\n warnings.push({ type: \"unsupported\", feature: \"frequencyPenalty\" });\n }\n if (stopSequences != null) {\n warnings.push({ type: \"unsupported\", feature: \"stopSequences\" });\n }\n const providerOptionsName = this.config.provider.includes(\"azure\") ? \"azure\" : \"openai\";\n let openaiOptions = await parseProviderOptions5({\n provider: providerOptionsName,\n providerOptions,\n schema: openaiLanguageModelResponsesOptionsSchema\n });\n if (openaiOptions == null && providerOptionsName !== \"openai\") {\n openaiOptions = await parseProviderOptions5({\n provider: \"openai\",\n providerOptions,\n schema: openaiLanguageModelResponsesOptionsSchema\n });\n }\n const isReasoningModel = (_a = openaiOptions == null ? void 0 : openaiOptions.forceReasoning) != null ? _a : modelCapabilities.isReasoningModel;\n if ((openaiOptions == null ? void 0 : openaiOptions.conversation) && (openaiOptions == null ? void 0 : openaiOptions.previousResponseId)) {\n warnings.push({\n type: \"unsupported\",\n feature: \"conversation\",\n details: \"conversation and previousResponseId cannot be used together\"\n });\n }\n const toolNameMapping = createToolNameMapping({\n tools,\n providerToolNames: {\n \"openai.code_interpreter\": \"code_interpreter\",\n \"openai.file_search\": \"file_search\",\n \"openai.image_generation\": \"image_generation\",\n \"openai.local_shell\": \"local_shell\",\n \"openai.shell\": \"shell\",\n \"openai.web_search\": \"web_search\",\n \"openai.web_search_preview\": \"web_search_preview\",\n \"openai.mcp\": \"mcp\",\n \"openai.apply_patch\": \"apply_patch\",\n \"openai.tool_search\": \"tool_search\"\n },\n resolveProviderToolName: (tool) => tool.id === \"openai.custom\" ? tool.args.name : void 0\n });\n const customProviderToolNames = /* @__PURE__ */ new Set();\n const {\n tools: openaiTools2,\n toolChoice: openaiToolChoice,\n toolWarnings\n } = await prepareResponsesTools({\n tools,\n toolChoice,\n toolNameMapping,\n customProviderToolNames\n });\n const { input, warnings: inputWarnings } = await convertToOpenAIResponsesInput({\n prompt,\n toolNameMapping,\n systemMessageMode: (_b = openaiOptions == null ? void 0 : openaiOptions.systemMessageMode) != null ? _b : isReasoningModel ? \"developer\" : modelCapabilities.systemMessageMode,\n providerOptionsName,\n fileIdPrefixes: this.config.fileIdPrefixes,\n store: (_c = openaiOptions == null ? void 0 : openaiOptions.store) != null ? _c : true,\n hasConversation: (openaiOptions == null ? void 0 : openaiOptions.conversation) != null,\n hasLocalShellTool: hasOpenAITool(\"openai.local_shell\"),\n hasShellTool: hasOpenAITool(\"openai.shell\"),\n hasApplyPatchTool: hasOpenAITool(\"openai.apply_patch\"),\n customProviderToolNames: customProviderToolNames.size > 0 ? customProviderToolNames : void 0\n });\n warnings.push(...inputWarnings);\n const strictJsonSchema = (_d = openaiOptions == null ? void 0 : openaiOptions.strictJsonSchema) != null ? _d : true;\n let include = openaiOptions == null ? void 0 : openaiOptions.include;\n function addInclude(key) {\n if (include == null) {\n include = [key];\n } else if (!include.includes(key)) {\n include = [...include, key];\n }\n }\n function hasOpenAITool(id) {\n return (tools == null ? void 0 : tools.find((tool) => tool.type === \"provider\" && tool.id === id)) != null;\n }\n const topLogprobs = typeof (openaiOptions == null ? void 0 : openaiOptions.logprobs) === \"number\" ? openaiOptions == null ? void 0 : openaiOptions.logprobs : (openaiOptions == null ? void 0 : openaiOptions.logprobs) === true ? TOP_LOGPROBS_MAX : void 0;\n if (topLogprobs) {\n addInclude(\"message.output_text.logprobs\");\n }\n const webSearchToolName = (_e = tools == null ? void 0 : tools.find(\n (tool) => tool.type === \"provider\" && (tool.id === \"openai.web_search\" || tool.id === \"openai.web_search_preview\")\n )) == null ? void 0 : _e.name;\n if (webSearchToolName) {\n addInclude(\"web_search_call.action.sources\");\n }\n if (hasOpenAITool(\"openai.code_interpreter\")) {\n addInclude(\"code_interpreter_call.outputs\");\n }\n const store = openaiOptions == null ? void 0 : openaiOptions.store;\n if (store === false && isReasoningModel) {\n addInclude(\"reasoning.encrypted_content\");\n }\n const baseArgs = {\n model: this.modelId,\n input,\n temperature,\n top_p: topP,\n max_output_tokens: maxOutputTokens,\n ...((responseFormat == null ? void 0 : responseFormat.type) === \"json\" || (openaiOptions == null ? void 0 : openaiOptions.textVerbosity)) && {\n text: {\n ...(responseFormat == null ? void 0 : responseFormat.type) === \"json\" && {\n format: responseFormat.schema != null ? {\n type: \"json_schema\",\n strict: strictJsonSchema,\n name: (_f = responseFormat.name) != null ? _f : \"response\",\n description: responseFormat.description,\n schema: responseFormat.schema\n } : { type: \"json_object\" }\n },\n ...(openaiOptions == null ? void 0 : openaiOptions.textVerbosity) && {\n verbosity: openaiOptions.textVerbosity\n }\n }\n },\n // provider options:\n conversation: openaiOptions == null ? void 0 : openaiOptions.conversation,\n max_tool_calls: openaiOptions == null ? void 0 : openaiOptions.maxToolCalls,\n metadata: openaiOptions == null ? void 0 : openaiOptions.metadata,\n parallel_tool_calls: openaiOptions == null ? void 0 : openaiOptions.parallelToolCalls,\n previous_response_id: openaiOptions == null ? void 0 : openaiOptions.previousResponseId,\n store,\n user: openaiOptions == null ? void 0 : openaiOptions.user,\n instructions: openaiOptions == null ? void 0 : openaiOptions.instructions,\n service_tier: openaiOptions == null ? void 0 : openaiOptions.serviceTier,\n include,\n prompt_cache_key: openaiOptions == null ? void 0 : openaiOptions.promptCacheKey,\n prompt_cache_retention: openaiOptions == null ? void 0 : openaiOptions.promptCacheRetention,\n safety_identifier: openaiOptions == null ? void 0 : openaiOptions.safetyIdentifier,\n top_logprobs: topLogprobs,\n truncation: openaiOptions == null ? void 0 : openaiOptions.truncation,\n // model-specific settings:\n ...isReasoningModel && ((openaiOptions == null ? void 0 : openaiOptions.reasoningEffort) != null || (openaiOptions == null ? void 0 : openaiOptions.reasoningSummary) != null) && {\n reasoning: {\n ...(openaiOptions == null ? void 0 : openaiOptions.reasoningEffort) != null && {\n effort: openaiOptions.reasoningEffort\n },\n ...(openaiOptions == null ? void 0 : openaiOptions.reasoningSummary) != null && {\n summary: openaiOptions.reasoningSummary\n }\n }\n }\n };\n if (isReasoningModel) {\n if (!((openaiOptions == null ? void 0 : openaiOptions.reasoningEffort) === \"none\" && modelCapabilities.supportsNonReasoningParameters)) {\n if (baseArgs.temperature != null) {\n baseArgs.temperature = void 0;\n warnings.push({\n type: \"unsupported\",\n feature: \"temperature\",\n details: \"temperature is not supported for reasoning models\"\n });\n }\n if (baseArgs.top_p != null) {\n baseArgs.top_p = void 0;\n warnings.push({\n type: \"unsupported\",\n feature: \"topP\",\n details: \"topP is not supported for reasoning models\"\n });\n }\n }\n } else {\n if ((openaiOptions == null ? void 0 : openaiOptions.reasoningEffort) != null) {\n warnings.push({\n type: \"unsupported\",\n feature: \"reasoningEffort\",\n details: \"reasoningEffort is not supported for non-reasoning models\"\n });\n }\n if ((openaiOptions == null ? void 0 : openaiOptions.reasoningSummary) != null) {\n warnings.push({\n type: \"unsupported\",\n feature: \"reasoningSummary\",\n details: \"reasoningSummary is not supported for non-reasoning models\"\n });\n }\n }\n if ((openaiOptions == null ? void 0 : openaiOptions.serviceTier) === \"flex\" && !modelCapabilities.supportsFlexProcessing) {\n warnings.push({\n type: \"unsupported\",\n feature: \"serviceTier\",\n details: \"flex processing is only available for o3, o4-mini, and gpt-5 models\"\n });\n delete baseArgs.service_tier;\n }\n if ((openaiOptions == null ? void 0 : openaiOptions.serviceTier) === \"priority\" && !modelCapabilities.supportsPriorityProcessing) {\n warnings.push({\n type: \"unsupported\",\n feature: \"serviceTier\",\n 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\"\n });\n delete baseArgs.service_tier;\n }\n const shellToolEnvType = (_i = (_h = (_g = tools == null ? void 0 : tools.find(\n (tool) => tool.type === \"provider\" && tool.id === \"openai.shell\"\n )) == null ? void 0 : _g.args) == null ? void 0 : _h.environment) == null ? void 0 : _i.type;\n const isShellProviderExecuted = shellToolEnvType === \"containerAuto\" || shellToolEnvType === \"containerReference\";\n return {\n webSearchToolName,\n args: {\n ...baseArgs,\n tools: openaiTools2,\n tool_choice: openaiToolChoice\n },\n warnings: [...warnings, ...toolWarnings],\n store,\n toolNameMapping,\n providerOptionsName,\n isShellProviderExecuted\n };\n }\n async doGenerate(options) {\n var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k, _l, _m, _n, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z, _A, _B;\n const {\n args: body,\n warnings,\n webSearchToolName,\n toolNameMapping,\n providerOptionsName,\n isShellProviderExecuted\n } = await this.getArgs(options);\n const url = this.config.url({\n path: \"/responses\",\n modelId: this.modelId\n });\n const approvalRequestIdToDummyToolCallIdFromPrompt = extractApprovalRequestIdToToolCallIdMapping(options.prompt);\n const {\n responseHeaders,\n value: response,\n rawValue: rawResponse\n } = await postJsonToApi5({\n url,\n headers: combineHeaders5(this.config.headers(), options.headers),\n body,\n failedResponseHandler: openaiFailedResponseHandler,\n successfulResponseHandler: createJsonResponseHandler5(\n openaiResponsesResponseSchema\n ),\n abortSignal: options.abortSignal,\n fetch: this.config.fetch\n });\n if (response.error) {\n throw new APICallError({\n message: response.error.message,\n url,\n requestBodyValues: body,\n statusCode: 400,\n responseHeaders,\n responseBody: rawResponse,\n isRetryable: false\n });\n }\n const content = [];\n const logprobs = [];\n let hasFunctionCall = false;\n const hostedToolSearchCallIds = [];\n for (const part of response.output) {\n switch (part.type) {\n case \"reasoning\": {\n if (part.summary.length === 0) {\n part.summary.push({ type: \"summary_text\", text: \"\" });\n }\n for (const summary of part.summary) {\n content.push({\n type: \"reasoning\",\n text: summary.text,\n providerMetadata: {\n [providerOptionsName]: {\n itemId: part.id,\n reasoningEncryptedContent: (_a = part.encrypted_content) != null ? _a : null\n }\n }\n });\n }\n break;\n }\n case \"image_generation_call\": {\n content.push({\n type: \"tool-call\",\n toolCallId: part.id,\n toolName: toolNameMapping.toCustomToolName(\"image_generation\"),\n input: \"{}\",\n providerExecuted: true\n });\n content.push({\n type: \"tool-result\",\n toolCallId: part.id,\n toolName: toolNameMapping.toCustomToolName(\"image_generation\"),\n result: {\n result: part.result\n }\n });\n break;\n }\n case \"tool_search_call\": {\n const toolCallId = (_b = part.call_id) != null ? _b : part.id;\n const isHosted = part.execution === \"server\";\n if (isHosted) {\n hostedToolSearchCallIds.push(toolCallId);\n }\n content.push({\n type: \"tool-call\",\n toolCallId,\n toolName: toolNameMapping.toCustomToolName(\"tool_search\"),\n input: JSON.stringify({\n arguments: part.arguments,\n call_id: part.call_id\n }),\n ...isHosted ? { providerExecuted: true } : {},\n providerMetadata: {\n [providerOptionsName]: {\n itemId: part.id\n }\n }\n });\n break;\n }\n case \"tool_search_output\": {\n const toolCallId = (_d = (_c = part.call_id) != null ? _c : hostedToolSearchCallIds.shift()) != null ? _d : part.id;\n content.push({\n type: \"tool-result\",\n toolCallId,\n toolName: toolNameMapping.toCustomToolName(\"tool_search\"),\n result: {\n tools: part.tools\n },\n providerMetadata: {\n [providerOptionsName]: {\n itemId: part.id\n }\n }\n });\n break;\n }\n case \"local_shell_call\": {\n content.push({\n type: \"tool-call\",\n toolCallId: part.call_id,\n toolName: toolNameMapping.toCustomToolName(\"local_shell\"),\n input: JSON.stringify({\n action: part.action\n }),\n providerMetadata: {\n [providerOptionsName]: {\n itemId: part.id\n }\n }\n });\n break;\n }\n case \"shell_call\": {\n content.push({\n type: \"tool-call\",\n toolCallId: part.call_id,\n toolName: toolNameMapping.toCustomToolName(\"shell\"),\n input: JSON.stringify({\n action: {\n commands: part.action.commands\n }\n }),\n ...isShellProviderExecuted && { providerExecuted: true },\n providerMetadata: {\n [providerOptionsName]: {\n itemId: part.id\n }\n }\n });\n break;\n }\n case \"shell_call_output\": {\n content.push({\n type: \"tool-result\",\n toolCallId: part.call_id,\n toolName: toolNameMapping.toCustomToolName(\"shell\"),\n result: {\n output: part.output.map((item) => ({\n stdout: item.stdout,\n stderr: item.stderr,\n outcome: item.outcome.type === \"exit\" ? {\n type: \"exit\",\n exitCode: item.outcome.exit_code\n } : { type: \"timeout\" }\n }))\n }\n });\n break;\n }\n case \"message\": {\n for (const contentPart of part.content) {\n if (((_f = (_e = options.providerOptions) == null ? void 0 : _e[providerOptionsName]) == null ? void 0 : _f.logprobs) && contentPart.logprobs) {\n logprobs.push(contentPart.logprobs);\n }\n const providerMetadata2 = {\n itemId: part.id,\n ...part.phase != null && { phase: part.phase },\n ...contentPart.annotations.length > 0 && {\n annotations: contentPart.annotations\n }\n };\n content.push({\n type: \"text\",\n text: contentPart.text,\n providerMetadata: {\n [providerOptionsName]: providerMetadata2\n }\n });\n for (const annotation of contentPart.annotations) {\n if (annotation.type === \"url_citation\") {\n content.push({\n type: \"source\",\n sourceType: \"url\",\n id: (_i = (_h = (_g = this.config).generateId) == null ? void 0 : _h.call(_g)) != null ? _i : generateId2(),\n url: annotation.url,\n title: annotation.title\n });\n } else if (annotation.type === \"file_citation\") {\n content.push({\n type: \"source\",\n sourceType: \"document\",\n id: (_l = (_k = (_j = this.config).generateId) == null ? void 0 : _k.call(_j)) != null ? _l : generateId2(),\n mediaType: \"text/plain\",\n title: annotation.filename,\n filename: annotation.filename,\n providerMetadata: {\n [providerOptionsName]: {\n type: annotation.type,\n fileId: annotation.file_id,\n index: annotation.index\n }\n }\n });\n } else if (annotation.type === \"container_file_citation\") {\n content.push({\n type: \"source\",\n sourceType: \"document\",\n id: (_o = (_n = (_m = this.config).generateId) == null ? void 0 : _n.call(_m)) != null ? _o : generateId2(),\n mediaType: \"text/plain\",\n title: annotation.filename,\n filename: annotation.filename,\n providerMetadata: {\n [providerOptionsName]: {\n type: annotation.type,\n fileId: annotation.file_id,\n containerId: annotation.container_id\n }\n }\n });\n } else if (annotation.type === \"file_path\") {\n content.push({\n type: \"source\",\n sourceType: \"document\",\n id: (_r = (_q = (_p = this.config).generateId) == null ? void 0 : _q.call(_p)) != null ? _r : generateId2(),\n mediaType: \"application/octet-stream\",\n title: annotation.file_id,\n filename: annotation.file_id,\n providerMetadata: {\n [providerOptionsName]: {\n type: annotation.type,\n fileId: annotation.file_id,\n index: annotation.index\n }\n }\n });\n }\n }\n }\n break;\n }\n case \"function_call\": {\n hasFunctionCall = true;\n content.push({\n type: \"tool-call\",\n toolCallId: part.call_id,\n toolName: part.name,\n input: part.arguments,\n providerMetadata: {\n [providerOptionsName]: {\n itemId: part.id\n }\n }\n });\n break;\n }\n case \"custom_tool_call\": {\n hasFunctionCall = true;\n const toolName = toolNameMapping.toCustomToolName(part.name);\n content.push({\n type: \"tool-call\",\n toolCallId: part.call_id,\n toolName,\n input: JSON.stringify(part.input),\n providerMetadata: {\n [providerOptionsName]: {\n itemId: part.id\n }\n }\n });\n break;\n }\n case \"web_search_call\": {\n content.push({\n type: \"tool-call\",\n toolCallId: part.id,\n toolName: toolNameMapping.toCustomToolName(\n webSearchToolName != null ? webSearchToolName : \"web_search\"\n ),\n input: JSON.stringify({}),\n providerExecuted: true\n });\n content.push({\n type: \"tool-result\",\n toolCallId: part.id,\n toolName: toolNameMapping.toCustomToolName(\n webSearchToolName != null ? webSearchToolName : \"web_search\"\n ),\n result: mapWebSearchOutput(part.action)\n });\n break;\n }\n case \"mcp_call\": {\n const toolCallId = part.approval_request_id != null ? (_s = approvalRequestIdToDummyToolCallIdFromPrompt[part.approval_request_id]) != null ? _s : part.id : part.id;\n const toolName = `mcp.${part.name}`;\n content.push({\n type: \"tool-call\",\n toolCallId,\n toolName,\n input: part.arguments,\n providerExecuted: true,\n dynamic: true\n });\n content.push({\n type: \"tool-result\",\n toolCallId,\n toolName,\n result: {\n type: \"call\",\n serverLabel: part.server_label,\n name: part.name,\n arguments: part.arguments,\n ...part.output != null ? { output: part.output } : {},\n ...part.error != null ? { error: part.error } : {}\n },\n providerMetadata: {\n [providerOptionsName]: {\n itemId: part.id\n }\n }\n });\n break;\n }\n case \"mcp_list_tools\": {\n break;\n }\n case \"mcp_approval_request\": {\n const approvalRequestId = (_t = part.approval_request_id) != null ? _t : part.id;\n const dummyToolCallId = (_w = (_v = (_u = this.config).generateId) == null ? void 0 : _v.call(_u)) != null ? _w : generateId2();\n const toolName = `mcp.${part.name}`;\n content.push({\n type: \"tool-call\",\n toolCallId: dummyToolCallId,\n toolName,\n input: part.arguments,\n providerExecuted: true,\n dynamic: true\n });\n content.push({\n type: \"tool-approval-request\",\n approvalId: approvalRequestId,\n toolCallId: dummyToolCallId\n });\n break;\n }\n case \"computer_call\": {\n content.push({\n type: \"tool-call\",\n toolCallId: part.id,\n toolName: toolNameMapping.toCustomToolName(\"computer_use\"),\n input: \"\",\n providerExecuted: true\n });\n content.push({\n type: \"tool-result\",\n toolCallId: part.id,\n toolName: toolNameMapping.toCustomToolName(\"computer_use\"),\n result: {\n type: \"computer_use_tool_result\",\n status: part.status || \"completed\"\n }\n });\n break;\n }\n case \"file_search_call\": {\n content.push({\n type: \"tool-call\",\n toolCallId: part.id,\n toolName: toolNameMapping.toCustomToolName(\"file_search\"),\n input: \"{}\",\n providerExecuted: true\n });\n content.push({\n type: \"tool-result\",\n toolCallId: part.id,\n toolName: toolNameMapping.toCustomToolName(\"file_search\"),\n result: {\n queries: part.queries,\n results: (_y = (_x = part.results) == null ? void 0 : _x.map((result) => ({\n attributes: result.attributes,\n fileId: result.file_id,\n filename: result.filename,\n score: result.score,\n text: result.text\n }))) != null ? _y : null\n }\n });\n break;\n }\n case \"code_interpreter_call\": {\n content.push({\n type: \"tool-call\",\n toolCallId: part.id,\n toolName: toolNameMapping.toCustomToolName(\"code_interpreter\"),\n input: JSON.stringify({\n code: part.code,\n containerId: part.container_id\n }),\n providerExecuted: true\n });\n content.push({\n type: \"tool-result\",\n toolCallId: part.id,\n toolName: toolNameMapping.toCustomToolName(\"code_interpreter\"),\n result: {\n outputs: part.outputs\n }\n });\n break;\n }\n case \"apply_patch_call\": {\n content.push({\n type: \"tool-call\",\n toolCallId: part.call_id,\n toolName: toolNameMapping.toCustomToolName(\"apply_patch\"),\n input: JSON.stringify({\n callId: part.call_id,\n operation: part.operation\n }),\n providerMetadata: {\n [providerOptionsName]: {\n itemId: part.id\n }\n }\n });\n break;\n }\n }\n }\n const providerMetadata = {\n [providerOptionsName]: {\n responseId: response.id,\n ...logprobs.length > 0 ? { logprobs } : {},\n ...typeof response.service_tier === \"string\" ? { serviceTier: response.service_tier } : {}\n }\n };\n const usage = response.usage;\n return {\n content,\n finishReason: {\n unified: mapOpenAIResponseFinishReason({\n finishReason: (_z = response.incomplete_details) == null ? void 0 : _z.reason,\n hasFunctionCall\n }),\n raw: (_B = (_A = response.incomplete_details) == null ? void 0 : _A.reason) != null ? _B : void 0\n },\n usage: convertOpenAIResponsesUsage(usage),\n request: { body },\n response: {\n id: response.id,\n timestamp: new Date(response.created_at * 1e3),\n modelId: response.model,\n headers: responseHeaders,\n body: rawResponse\n },\n providerMetadata,\n warnings\n };\n }\n async doStream(options) {\n const {\n args: body,\n warnings,\n webSearchToolName,\n toolNameMapping,\n store,\n providerOptionsName,\n isShellProviderExecuted\n } = await this.getArgs(options);\n const { responseHeaders, value: response } = await postJsonToApi5({\n url: this.config.url({\n path: \"/responses\",\n modelId: this.modelId\n }),\n headers: combineHeaders5(this.config.headers(), options.headers),\n body: {\n ...body,\n stream: true\n },\n failedResponseHandler: openaiFailedResponseHandler,\n successfulResponseHandler: createEventSourceResponseHandler3(\n openaiResponsesChunkSchema\n ),\n abortSignal: options.abortSignal,\n fetch: this.config.fetch\n });\n const self = this;\n const approvalRequestIdToDummyToolCallIdFromPrompt = extractApprovalRequestIdToToolCallIdMapping(options.prompt);\n const approvalRequestIdToDummyToolCallIdFromStream = /* @__PURE__ */ new Map();\n let finishReason = {\n unified: \"other\",\n raw: void 0\n };\n let usage = void 0;\n const logprobs = [];\n let responseId = null;\n const ongoingToolCalls = {};\n const ongoingAnnotations = [];\n let activeMessagePhase;\n let hasFunctionCall = false;\n const activeReasoning = {};\n let serviceTier;\n const hostedToolSearchCallIds = [];\n return {\n stream: response.pipeThrough(\n new TransformStream({\n start(controller) {\n controller.enqueue({ type: \"stream-start\", warnings });\n },\n transform(chunk, controller) {\n var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k, _l, _m, _n, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z, _A, _B, _C, _D, _E, _F, _G, _H, _I, _J, _K, _L;\n if (options.includeRawChunks) {\n controller.enqueue({ type: \"raw\", rawValue: chunk.rawValue });\n }\n if (!chunk.success) {\n finishReason = { unified: \"error\", raw: void 0 };\n controller.enqueue({ type: \"error\", error: chunk.error });\n return;\n }\n const value = chunk.value;\n if (isResponseOutputItemAddedChunk(value)) {\n if (value.item.type === \"function_call\") {\n ongoingToolCalls[value.output_index] = {\n toolName: value.item.name,\n toolCallId: value.item.call_id\n };\n controller.enqueue({\n type: \"tool-input-start\",\n id: value.item.call_id,\n toolName: value.item.name\n });\n } else if (value.item.type === \"custom_tool_call\") {\n const toolName = toolNameMapping.toCustomToolName(\n value.item.name\n );\n ongoingToolCalls[value.output_index] = {\n toolName,\n toolCallId: value.item.call_id\n };\n controller.enqueue({\n type: \"tool-input-start\",\n id: value.item.call_id,\n toolName\n });\n } else if (value.item.type === \"web_search_call\") {\n ongoingToolCalls[value.output_index] = {\n toolName: toolNameMapping.toCustomToolName(\n webSearchToolName != null ? webSearchToolName : \"web_search\"\n ),\n toolCallId: value.item.id\n };\n controller.enqueue({\n type: \"tool-input-start\",\n id: value.item.id,\n toolName: toolNameMapping.toCustomToolName(\n webSearchToolName != null ? webSearchToolName : \"web_search\"\n ),\n providerExecuted: true\n });\n controller.enqueue({\n type: \"tool-input-end\",\n id: value.item.id\n });\n controller.enqueue({\n type: \"tool-call\",\n toolCallId: value.item.id,\n toolName: toolNameMapping.toCustomToolName(\n webSearchToolName != null ? webSearchToolName : \"web_search\"\n ),\n input: JSON.stringify({}),\n providerExecuted: true\n });\n } else if (value.item.type === \"computer_call\") {\n ongoingToolCalls[value.output_index] = {\n toolName: toolNameMapping.toCustomToolName(\"computer_use\"),\n toolCallId: value.item.id\n };\n controller.enqueue({\n type: \"tool-input-start\",\n id: value.item.id,\n toolName: toolNameMapping.toCustomToolName(\"computer_use\"),\n providerExecuted: true\n });\n } else if (value.item.type === \"code_interpreter_call\") {\n ongoingToolCalls[value.output_index] = {\n toolName: toolNameMapping.toCustomToolName(\"code_interpreter\"),\n toolCallId: value.item.id,\n codeInterpreter: {\n containerId: value.item.container_id\n }\n };\n controller.enqueue({\n type: \"tool-input-start\",\n id: value.item.id,\n toolName: toolNameMapping.toCustomToolName(\"code_interpreter\"),\n providerExecuted: true\n });\n controller.enqueue({\n type: \"tool-input-delta\",\n id: value.item.id,\n delta: `{\"containerId\":\"${value.item.container_id}\",\"code\":\"`\n });\n } else if (value.item.type === \"file_search_call\") {\n controller.enqueue({\n type: \"tool-call\",\n toolCallId: value.item.id,\n toolName: toolNameMapping.toCustomToolName(\"file_search\"),\n input: \"{}\",\n providerExecuted: true\n });\n } else if (value.item.type === \"image_generation_call\") {\n controller.enqueue({\n type: \"tool-call\",\n toolCallId: value.item.id,\n toolName: toolNameMapping.toCustomToolName(\"image_generation\"),\n input: \"{}\",\n providerExecuted: true\n });\n } else if (value.item.type === \"tool_search_call\") {\n const toolCallId = value.item.id;\n const toolName = toolNameMapping.toCustomToolName(\"tool_search\");\n const isHosted = value.item.execution === \"server\";\n ongoingToolCalls[value.output_index] = {\n toolName,\n toolCallId,\n toolSearchExecution: (_a = value.item.execution) != null ? _a : \"server\"\n };\n if (isHosted) {\n controller.enqueue({\n type: \"tool-input-start\",\n id: toolCallId,\n toolName,\n providerExecuted: true\n });\n }\n } else if (value.item.type === \"tool_search_output\") {\n } else if (value.item.type === \"mcp_call\" || value.item.type === \"mcp_list_tools\" || value.item.type === \"mcp_approval_request\") {\n } else if (value.item.type === \"apply_patch_call\") {\n const { call_id: callId, operation } = value.item;\n ongoingToolCalls[value.output_index] = {\n toolName: toolNameMapping.toCustomToolName(\"apply_patch\"),\n toolCallId: callId,\n applyPatch: {\n // delete_file doesn't have diff\n hasDiff: operation.type === \"delete_file\",\n endEmitted: operation.type === \"delete_file\"\n }\n };\n controller.enqueue({\n type: \"tool-input-start\",\n id: callId,\n toolName: toolNameMapping.toCustomToolName(\"apply_patch\")\n });\n if (operation.type === \"delete_file\") {\n const inputString = JSON.stringify({\n callId,\n operation\n });\n controller.enqueue({\n type: \"tool-input-delta\",\n id: callId,\n delta: inputString\n });\n controller.enqueue({\n type: \"tool-input-end\",\n id: callId\n });\n } else {\n controller.enqueue({\n type: \"tool-input-delta\",\n id: callId,\n delta: `{\"callId\":\"${escapeJSONDelta(callId)}\",\"operation\":{\"type\":\"${escapeJSONDelta(operation.type)}\",\"path\":\"${escapeJSONDelta(operation.path)}\",\"diff\":\"`\n });\n }\n } else if (value.item.type === \"shell_call\") {\n ongoingToolCalls[value.output_index] = {\n toolName: toolNameMapping.toCustomToolName(\"shell\"),\n toolCallId: value.item.call_id\n };\n } else if (value.item.type === \"shell_call_output\") {\n } else if (value.item.type === \"message\") {\n ongoingAnnotations.splice(0, ongoingAnnotations.length);\n activeMessagePhase = (_b = value.item.phase) != null ? _b : void 0;\n controller.enqueue({\n type: \"text-start\",\n id: value.item.id,\n providerMetadata: {\n [providerOptionsName]: {\n itemId: value.item.id,\n ...value.item.phase != null && {\n phase: value.item.phase\n }\n }\n }\n });\n } else if (isResponseOutputItemAddedChunk(value) && value.item.type === \"reasoning\") {\n activeReasoning[value.item.id] = {\n encryptedContent: value.item.encrypted_content,\n summaryParts: { 0: \"active\" }\n };\n controller.enqueue({\n type: \"reasoning-start\",\n id: `${value.item.id}:0`,\n providerMetadata: {\n [providerOptionsName]: {\n itemId: value.item.id,\n reasoningEncryptedContent: (_c = value.item.encrypted_content) != null ? _c : null\n }\n }\n });\n }\n } else if (isResponseOutputItemDoneChunk(value)) {\n if (value.item.type === \"message\") {\n const phase = (_d = value.item.phase) != null ? _d : activeMessagePhase;\n activeMessagePhase = void 0;\n controller.enqueue({\n type: \"text-end\",\n id: value.item.id,\n providerMetadata: {\n [providerOptionsName]: {\n itemId: value.item.id,\n ...phase != null && { phase },\n ...ongoingAnnotations.length > 0 && {\n annotations: ongoingAnnotations\n }\n }\n }\n });\n } else if (value.item.type === \"function_call\") {\n ongoingToolCalls[value.output_index] = void 0;\n hasFunctionCall = true;\n controller.enqueue({\n type: \"tool-input-end\",\n id: value.item.call_id\n });\n controller.enqueue({\n type: \"tool-call\",\n toolCallId: value.item.call_id,\n toolName: value.item.name,\n input: value.item.arguments,\n providerMetadata: {\n [providerOptionsName]: {\n itemId: value.item.id\n }\n }\n });\n } else if (value.item.type === \"custom_tool_call\") {\n ongoingToolCalls[value.output_index] = void 0;\n hasFunctionCall = true;\n const toolName = toolNameMapping.toCustomToolName(\n value.item.name\n );\n controller.enqueue({\n type: \"tool-input-end\",\n id: value.item.call_id\n });\n controller.enqueue({\n type: \"tool-call\",\n toolCallId: value.item.call_id,\n toolName,\n input: JSON.stringify(value.item.input),\n providerMetadata: {\n [providerOptionsName]: {\n itemId: value.item.id\n }\n }\n });\n } else if (value.item.type === \"web_search_call\") {\n ongoingToolCalls[value.output_index] = void 0;\n controller.enqueue({\n type: \"tool-result\",\n toolCallId: value.item.id,\n toolName: toolNameMapping.toCustomToolName(\n webSearchToolName != null ? webSearchToolName : \"web_search\"\n ),\n result: mapWebSearchOutput(value.item.action)\n });\n } else if (value.item.type === \"computer_call\") {\n ongoingToolCalls[value.output_index] = void 0;\n controller.enqueue({\n type: \"tool-input-end\",\n id: value.item.id\n });\n controller.enqueue({\n type: \"tool-call\",\n toolCallId: value.item.id,\n toolName: toolNameMapping.toCustomToolName(\"computer_use\"),\n input: \"\",\n providerExecuted: true\n });\n controller.enqueue({\n type: \"tool-result\",\n toolCallId: value.item.id,\n toolName: toolNameMapping.toCustomToolName(\"computer_use\"),\n result: {\n type: \"computer_use_tool_result\",\n status: value.item.status || \"completed\"\n }\n });\n } else if (value.item.type === \"file_search_call\") {\n ongoingToolCalls[value.output_index] = void 0;\n controller.enqueue({\n type: \"tool-result\",\n toolCallId: value.item.id,\n toolName: toolNameMapping.toCustomToolName(\"file_search\"),\n result: {\n queries: value.item.queries,\n results: (_f = (_e = value.item.results) == null ? void 0 : _e.map((result) => ({\n attributes: result.attributes,\n fileId: result.file_id,\n filename: result.filename,\n score: result.score,\n text: result.text\n }))) != null ? _f : null\n }\n });\n } else if (value.item.type === \"code_interpreter_call\") {\n ongoingToolCalls[value.output_index] = void 0;\n controller.enqueue({\n type: \"tool-result\",\n toolCallId: value.item.id,\n toolName: toolNameMapping.toCustomToolName(\"code_interpreter\"),\n result: {\n outputs: value.item.outputs\n }\n });\n } else if (value.item.type === \"image_generation_call\") {\n controller.enqueue({\n type: \"tool-result\",\n toolCallId: value.item.id,\n toolName: toolNameMapping.toCustomToolName(\"image_generation\"),\n result: {\n result: value.item.result\n }\n });\n } else if (value.item.type === \"tool_search_call\") {\n const toolCall = ongoingToolCalls[value.output_index];\n const isHosted = value.item.execution === \"server\";\n if (toolCall != null) {\n const toolCallId = isHosted ? toolCall.toolCallId : (_g = value.item.call_id) != null ? _g : value.item.id;\n if (isHosted) {\n hostedToolSearchCallIds.push(toolCallId);\n } else {\n controller.enqueue({\n type: \"tool-input-start\",\n id: toolCallId,\n toolName: toolCall.toolName\n });\n }\n controller.enqueue({\n type: \"tool-input-end\",\n id: toolCallId\n });\n controller.enqueue({\n type: \"tool-call\",\n toolCallId,\n toolName: toolCall.toolName,\n input: JSON.stringify({\n arguments: value.item.arguments,\n call_id: isHosted ? null : toolCallId\n }),\n ...isHosted ? { providerExecuted: true } : {},\n providerMetadata: {\n [providerOptionsName]: {\n itemId: value.item.id\n }\n }\n });\n }\n ongoingToolCalls[value.output_index] = void 0;\n } else if (value.item.type === \"tool_search_output\") {\n const toolCallId = (_i = (_h = value.item.call_id) != null ? _h : hostedToolSearchCallIds.shift()) != null ? _i : value.item.id;\n controller.enqueue({\n type: \"tool-result\",\n toolCallId,\n toolName: toolNameMapping.toCustomToolName(\"tool_search\"),\n result: {\n tools: value.item.tools\n },\n providerMetadata: {\n [providerOptionsName]: {\n itemId: value.item.id\n }\n }\n });\n } else if (value.item.type === \"mcp_call\") {\n ongoingToolCalls[value.output_index] = void 0;\n const approvalRequestId = (_j = value.item.approval_request_id) != null ? _j : void 0;\n const aliasedToolCallId = approvalRequestId != null ? (_l = (_k = approvalRequestIdToDummyToolCallIdFromStream.get(\n approvalRequestId\n )) != null ? _k : approvalRequestIdToDummyToolCallIdFromPrompt[approvalRequestId]) != null ? _l : value.item.id : value.item.id;\n const toolName = `mcp.${value.item.name}`;\n controller.enqueue({\n type: \"tool-call\",\n toolCallId: aliasedToolCallId,\n toolName,\n input: value.item.arguments,\n providerExecuted: true,\n dynamic: true\n });\n controller.enqueue({\n type: \"tool-result\",\n toolCallId: aliasedToolCallId,\n toolName,\n result: {\n type: \"call\",\n serverLabel: value.item.server_label,\n name: value.item.name,\n arguments: value.item.arguments,\n ...value.item.output != null ? { output: value.item.output } : {},\n ...value.item.error != null ? { error: value.item.error } : {}\n },\n providerMetadata: {\n [providerOptionsName]: {\n itemId: value.item.id\n }\n }\n });\n } else if (value.item.type === \"mcp_list_tools\") {\n ongoingToolCalls[value.output_index] = void 0;\n } else if (value.item.type === \"apply_patch_call\") {\n const toolCall = ongoingToolCalls[value.output_index];\n if ((toolCall == null ? void 0 : toolCall.applyPatch) && !toolCall.applyPatch.endEmitted && value.item.operation.type !== \"delete_file\") {\n if (!toolCall.applyPatch.hasDiff) {\n controller.enqueue({\n type: \"tool-input-delta\",\n id: toolCall.toolCallId,\n delta: escapeJSONDelta(value.item.operation.diff)\n });\n }\n controller.enqueue({\n type: \"tool-input-delta\",\n id: toolCall.toolCallId,\n delta: '\"}}'\n });\n controller.enqueue({\n type: \"tool-input-end\",\n id: toolCall.toolCallId\n });\n toolCall.applyPatch.endEmitted = true;\n }\n if (toolCall && value.item.status === \"completed\") {\n controller.enqueue({\n type: \"tool-call\",\n toolCallId: toolCall.toolCallId,\n toolName: toolNameMapping.toCustomToolName(\"apply_patch\"),\n input: JSON.stringify({\n callId: value.item.call_id,\n operation: value.item.operation\n }),\n providerMetadata: {\n [providerOptionsName]: {\n itemId: value.item.id\n }\n }\n });\n }\n ongoingToolCalls[value.output_index] = void 0;\n } else if (value.item.type === \"mcp_approval_request\") {\n ongoingToolCalls[value.output_index] = void 0;\n const dummyToolCallId = (_o = (_n = (_m = self.config).generateId) == null ? void 0 : _n.call(_m)) != null ? _o : generateId2();\n const approvalRequestId = (_p = value.item.approval_request_id) != null ? _p : value.item.id;\n approvalRequestIdToDummyToolCallIdFromStream.set(\n approvalRequestId,\n dummyToolCallId\n );\n const toolName = `mcp.${value.item.name}`;\n controller.enqueue({\n type: \"tool-call\",\n toolCallId: dummyToolCallId,\n toolName,\n input: value.item.arguments,\n providerExecuted: true,\n dynamic: true\n });\n controller.enqueue({\n type: \"tool-approval-request\",\n approvalId: approvalRequestId,\n toolCallId: dummyToolCallId\n });\n } else if (value.item.type === \"local_shell_call\") {\n ongoingToolCalls[value.output_index] = void 0;\n controller.enqueue({\n type: \"tool-call\",\n toolCallId: value.item.call_id,\n toolName: toolNameMapping.toCustomToolName(\"local_shell\"),\n input: JSON.stringify({\n action: {\n type: \"exec\",\n command: value.item.action.command,\n timeoutMs: value.item.action.timeout_ms,\n user: value.item.action.user,\n workingDirectory: value.item.action.working_directory,\n env: value.item.action.env\n }\n }),\n providerMetadata: {\n [providerOptionsName]: { itemId: value.item.id }\n }\n });\n } else if (value.item.type === \"shell_call\") {\n ongoingToolCalls[value.output_index] = void 0;\n controller.enqueue({\n type: \"tool-call\",\n toolCallId: value.item.call_id,\n toolName: toolNameMapping.toCustomToolName(\"shell\"),\n input: JSON.stringify({\n action: {\n commands: value.item.action.commands\n }\n }),\n ...isShellProviderExecuted && {\n providerExecuted: true\n },\n providerMetadata: {\n [providerOptionsName]: { itemId: value.item.id }\n }\n });\n } else if (value.item.type === \"shell_call_output\") {\n controller.enqueue({\n type: \"tool-result\",\n toolCallId: value.item.call_id,\n toolName: toolNameMapping.toCustomToolName(\"shell\"),\n result: {\n output: value.item.output.map(\n (item) => ({\n stdout: item.stdout,\n stderr: item.stderr,\n outcome: item.outcome.type === \"exit\" ? {\n type: \"exit\",\n exitCode: item.outcome.exit_code\n } : { type: \"timeout\" }\n })\n )\n }\n });\n } else if (value.item.type === \"reasoning\") {\n const activeReasoningPart = activeReasoning[value.item.id];\n const summaryPartIndices = Object.entries(\n activeReasoningPart.summaryParts\n ).filter(\n ([_, status]) => status === \"active\" || status === \"can-conclude\"\n ).map(([summaryIndex]) => summaryIndex);\n for (const summaryIndex of summaryPartIndices) {\n controller.enqueue({\n type: \"reasoning-end\",\n id: `${value.item.id}:${summaryIndex}`,\n providerMetadata: {\n [providerOptionsName]: {\n itemId: value.item.id,\n reasoningEncryptedContent: (_q = value.item.encrypted_content) != null ? _q : null\n }\n }\n });\n }\n delete activeReasoning[value.item.id];\n }\n } else if (isResponseFunctionCallArgumentsDeltaChunk(value)) {\n const toolCall = ongoingToolCalls[value.output_index];\n if (toolCall != null) {\n controller.enqueue({\n type: \"tool-input-delta\",\n id: toolCall.toolCallId,\n delta: value.delta\n });\n }\n } else if (isResponseCustomToolCallInputDeltaChunk(value)) {\n const toolCall = ongoingToolCalls[value.output_index];\n if (toolCall != null) {\n controller.enqueue({\n type: \"tool-input-delta\",\n id: toolCall.toolCallId,\n delta: value.delta\n });\n }\n } else if (isResponseApplyPatchCallOperationDiffDeltaChunk(value)) {\n const toolCall = ongoingToolCalls[value.output_index];\n if (toolCall == null ? void 0 : toolCall.applyPatch) {\n controller.enqueue({\n type: \"tool-input-delta\",\n id: toolCall.toolCallId,\n delta: escapeJSONDelta(value.delta)\n });\n toolCall.applyPatch.hasDiff = true;\n }\n } else if (isResponseApplyPatchCallOperationDiffDoneChunk(value)) {\n const toolCall = ongoingToolCalls[value.output_index];\n if ((toolCall == null ? void 0 : toolCall.applyPatch) && !toolCall.applyPatch.endEmitted) {\n if (!toolCall.applyPatch.hasDiff) {\n controller.enqueue({\n type: \"tool-input-delta\",\n id: toolCall.toolCallId,\n delta: escapeJSONDelta(value.diff)\n });\n toolCall.applyPatch.hasDiff = true;\n }\n controller.enqueue({\n type: \"tool-input-delta\",\n id: toolCall.toolCallId,\n delta: '\"}}'\n });\n controller.enqueue({\n type: \"tool-input-end\",\n id: toolCall.toolCallId\n });\n toolCall.applyPatch.endEmitted = true;\n }\n } else if (isResponseImageGenerationCallPartialImageChunk(value)) {\n controller.enqueue({\n type: \"tool-result\",\n toolCallId: value.item_id,\n toolName: toolNameMapping.toCustomToolName(\"image_generation\"),\n result: {\n result: value.partial_image_b64\n },\n preliminary: true\n });\n } else if (isResponseCodeInterpreterCallCodeDeltaChunk(value)) {\n const toolCall = ongoingToolCalls[value.output_index];\n if (toolCall != null) {\n controller.enqueue({\n type: \"tool-input-delta\",\n id: toolCall.toolCallId,\n delta: escapeJSONDelta(value.delta)\n });\n }\n } else if (isResponseCodeInterpreterCallCodeDoneChunk(value)) {\n const toolCall = ongoingToolCalls[value.output_index];\n if (toolCall != null) {\n controller.enqueue({\n type: \"tool-input-delta\",\n id: toolCall.toolCallId,\n delta: '\"}'\n });\n controller.enqueue({\n type: \"tool-input-end\",\n id: toolCall.toolCallId\n });\n controller.enqueue({\n type: \"tool-call\",\n toolCallId: toolCall.toolCallId,\n toolName: toolNameMapping.toCustomToolName(\"code_interpreter\"),\n input: JSON.stringify({\n code: value.code,\n containerId: toolCall.codeInterpreter.containerId\n }),\n providerExecuted: true\n });\n }\n } else if (isResponseCreatedChunk(value)) {\n responseId = value.response.id;\n controller.enqueue({\n type: \"response-metadata\",\n id: value.response.id,\n timestamp: new Date(value.response.created_at * 1e3),\n modelId: value.response.model\n });\n } else if (isTextDeltaChunk(value)) {\n controller.enqueue({\n type: \"text-delta\",\n id: value.item_id,\n delta: value.delta\n });\n if (((_s = (_r = options.providerOptions) == null ? void 0 : _r[providerOptionsName]) == null ? void 0 : _s.logprobs) && value.logprobs) {\n logprobs.push(value.logprobs);\n }\n } else if (value.type === \"response.reasoning_summary_part.added\") {\n if (value.summary_index > 0) {\n const activeReasoningPart = activeReasoning[value.item_id];\n activeReasoningPart.summaryParts[value.summary_index] = \"active\";\n for (const summaryIndex of Object.keys(\n activeReasoningPart.summaryParts\n )) {\n if (activeReasoningPart.summaryParts[summaryIndex] === \"can-conclude\") {\n controller.enqueue({\n type: \"reasoning-end\",\n id: `${value.item_id}:${summaryIndex}`,\n providerMetadata: {\n [providerOptionsName]: {\n itemId: value.item_id\n }\n }\n });\n activeReasoningPart.summaryParts[summaryIndex] = \"concluded\";\n }\n }\n controller.enqueue({\n type: \"reasoning-start\",\n id: `${value.item_id}:${value.summary_index}`,\n providerMetadata: {\n [providerOptionsName]: {\n itemId: value.item_id,\n reasoningEncryptedContent: (_u = (_t = activeReasoning[value.item_id]) == null ? void 0 : _t.encryptedContent) != null ? _u : null\n }\n }\n });\n }\n } else if (value.type === \"response.reasoning_summary_text.delta\") {\n controller.enqueue({\n type: \"reasoning-delta\",\n id: `${value.item_id}:${value.summary_index}`,\n delta: value.delta,\n providerMetadata: {\n [providerOptionsName]: {\n itemId: value.item_id\n }\n }\n });\n } else if (value.type === \"response.reasoning_summary_part.done\") {\n if (store) {\n controller.enqueue({\n type: \"reasoning-end\",\n id: `${value.item_id}:${value.summary_index}`,\n providerMetadata: {\n [providerOptionsName]: {\n itemId: value.item_id\n }\n }\n });\n activeReasoning[value.item_id].summaryParts[value.summary_index] = \"concluded\";\n } else {\n activeReasoning[value.item_id].summaryParts[value.summary_index] = \"can-conclude\";\n }\n } else if (isResponseFinishedChunk(value)) {\n finishReason = {\n unified: mapOpenAIResponseFinishReason({\n finishReason: (_v = value.response.incomplete_details) == null ? void 0 : _v.reason,\n hasFunctionCall\n }),\n raw: (_x = (_w = value.response.incomplete_details) == null ? void 0 : _w.reason) != null ? _x : void 0\n };\n usage = value.response.usage;\n if (typeof value.response.service_tier === \"string\") {\n serviceTier = value.response.service_tier;\n }\n } else if (isResponseFailedChunk(value)) {\n const incompleteReason = (_y = value.response.incomplete_details) == null ? void 0 : _y.reason;\n finishReason = {\n unified: incompleteReason ? mapOpenAIResponseFinishReason({\n finishReason: incompleteReason,\n hasFunctionCall\n }) : \"error\",\n raw: incompleteReason != null ? incompleteReason : \"error\"\n };\n usage = (_z = value.response.usage) != null ? _z : void 0;\n } else if (isResponseAnnotationAddedChunk(value)) {\n ongoingAnnotations.push(value.annotation);\n if (value.annotation.type === \"url_citation\") {\n controller.enqueue({\n type: \"source\",\n sourceType: \"url\",\n id: (_C = (_B = (_A = self.config).generateId) == null ? void 0 : _B.call(_A)) != null ? _C : generateId2(),\n url: value.annotation.url,\n title: value.annotation.title\n });\n } else if (value.annotation.type === \"file_citation\") {\n controller.enqueue({\n type: \"source\",\n sourceType: \"document\",\n id: (_F = (_E = (_D = self.config).generateId) == null ? void 0 : _E.call(_D)) != null ? _F : generateId2(),\n mediaType: \"text/plain\",\n title: value.annotation.filename,\n filename: value.annotation.filename,\n providerMetadata: {\n [providerOptionsName]: {\n type: value.annotation.type,\n fileId: value.annotation.file_id,\n index: value.annotation.index\n }\n }\n });\n } else if (value.annotation.type === \"container_file_citation\") {\n controller.enqueue({\n type: \"source\",\n sourceType: \"document\",\n id: (_I = (_H = (_G = self.config).generateId) == null ? void 0 : _H.call(_G)) != null ? _I : generateId2(),\n mediaType: \"text/plain\",\n title: value.annotation.filename,\n filename: value.annotation.filename,\n providerMetadata: {\n [providerOptionsName]: {\n type: value.annotation.type,\n fileId: value.annotation.file_id,\n containerId: value.annotation.container_id\n }\n }\n });\n } else if (value.annotation.type === \"file_path\") {\n controller.enqueue({\n type: \"source\",\n sourceType: \"document\",\n id: (_L = (_K = (_J = self.config).generateId) == null ? void 0 : _K.call(_J)) != null ? _L : generateId2(),\n mediaType: \"application/octet-stream\",\n title: value.annotation.file_id,\n filename: value.annotation.file_id,\n providerMetadata: {\n [providerOptionsName]: {\n type: value.annotation.type,\n fileId: value.annotation.file_id,\n index: value.annotation.index\n }\n }\n });\n }\n } else if (isErrorChunk(value)) {\n controller.enqueue({ type: \"error\", error: value });\n }\n },\n flush(controller) {\n const providerMetadata = {\n [providerOptionsName]: {\n responseId,\n ...logprobs.length > 0 ? { logprobs } : {},\n ...serviceTier !== void 0 ? { serviceTier } : {}\n }\n };\n controller.enqueue({\n type: \"finish\",\n finishReason,\n usage: convertOpenAIResponsesUsage(usage),\n providerMetadata\n });\n }\n })\n ),\n request: { body },\n response: { headers: responseHeaders }\n };\n }\n};\nfunction isTextDeltaChunk(chunk) {\n return chunk.type === \"response.output_text.delta\";\n}\nfunction isResponseOutputItemDoneChunk(chunk) {\n return chunk.type === \"response.output_item.done\";\n}\nfunction isResponseFinishedChunk(chunk) {\n return chunk.type === \"response.completed\" || chunk.type === \"response.incomplete\";\n}\nfunction isResponseFailedChunk(chunk) {\n return chunk.type === \"response.failed\";\n}\nfunction isResponseCreatedChunk(chunk) {\n return chunk.type === \"response.created\";\n}\nfunction isResponseFunctionCallArgumentsDeltaChunk(chunk) {\n return chunk.type === \"response.function_call_arguments.delta\";\n}\nfunction isResponseCustomToolCallInputDeltaChunk(chunk) {\n return chunk.type === \"response.custom_tool_call_input.delta\";\n}\nfunction isResponseImageGenerationCallPartialImageChunk(chunk) {\n return chunk.type === \"response.image_generation_call.partial_image\";\n}\nfunction isResponseCodeInterpreterCallCodeDeltaChunk(chunk) {\n return chunk.type === \"response.code_interpreter_call_code.delta\";\n}\nfunction isResponseCodeInterpreterCallCodeDoneChunk(chunk) {\n return chunk.type === \"response.code_interpreter_call_code.done\";\n}\nfunction isResponseApplyPatchCallOperationDiffDeltaChunk(chunk) {\n return chunk.type === \"response.apply_patch_call_operation_diff.delta\";\n}\nfunction isResponseApplyPatchCallOperationDiffDoneChunk(chunk) {\n return chunk.type === \"response.apply_patch_call_operation_diff.done\";\n}\nfunction isResponseOutputItemAddedChunk(chunk) {\n return chunk.type === \"response.output_item.added\";\n}\nfunction isResponseAnnotationAddedChunk(chunk) {\n return chunk.type === \"response.output_text.annotation.added\";\n}\nfunction isErrorChunk(chunk) {\n return chunk.type === \"error\";\n}\nfunction mapWebSearchOutput(action) {\n var _a;\n if (action == null) {\n return {};\n }\n switch (action.type) {\n case \"search\":\n return {\n action: { type: \"search\", query: (_a = action.query) != null ? _a : void 0 },\n // include sources when provided by the Responses API (behind include flag)\n ...action.sources != null && { sources: action.sources }\n };\n case \"open_page\":\n return { action: { type: \"openPage\", url: action.url } };\n case \"find_in_page\":\n return {\n action: {\n type: \"findInPage\",\n url: action.url,\n pattern: action.pattern\n }\n };\n }\n}\nfunction escapeJSONDelta(delta) {\n return JSON.stringify(delta).slice(1, -1);\n}\n\n// src/speech/openai-speech-model.ts\nimport {\n combineHeaders as combineHeaders6,\n createBinaryResponseHandler,\n parseProviderOptions as parseProviderOptions6,\n postJsonToApi as postJsonToApi6\n} from \"@ai-sdk/provider-utils\";\n\n// src/speech/openai-speech-options.ts\nimport { lazySchema as lazySchema21, zodSchema as zodSchema21 } from \"@ai-sdk/provider-utils\";\nimport { z as z23 } from \"zod/v4\";\nvar openaiSpeechModelOptionsSchema = lazySchema21(\n () => zodSchema21(\n z23.object({\n instructions: z23.string().nullish(),\n speed: z23.number().min(0.25).max(4).default(1).nullish()\n })\n )\n);\n\n// src/speech/openai-speech-model.ts\nvar OpenAISpeechModel = class {\n constructor(modelId, config) {\n this.modelId = modelId;\n this.config = config;\n this.specificationVersion = \"v3\";\n }\n get provider() {\n return this.config.provider;\n }\n async getArgs({\n text,\n voice = \"alloy\",\n outputFormat = \"mp3\",\n speed,\n instructions,\n language,\n providerOptions\n }) {\n const warnings = [];\n const openAIOptions = await parseProviderOptions6({\n provider: \"openai\",\n providerOptions,\n schema: openaiSpeechModelOptionsSchema\n });\n const requestBody = {\n model: this.modelId,\n input: text,\n voice,\n response_format: \"mp3\",\n speed,\n instructions\n };\n if (outputFormat) {\n if ([\"mp3\", \"opus\", \"aac\", \"flac\", \"wav\", \"pcm\"].includes(outputFormat)) {\n requestBody.response_format = outputFormat;\n } else {\n warnings.push({\n type: \"unsupported\",\n feature: \"outputFormat\",\n details: `Unsupported output format: ${outputFormat}. Using mp3 instead.`\n });\n }\n }\n if (openAIOptions) {\n const speechModelOptions = {};\n for (const key in speechModelOptions) {\n const value = speechModelOptions[key];\n if (value !== void 0) {\n requestBody[key] = value;\n }\n }\n }\n if (language) {\n warnings.push({\n type: \"unsupported\",\n feature: \"language\",\n details: `OpenAI speech models do not support language selection. Language parameter \"${language}\" was ignored.`\n });\n }\n return {\n requestBody,\n warnings\n };\n }\n async doGenerate(options) {\n var _a, _b, _c;\n const currentDate = (_c = (_b = (_a = this.config._internal) == null ? void 0 : _a.currentDate) == null ? void 0 : _b.call(_a)) != null ? _c : /* @__PURE__ */ new Date();\n const { requestBody, warnings } = await this.getArgs(options);\n const {\n value: audio,\n responseHeaders,\n rawValue: rawResponse\n } = await postJsonToApi6({\n url: this.config.url({\n path: \"/audio/speech\",\n modelId: this.modelId\n }),\n headers: combineHeaders6(this.config.headers(), options.headers),\n body: requestBody,\n failedResponseHandler: openaiFailedResponseHandler,\n successfulResponseHandler: createBinaryResponseHandler(),\n abortSignal: options.abortSignal,\n fetch: this.config.fetch\n });\n return {\n audio,\n warnings,\n request: {\n body: JSON.stringify(requestBody)\n },\n response: {\n timestamp: currentDate,\n modelId: this.modelId,\n headers: responseHeaders,\n body: rawResponse\n }\n };\n }\n};\n\n// src/transcription/openai-transcription-model.ts\nimport {\n combineHeaders as combineHeaders7,\n convertBase64ToUint8Array as convertBase64ToUint8Array2,\n createJsonResponseHandler as createJsonResponseHandler6,\n mediaTypeToExtension,\n parseProviderOptions as parseProviderOptions7,\n postFormDataToApi as postFormDataToApi2\n} from \"@ai-sdk/provider-utils\";\n\n// src/transcription/openai-transcription-api.ts\nimport { lazySchema as lazySchema22, zodSchema as zodSchema22 } from \"@ai-sdk/provider-utils\";\nimport { z as z24 } from \"zod/v4\";\nvar openaiTranscriptionResponseSchema = lazySchema22(\n () => zodSchema22(\n z24.object({\n text: z24.string(),\n language: z24.string().nullish(),\n duration: z24.number().nullish(),\n words: z24.array(\n z24.object({\n word: z24.string(),\n start: z24.number(),\n end: z24.number()\n })\n ).nullish(),\n segments: z24.array(\n z24.object({\n id: z24.number(),\n seek: z24.number(),\n start: z24.number(),\n end: z24.number(),\n text: z24.string(),\n tokens: z24.array(z24.number()),\n temperature: z24.number(),\n avg_logprob: z24.number(),\n compression_ratio: z24.number(),\n no_speech_prob: z24.number()\n })\n ).nullish()\n })\n )\n);\n\n// src/transcription/openai-transcription-options.ts\nimport { lazySchema as lazySchema23, zodSchema as zodSchema23 } from \"@ai-sdk/provider-utils\";\nimport { z as z25 } from \"zod/v4\";\nvar openAITranscriptionModelOptions = lazySchema23(\n () => zodSchema23(\n z25.object({\n /**\n * Additional information to include in the transcription response.\n */\n include: z25.array(z25.string()).optional(),\n /**\n * The language of the input audio in ISO-639-1 format.\n */\n language: z25.string().optional(),\n /**\n * An optional text to guide the model's style or continue a previous audio segment.\n */\n prompt: z25.string().optional(),\n /**\n * The sampling temperature, between 0 and 1.\n * @default 0\n */\n temperature: z25.number().min(0).max(1).default(0).optional(),\n /**\n * The timestamp granularities to populate for this transcription.\n * @default ['segment']\n */\n timestampGranularities: z25.array(z25.enum([\"word\", \"segment\"])).default([\"segment\"]).optional()\n })\n )\n);\n\n// src/transcription/openai-transcription-model.ts\nvar languageMap = {\n afrikaans: \"af\",\n arabic: \"ar\",\n armenian: \"hy\",\n azerbaijani: \"az\",\n belarusian: \"be\",\n bosnian: \"bs\",\n bulgarian: \"bg\",\n catalan: \"ca\",\n chinese: \"zh\",\n croatian: \"hr\",\n czech: \"cs\",\n danish: \"da\",\n dutch: \"nl\",\n english: \"en\",\n estonian: \"et\",\n finnish: \"fi\",\n french: \"fr\",\n galician: \"gl\",\n german: \"de\",\n greek: \"el\",\n hebrew: \"he\",\n hindi: \"hi\",\n hungarian: \"hu\",\n icelandic: \"is\",\n indonesian: \"id\",\n italian: \"it\",\n japanese: \"ja\",\n kannada: \"kn\",\n kazakh: \"kk\",\n korean: \"ko\",\n latvian: \"lv\",\n lithuanian: \"lt\",\n macedonian: \"mk\",\n malay: \"ms\",\n marathi: \"mr\",\n maori: \"mi\",\n nepali: \"ne\",\n norwegian: \"no\",\n persian: \"fa\",\n polish: \"pl\",\n portuguese: \"pt\",\n romanian: \"ro\",\n russian: \"ru\",\n serbian: \"sr\",\n slovak: \"sk\",\n slovenian: \"sl\",\n spanish: \"es\",\n swahili: \"sw\",\n swedish: \"sv\",\n tagalog: \"tl\",\n tamil: \"ta\",\n thai: \"th\",\n turkish: \"tr\",\n ukrainian: \"uk\",\n urdu: \"ur\",\n vietnamese: \"vi\",\n welsh: \"cy\"\n};\nvar OpenAITranscriptionModel = class {\n constructor(modelId, config) {\n this.modelId = modelId;\n this.config = config;\n this.specificationVersion = \"v3\";\n }\n get provider() {\n return this.config.provider;\n }\n async getArgs({\n audio,\n mediaType,\n providerOptions\n }) {\n const warnings = [];\n const openAIOptions = await parseProviderOptions7({\n provider: \"openai\",\n providerOptions,\n schema: openAITranscriptionModelOptions\n });\n const formData = new FormData();\n const blob = audio instanceof Uint8Array ? new Blob([audio]) : new Blob([convertBase64ToUint8Array2(audio)]);\n formData.append(\"model\", this.modelId);\n const fileExtension = mediaTypeToExtension(mediaType);\n formData.append(\n \"file\",\n new File([blob], \"audio\", { type: mediaType }),\n `audio.${fileExtension}`\n );\n if (openAIOptions) {\n const transcriptionModelOptions = {\n include: openAIOptions.include,\n language: openAIOptions.language,\n prompt: openAIOptions.prompt,\n // https://platform.openai.com/docs/api-reference/audio/createTranscription#audio_createtranscription-response_format\n // prefer verbose_json to get segments for models that support it\n response_format: [\n \"gpt-4o-transcribe\",\n \"gpt-4o-mini-transcribe\"\n ].includes(this.modelId) ? \"json\" : \"verbose_json\",\n temperature: openAIOptions.temperature,\n timestamp_granularities: openAIOptions.timestampGranularities\n };\n for (const [key, value] of Object.entries(transcriptionModelOptions)) {\n if (value != null) {\n if (Array.isArray(value)) {\n for (const item of value) {\n formData.append(`${key}[]`, String(item));\n }\n } else {\n formData.append(key, String(value));\n }\n }\n }\n }\n return {\n formData,\n warnings\n };\n }\n async doGenerate(options) {\n var _a, _b, _c, _d, _e, _f, _g, _h;\n const currentDate = (_c = (_b = (_a = this.config._internal) == null ? void 0 : _a.currentDate) == null ? void 0 : _b.call(_a)) != null ? _c : /* @__PURE__ */ new Date();\n const { formData, warnings } = await this.getArgs(options);\n const {\n value: response,\n responseHeaders,\n rawValue: rawResponse\n } = await postFormDataToApi2({\n url: this.config.url({\n path: \"/audio/transcriptions\",\n modelId: this.modelId\n }),\n headers: combineHeaders7(this.config.headers(), options.headers),\n formData,\n failedResponseHandler: openaiFailedResponseHandler,\n successfulResponseHandler: createJsonResponseHandler6(\n openaiTranscriptionResponseSchema\n ),\n abortSignal: options.abortSignal,\n fetch: this.config.fetch\n });\n const language = response.language != null && response.language in languageMap ? languageMap[response.language] : void 0;\n return {\n text: response.text,\n segments: (_g = (_f = (_d = response.segments) == null ? void 0 : _d.map((segment) => ({\n text: segment.text,\n startSecond: segment.start,\n endSecond: segment.end\n }))) != null ? _f : (_e = response.words) == null ? void 0 : _e.map((word) => ({\n text: word.word,\n startSecond: word.start,\n endSecond: word.end\n }))) != null ? _g : [],\n language,\n durationInSeconds: (_h = response.duration) != null ? _h : void 0,\n warnings,\n response: {\n timestamp: currentDate,\n modelId: this.modelId,\n headers: responseHeaders,\n body: rawResponse\n }\n };\n }\n};\n\n// src/version.ts\nvar VERSION = true ? \"3.0.53\" : \"0.0.0-test\";\n\n// src/openai-provider.ts\nfunction createOpenAI(options = {}) {\n var _a, _b;\n const baseURL = (_a = withoutTrailingSlash(\n loadOptionalSetting({\n settingValue: options.baseURL,\n environmentVariableName: \"OPENAI_BASE_URL\"\n })\n )) != null ? _a : \"https://api.openai.com/v1\";\n const providerName = (_b = options.name) != null ? _b : \"openai\";\n const getHeaders = () => withUserAgentSuffix(\n {\n Authorization: `Bearer ${loadApiKey({\n apiKey: options.apiKey,\n environmentVariableName: \"OPENAI_API_KEY\",\n description: \"OpenAI\"\n })}`,\n \"OpenAI-Organization\": options.organization,\n \"OpenAI-Project\": options.project,\n ...options.headers\n },\n `ai-sdk/openai/${VERSION}`\n );\n const createChatModel = (modelId) => new OpenAIChatLanguageModel(modelId, {\n provider: `${providerName}.chat`,\n url: ({ path }) => `${baseURL}${path}`,\n headers: getHeaders,\n fetch: options.fetch\n });\n const createCompletionModel = (modelId) => new OpenAICompletionLanguageModel(modelId, {\n provider: `${providerName}.completion`,\n url: ({ path }) => `${baseURL}${path}`,\n headers: getHeaders,\n fetch: options.fetch\n });\n const createEmbeddingModel = (modelId) => new OpenAIEmbeddingModel(modelId, {\n provider: `${providerName}.embedding`,\n url: ({ path }) => `${baseURL}${path}`,\n headers: getHeaders,\n fetch: options.fetch\n });\n const createImageModel = (modelId) => new OpenAIImageModel(modelId, {\n provider: `${providerName}.image`,\n url: ({ path }) => `${baseURL}${path}`,\n headers: getHeaders,\n fetch: options.fetch\n });\n const createTranscriptionModel = (modelId) => new OpenAITranscriptionModel(modelId, {\n provider: `${providerName}.transcription`,\n url: ({ path }) => `${baseURL}${path}`,\n headers: getHeaders,\n fetch: options.fetch\n });\n const createSpeechModel = (modelId) => new OpenAISpeechModel(modelId, {\n provider: `${providerName}.speech`,\n url: ({ path }) => `${baseURL}${path}`,\n headers: getHeaders,\n fetch: options.fetch\n });\n const createLanguageModel = (modelId) => {\n if (new.target) {\n throw new Error(\n \"The OpenAI model function cannot be called with the new keyword.\"\n );\n }\n return createResponsesModel(modelId);\n };\n const createResponsesModel = (modelId) => {\n return new OpenAIResponsesLanguageModel(modelId, {\n provider: `${providerName}.responses`,\n url: ({ path }) => `${baseURL}${path}`,\n headers: getHeaders,\n fetch: options.fetch,\n fileIdPrefixes: [\"file-\"]\n });\n };\n const provider = function(modelId) {\n return createLanguageModel(modelId);\n };\n provider.specificationVersion = \"v3\";\n provider.languageModel = createLanguageModel;\n provider.chat = createChatModel;\n provider.completion = createCompletionModel;\n provider.responses = createResponsesModel;\n provider.embedding = createEmbeddingModel;\n provider.embeddingModel = createEmbeddingModel;\n provider.textEmbedding = createEmbeddingModel;\n provider.textEmbeddingModel = createEmbeddingModel;\n provider.image = createImageModel;\n provider.imageModel = createImageModel;\n provider.transcription = createTranscriptionModel;\n provider.transcriptionModel = createTranscriptionModel;\n provider.speech = createSpeechModel;\n provider.speechModel = createSpeechModel;\n provider.tools = openaiTools;\n return provider;\n}\nvar openai = createOpenAI();\nexport {\n VERSION,\n createOpenAI,\n openai\n};\n//# sourceMappingURL=index.mjs.map"
|
|
6
6
|
],
|
|
7
7
|
"mappings": "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",
|
|
8
|
-
"debugId": "
|
|
8
|
+
"debugId": "E60F91325858030464756E2164756E21",
|
|
9
9
|
"names": []
|
|
10
10
|
}
|