@opencode-ai/cli-windows-arm64 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.
Files changed (148) hide show
  1. package/bin/{chunk-yjd4gfrw.js.map → chunk-01045avw.js.map} +1 -1
  2. package/bin/{chunk-7e33eexw.js.map → chunk-04aztn0b.js.map} +1 -1
  3. package/bin/{chunk-0w8srq86.js.map → chunk-15h0rnzn.js.map} +1 -1
  4. package/bin/{chunk-7h3thzht.js.map → chunk-1nzxsbk6.js.map} +1 -1
  5. package/bin/{chunk-c405mav2.js.map → chunk-1sytpc6f.js.map} +1 -1
  6. package/bin/{chunk-yrctbw5z.js.map → chunk-261ddjb6.js.map} +1 -1
  7. package/bin/{chunk-g75pjf1s.js.map → chunk-2byrf7ep.js.map} +1 -1
  8. package/bin/{chunk-v5t5sfsa.js.map → chunk-2x3cdftk.js.map} +1 -1
  9. package/bin/{chunk-6t6j2syw.js.map → chunk-30axpd3c.js.map} +1 -1
  10. package/bin/{chunk-p7vb6q61.js.map → chunk-33dpck4r.js.map} +1 -1
  11. package/bin/{chunk-xtwd1g04.js.map → chunk-37fvrskh.js.map} +1 -1
  12. package/bin/{chunk-0zaxan0f.js.map → chunk-3a78h791.js.map} +1 -1
  13. package/bin/{chunk-37mqnge5.js.map → chunk-3ksmv4c2.js.map} +1 -1
  14. package/bin/{chunk-tp53m8fs.js.map → chunk-3nen48r7.js.map} +1 -1
  15. package/bin/{chunk-qxp1n90a.js.map → chunk-3q9y0mvz.js.map} +1 -1
  16. package/bin/{chunk-f5tfppa3.js.map → chunk-3ykfzv15.js.map} +1 -1
  17. package/bin/{chunk-753zwk10.js.map → chunk-40an6rst.js.map} +1 -1
  18. package/bin/{chunk-9pxszgex.js.map → chunk-4x714waw.js.map} +1 -1
  19. package/bin/{chunk-rt3p96q3.js.map → chunk-4xkbmehz.js.map} +1 -1
  20. package/bin/{chunk-b16pmd6c.js.map → chunk-4zhtpsfq.js.map} +1 -1
  21. package/bin/{chunk-9rp9xyz4.js.map → chunk-5h92s4pv.js.map} +2 -2
  22. package/bin/{chunk-10g9mzpr.js.map → chunk-5kpn8vaw.js.map} +1 -1
  23. package/bin/{chunk-de8e7pt7.js.map → chunk-5qsmqhwr.js.map} +1 -1
  24. package/bin/{chunk-0m0ysqkf.js.map → chunk-64907mep.js.map} +1 -1
  25. package/bin/{chunk-en70h511.js.map → chunk-67nxqrwy.js.map} +2 -2
  26. package/bin/{chunk-mww4n4f4.js.map → chunk-6g2chb5m.js.map} +1 -1
  27. package/bin/chunk-6ytt419c.js.map +9 -0
  28. package/bin/{chunk-9777kknm.js.map → chunk-76thyyad.js.map} +1 -1
  29. package/bin/{chunk-s6p78e64.js.map → chunk-7c6917we.js.map} +1 -1
  30. package/bin/{chunk-wzt86v8e.js.map → chunk-7dawkz9f.js.map} +1 -1
  31. package/bin/{chunk-j49r3r0h.js.map → chunk-7sbdkr3p.js.map} +1 -1
  32. package/bin/{chunk-rcbp13zr.js.map → chunk-7trxbwky.js.map} +1 -1
  33. package/bin/{chunk-vht6r6mg.js.map → chunk-7ttdyjym.js.map} +1 -1
  34. package/bin/{chunk-cq3s2bc3.js.map → chunk-7we8fer2.js.map} +2 -2
  35. package/bin/{chunk-0fd7e98q.js.map → chunk-80y0nhj5.js.map} +1 -1
  36. package/bin/{chunk-tx4d8n2c.js.map → chunk-86ey16ga.js.map} +1 -1
  37. package/bin/{chunk-ymbn2qrb.js.map → chunk-8hca861v.js.map} +1 -1
  38. package/bin/{chunk-sy53xwps.js.map → chunk-8p4fw9fs.js.map} +1 -1
  39. package/bin/chunk-8xynca5d.js.map +9 -0
  40. package/bin/{chunk-z6004x1f.js.map → chunk-93nep7kv.js.map} +1 -1
  41. package/bin/{chunk-1xcexrst.js.map → chunk-980aeczs.js.map} +2 -2
  42. package/bin/chunk-98cfxgcf.js.map +9 -0
  43. package/bin/{chunk-hhes0fb4.js.map → chunk-9fx74p59.js.map} +1 -1
  44. package/bin/{chunk-5vshf5d9.js.map → chunk-9gjqyzv9.js.map} +1 -1
  45. package/bin/{chunk-mb38k8t0.js.map → chunk-9ytt0sw5.js.map} +1 -1
  46. package/bin/{chunk-q8d3f8vv.js.map → chunk-a9y62fd0.js.map} +1 -1
  47. package/bin/chunk-ad029h3p.js.map +9 -0
  48. package/bin/{chunk-ppjn2gwr.js.map → chunk-agegs70a.js.map} +1 -1
  49. package/bin/{chunk-y1y94hd9.js.map → chunk-aq9vzzfd.js.map} +1 -1
  50. package/bin/{chunk-8g9cx71s.js.map → chunk-aqs1bcwb.js.map} +1 -1
  51. package/bin/{chunk-vqn23nvj.js.map → chunk-b0r7h3v7.js.map} +1 -1
  52. package/bin/{chunk-bvgxtvy5.js.map → chunk-b1pvskh2.js.map} +1 -1
  53. package/bin/{chunk-78g08k7w.js.map → chunk-b2yj6htx.js.map} +1 -1
  54. package/bin/{chunk-3n2hpq8t.js.map → chunk-bg6bs48j.js.map} +1 -1
  55. package/bin/{chunk-4kkfbnqc.js.map → chunk-bkzz4gmj.js.map} +2 -2
  56. package/bin/{chunk-59ag69w3.js.map → chunk-bwcw4v9v.js.map} +1 -1
  57. package/bin/{chunk-qsj8gt5c.js.map → chunk-cc2rmfa1.js.map} +1 -1
  58. package/bin/{chunk-6m6559kj.js.map → chunk-cmkpmz1t.js.map} +1 -1
  59. package/bin/{chunk-bt4a2b38.js.map → chunk-ddj7jhhs.js.map} +2 -2
  60. package/bin/{chunk-kbksyj8q.js.map → chunk-dm5bqjyj.js.map} +1 -1
  61. package/bin/{chunk-9y4bxd9z.js.map → chunk-dqfpb4xf.js.map} +1 -1
  62. package/bin/{chunk-61ex0ysa.js.map → chunk-dwt61cf9.js.map} +1 -1
  63. package/bin/{chunk-aqr51qaz.js.map → chunk-e9802ppg.js.map} +1 -1
  64. package/bin/{chunk-m31nxbnx.js.map → chunk-eajygmt3.js.map} +1 -1
  65. package/bin/{chunk-n5f9tqke.js.map → chunk-egxn625f.js.map} +1 -1
  66. package/bin/{chunk-1qafz13b.js.map → chunk-er0jf84x.js.map} +1 -1
  67. package/bin/chunk-et47enz9.js.map +9 -0
  68. package/bin/{chunk-8m4e6jm9.js.map → chunk-eyyhecap.js.map} +1 -1
  69. package/bin/{chunk-jwpekcgc.js.map → chunk-f3134cq8.js.map} +1 -1
  70. package/bin/{chunk-3s93j8bp.js.map → chunk-fcrwp5aw.js.map} +1 -1
  71. package/bin/{chunk-hcrstn1a.js.map → chunk-fczsbfxn.js.map} +1 -1
  72. package/bin/{chunk-087s56gx.js.map → chunk-fhmz5jzq.js.map} +2 -2
  73. package/bin/{chunk-jen69edq.js.map → chunk-g7js2td3.js.map} +2 -2
  74. package/bin/{chunk-3n6fe6h1.js.map → chunk-grzxag2s.js.map} +1 -1
  75. package/bin/{chunk-vn7d3q1a.js.map → chunk-hbnsd8zc.js.map} +1 -1
  76. package/bin/{chunk-mjtn9njj.js.map → chunk-hdx1bfpk.js.map} +1 -1
  77. package/bin/{chunk-d2d2qyc8.js.map → chunk-hg7b8aq0.js.map} +1 -1
  78. package/bin/chunk-jd0wj7bc.js.map +10 -0
  79. package/bin/{chunk-24ytprtt.js.map → chunk-jngpmhcr.js.map} +1 -1
  80. package/bin/{chunk-aspg97y0.js.map → chunk-js3nmfy2.js.map} +1 -1
  81. package/bin/{chunk-sfvtysgk.js.map → chunk-kghggch5.js.map} +1 -1
  82. package/bin/{chunk-1v1eg9ea.js.map → chunk-kq6f5vzs.js.map} +1 -1
  83. package/bin/{chunk-778262wk.js.map → chunk-ktxh41y6.js.map} +1 -1
  84. package/bin/{chunk-v4k8v6ad.js.map → chunk-m2g8e58p.js.map} +1 -1
  85. package/bin/{chunk-wsc1m3ya.js.map → chunk-mdswrx0q.js.map} +1 -1
  86. package/bin/chunk-ndm1rc9r.js.map +9 -0
  87. package/bin/{chunk-r4xfgh1d.js.map → chunk-ng9550j6.js.map} +1 -1
  88. package/bin/{chunk-tjaapjgk.js.map → chunk-njtgwkja.js.map} +1 -1
  89. package/bin/{chunk-5czy6c2t.js.map → chunk-nrh3s9kj.js.map} +1 -1
  90. package/bin/{chunk-cxavw1f9.js.map → chunk-pbfxr9hz.js.map} +1 -1
  91. package/bin/{chunk-1m5frevr.js.map → chunk-pw5jrvsz.js.map} +1 -1
  92. package/bin/{chunk-0twas8m4.js.map → chunk-pwb5qv89.js.map} +1 -1
  93. package/bin/{chunk-0fxqxahr.js.map → chunk-q4nry60b.js.map} +1 -1
  94. package/bin/{chunk-4q3zgnq0.js.map → chunk-q95nk89x.js.map} +1 -1
  95. package/bin/{chunk-9t3ktng1.js.map → chunk-qb31328t.js.map} +1 -1
  96. package/bin/{chunk-addegf2c.js.map → chunk-qq9amzwy.js.map} +1 -1
  97. package/bin/{chunk-pvt3zcpb.js.map → chunk-qwj18b0z.js.map} +1 -1
  98. package/bin/{chunk-xnyqakct.js.map → chunk-rdm3kdj5.js.map} +2 -2
  99. package/bin/{chunk-6c8zad0q.js.map → chunk-rrwzn8rb.js.map} +1 -1
  100. package/bin/{chunk-07t8c27r.js.map → chunk-rvgtcdyj.js.map} +22 -18
  101. package/bin/{chunk-f1dc53f5.js.map → chunk-rwny8wxq.js.map} +1 -1
  102. package/bin/{chunk-7p88mnrp.js.map → chunk-s6g5ddx9.js.map} +1 -1
  103. package/bin/{chunk-58crwv73.js.map → chunk-skmzxmeg.js.map} +1 -1
  104. package/bin/{chunk-3h1gycas.js.map → chunk-smrk9e8s.js.map} +5 -4
  105. package/bin/{chunk-9av9p5be.js.map → chunk-spxphc8w.js.map} +1 -1
  106. package/bin/{chunk-pzcbqccc.js.map → chunk-swe4xwjw.js.map} +1 -1
  107. package/bin/{chunk-yj84ce63.js.map → chunk-t92mwyn8.js.map} +1 -1
  108. package/bin/{chunk-k12sqt5c.js.map → chunk-t994hgps.js.map} +1 -1
  109. package/bin/{chunk-z9nnfhja.js.map → chunk-tc8qmjh2.js.map} +1 -1
  110. package/bin/{chunk-m5rn1t9e.js.map → chunk-tdbzvbw1.js.map} +1 -1
  111. package/bin/{chunk-d6q844vr.js.map → chunk-tynrv6ej.js.map} +2 -2
  112. package/bin/{chunk-g2hzewm5.js.map → chunk-v2x99gvq.js.map} +2 -2
  113. package/bin/{chunk-1ks336sp.js.map → chunk-vk4g295y.js.map} +1 -1
  114. package/bin/{chunk-v6m6x911.js.map → chunk-vtkxz24g.js.map} +1 -1
  115. package/bin/chunk-vxqtbnnp.js.map +9 -0
  116. package/bin/chunk-vzay7hnb.js.map +9 -0
  117. package/bin/{chunk-m6jr02jt.js.map → chunk-w0j45wn7.js.map} +1 -1
  118. package/bin/{chunk-q2z8hcc9.js.map → chunk-wgqmktrv.js.map} +1 -1
  119. package/bin/{chunk-p9fsk8xk.js.map → chunk-wkjpmvj8.js.map} +1 -1
  120. package/bin/{chunk-047brskp.js.map → chunk-x2f3bprg.js.map} +1 -1
  121. package/bin/{chunk-d7en3gra.js.map → chunk-xp90638w.js.map} +1 -1
  122. package/bin/{chunk-1zdchkt5.js.map → chunk-y5r0p4x1.js.map} +2 -2
  123. package/bin/chunk-y77ez1ej.js.map +9 -0
  124. package/bin/{chunk-77cxfwjv.js.map → chunk-y9pjf57f.js.map} +1 -1
  125. package/bin/{chunk-6bm18v4w.js.map → chunk-ybv69n13.js.map} +1 -1
  126. package/bin/{chunk-x0j6zt83.js.map → chunk-yjnxmdx5.js.map} +1 -1
  127. package/bin/chunk-yqn407a0.js.map +9 -0
  128. package/bin/{chunk-tb0f4dfz.js.map → chunk-yzh9qfef.js.map} +1 -1
  129. package/bin/index.js.map +1 -1
  130. package/bin/lildax.exe +0 -0
  131. package/package.json +1 -1
  132. package/bin/chunk-h6jav6rr.js.map +0 -9
  133. package/bin/chunk-h77hc9q0.js.map +0 -9
  134. package/bin/chunk-j96y437a.js.map +0 -9
  135. package/bin/chunk-jscajwnx.js.map +0 -9
  136. package/bin/chunk-n4bc2p29.js.map +0 -9
  137. package/bin/chunk-ny339t5n.js.map +0 -9
  138. package/bin/chunk-ph8xj7gz.js.map +0 -9
  139. package/bin/chunk-qt4k35pb.js.map +0 -9
  140. package/bin/chunk-rg3jde5f.js.map +0 -9
  141. package/bin/chunk-z24btbc0.js.map +0 -9
  142. /package/bin/{chunk-c8jy587n.js.map → chunk-5cyqcfga.js.map} +0 -0
  143. /package/bin/{chunk-nyhw1wge.js.map → chunk-he4ra84x.js.map} +0 -0
  144. /package/bin/{chunk-fr19nwzq.js.map → chunk-m0gxctaj.js.map} +0 -0
  145. /package/bin/{chunk-mxmh510w.js.map → chunk-rvya8phr.js.map} +0 -0
  146. /package/bin/{chunk-z8txj8wr.js.map → chunk-v7w3zb97.js.map} +0 -0
  147. /package/bin/{chunk-ar99dprb.js.map → chunk-wcgtbzx3.js.map} +0 -0
  148. /package/bin/{chunk-a0wmwbtm.js.map → chunk-zc8g703n.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": "1DE90D896A62E63164756E2164756E21",
8
+ "debugId": "148E3CC8A77E92DF64756E2164756E21",
9
9
  "names": []
10
10
  }