@opencode-ai/cli-darwin-arm64 0.0.0-beta-202606050000

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 (137) hide show
  1. package/bin/chunk-01tb5qes.js.map +131 -0
  2. package/bin/chunk-06d8aa69.js.map +10 -0
  3. package/bin/chunk-07w2xsfy.js.map +50 -0
  4. package/bin/chunk-0azwkk9z.js.map +12 -0
  5. package/bin/chunk-0d9ja06r.js.map +9 -0
  6. package/bin/chunk-0qebdpsf.js.map +167 -0
  7. package/bin/chunk-17j53wgt.js.map +11 -0
  8. package/bin/chunk-1jb1dn9p.js.map +10 -0
  9. package/bin/chunk-1paeax4j.js.map +56 -0
  10. package/bin/chunk-1wb39pye.js.map +9 -0
  11. package/bin/chunk-2wqpg9fb.js.map +10 -0
  12. package/bin/chunk-32ewzcjk.js.map +10 -0
  13. package/bin/chunk-3jqjf0hd.js.map +10 -0
  14. package/bin/chunk-3n6vddyq.js.map +73 -0
  15. package/bin/chunk-3r74gwy2.js.map +13 -0
  16. package/bin/chunk-3zmvhepw.js.map +10 -0
  17. package/bin/chunk-4980h0t7.js.map +37 -0
  18. package/bin/chunk-4de8gawx.js.map +10 -0
  19. package/bin/chunk-4q5k6a0e.js.map +10 -0
  20. package/bin/chunk-6ttpn29p.js.map +10 -0
  21. package/bin/chunk-7fvpf4bs.js.map +10 -0
  22. package/bin/chunk-7vb6kdat.js.map +10 -0
  23. package/bin/chunk-84amh6xf.js.map +11 -0
  24. package/bin/chunk-8akfq1ty.js.map +19 -0
  25. package/bin/chunk-8dnkfkds.js.map +10 -0
  26. package/bin/chunk-8rd9r1gb.js.map +11 -0
  27. package/bin/chunk-8x80qvzn.js.map +10 -0
  28. package/bin/chunk-943th5qs.js.map +10 -0
  29. package/bin/chunk-94yf089p.js.map +10 -0
  30. package/bin/chunk-98cxndhz.js.map +9 -0
  31. package/bin/chunk-9f8tmby0.js.map +9 -0
  32. package/bin/chunk-9fbstsnw.js.map +9 -0
  33. package/bin/chunk-9hq8aywf.js.map +10 -0
  34. package/bin/chunk-9vf55fj3.js.map +10 -0
  35. package/bin/chunk-9w9rk9en.js.map +20 -0
  36. package/bin/chunk-9y4hgfns.js.map +10 -0
  37. package/bin/chunk-aag5p1fp.js.map +10 -0
  38. package/bin/chunk-bt0r89ee.js.map +9 -0
  39. package/bin/chunk-c2gsyspz.js.map +10 -0
  40. package/bin/chunk-c8hr0q5n.js.map +10 -0
  41. package/bin/chunk-cab6ccj0.js.map +10 -0
  42. package/bin/chunk-ck4nkjtx.js.map +193 -0
  43. package/bin/chunk-cvm4kr56.js.map +23 -0
  44. package/bin/chunk-cyb9bpgm.js.map +10 -0
  45. package/bin/chunk-d1p8awq6.js.map +10 -0
  46. package/bin/chunk-d6nz1m6v.js.map +10 -0
  47. package/bin/chunk-d7v38w4j.js.map +27 -0
  48. package/bin/chunk-d9g5798m.js.map +81 -0
  49. package/bin/chunk-dcn0azxw.js.map +10 -0
  50. package/bin/chunk-dk4qekzk.js.map +10 -0
  51. package/bin/chunk-dk9tgwkh.js.map +9 -0
  52. package/bin/chunk-dzzhxh1c.js.map +10 -0
  53. package/bin/chunk-efsmps94.js.map +9 -0
  54. package/bin/chunk-fdw7znt6.js.map +11 -0
  55. package/bin/chunk-fs6t8jdg.js.map +10 -0
  56. package/bin/chunk-fzcqzwx5.js.map +10 -0
  57. package/bin/chunk-g4fcmhkj.js.map +11 -0
  58. package/bin/chunk-g4ff66n8.js.map +10 -0
  59. package/bin/chunk-g8mpn6ke.js.map +11 -0
  60. package/bin/chunk-gahs293a.js.map +10 -0
  61. package/bin/chunk-gh9dcqbv.js.map +10 -0
  62. package/bin/chunk-gv6nagng.js.map +10 -0
  63. package/bin/chunk-gyavdmtb.js.map +10 -0
  64. package/bin/chunk-h413ry19.js.map +10 -0
  65. package/bin/chunk-hav16yge.js.map +10 -0
  66. package/bin/chunk-hp5nnq6f.js.map +11 -0
  67. package/bin/chunk-hrcbafh3.js.map +9 -0
  68. package/bin/chunk-hxfsfpek.js.map +10 -0
  69. package/bin/chunk-jcqp2wmf.js.map +10 -0
  70. package/bin/chunk-jt9t8203.js.map +9 -0
  71. package/bin/chunk-k0980eb5.js.map +10 -0
  72. package/bin/chunk-kghptcgb.js.map +9 -0
  73. package/bin/chunk-kjyd3xxc.js.map +113 -0
  74. package/bin/chunk-kkcy6sfm.js.map +577 -0
  75. package/bin/chunk-kkvk5eez.js.map +10 -0
  76. package/bin/chunk-kv0b3sh5.js.map +10 -0
  77. package/bin/chunk-m9md5mth.js.map +10 -0
  78. package/bin/chunk-mf0qqhvb.js.map +10 -0
  79. package/bin/chunk-mfr0xsxw.js.map +9 -0
  80. package/bin/chunk-mkze6twx.js.map +10 -0
  81. package/bin/chunk-mzjs3qj3.js.map +10 -0
  82. package/bin/chunk-n10mj2m3.js.map +17 -0
  83. package/bin/chunk-n2fbt143.js.map +9 -0
  84. package/bin/chunk-n6a0rctn.js.map +9 -0
  85. package/bin/chunk-njn9a3jp.js.map +13 -0
  86. package/bin/chunk-nkhzpsnk.js.map +13 -0
  87. package/bin/chunk-ny5cyeha.js.map +10 -0
  88. package/bin/chunk-p3nkd9t2.js.map +10 -0
  89. package/bin/chunk-p3pr1t3k.js.map +10 -0
  90. package/bin/chunk-p7j7e7hb.js.map +10 -0
  91. package/bin/chunk-p89bk96c.js.map +10 -0
  92. package/bin/chunk-pjbsd0sw.js.map +10 -0
  93. package/bin/chunk-pnkd37ss.js.map +20 -0
  94. package/bin/chunk-q6nf6fka.js.map +10 -0
  95. package/bin/chunk-qbpebjh2.js.map +10 -0
  96. package/bin/chunk-qgpzv4wt.js.map +15 -0
  97. package/bin/chunk-qq4f9z8v.js.map +10 -0
  98. package/bin/chunk-r55kafff.js.map +9 -0
  99. package/bin/chunk-rrwp4x01.js.map +10 -0
  100. package/bin/chunk-rt02k446.js.map +11 -0
  101. package/bin/chunk-s39nwv01.js.map +9 -0
  102. package/bin/chunk-s983v0dp.js.map +10 -0
  103. package/bin/chunk-san15sca.js.map +10 -0
  104. package/bin/chunk-sfk73pp2.js.map +10 -0
  105. package/bin/chunk-sjd3wbjd.js.map +10 -0
  106. package/bin/chunk-sv47gsr1.js.map +388 -0
  107. package/bin/chunk-swbdmja3.js.map +10 -0
  108. package/bin/chunk-tc8tvjey.js.map +33 -0
  109. package/bin/chunk-tcqtz83b.js.map +10 -0
  110. package/bin/chunk-tgxxchfy.js.map +28 -0
  111. package/bin/chunk-tvxakxv2.js.map +10 -0
  112. package/bin/chunk-va2h4xya.js.map +37 -0
  113. package/bin/chunk-vezq3hc4.js.map +9 -0
  114. package/bin/chunk-vmbpvmpg.js.map +10 -0
  115. package/bin/chunk-vs30er58.js.map +10 -0
  116. package/bin/chunk-w7p62pb6.js.map +17 -0
  117. package/bin/chunk-wr4x72qd.js.map +13 -0
  118. package/bin/chunk-x3ywttp7.js.map +10 -0
  119. package/bin/chunk-x988wmrk.js.map +10 -0
  120. package/bin/chunk-x9zjg1f7.js.map +20 -0
  121. package/bin/chunk-xaqrhtz6.js.map +10 -0
  122. package/bin/chunk-xd2mrkwy.js.map +10 -0
  123. package/bin/chunk-xfh2377b.js.map +10 -0
  124. package/bin/chunk-xs0ras4j.js.map +51 -0
  125. package/bin/chunk-xt7ap9fb.js.map +10 -0
  126. package/bin/chunk-xvkccqdg.js.map +13 -0
  127. package/bin/chunk-xya5qk3h.js.map +16 -0
  128. package/bin/chunk-yg7w4jgd.js.map +10 -0
  129. package/bin/chunk-yhpv46tb.js.map +20 -0
  130. package/bin/chunk-ymy66kr8.js.map +15 -0
  131. package/bin/chunk-yx4z6xsb.js.map +11 -0
  132. package/bin/chunk-yymwxqpy.js.map +10 -0
  133. package/bin/chunk-z70c75xe.js.map +11 -0
  134. package/bin/chunk-zkqyr3hc.js.map +10 -0
  135. package/bin/index.js.map +12 -0
  136. package/bin/lildax +0 -0
  137. package/package.json +15 -0
@@ -0,0 +1,11 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../node_modules/.bun/@ai-sdk+openai@3.0.67+d6123d32214422cb/node_modules/@ai-sdk/openai/dist/internal/index.mjs", "../../node_modules/.bun/@ai-sdk+amazon-bedrock@4.0.112+d6123d32214422cb/node_modules/@ai-sdk/amazon-bedrock/dist/mantle/index.mjs"],
4
+ "sourcesContent": [
5
+ "// 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\") || modelId.startsWith(\"gpt-5.5\");\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: toolCalls.length > 0 ? text || null : 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 {\n lazySchema,\n zodSchema\n} 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 {\n lazySchema as lazySchema2,\n zodSchema as zodSchema2\n} 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 openaiTools = [];\n for (const tool of tools) {\n switch (tool.type) {\n case \"function\":\n openaiTools.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: openaiTools, 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: openaiTools, toolChoice: type, toolWarnings };\n case \"tool\":\n return {\n tools: openaiTools,\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: openaiTools,\n toolChoice: openaiToolChoice,\n toolWarnings\n } = prepareChatTools({\n tools,\n toolChoice\n });\n return {\n args: {\n ...baseArgs,\n tools: openaiTools,\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 {\n lazySchema as lazySchema3,\n zodSchema as zodSchema3\n} 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 {\n lazySchema as lazySchema4,\n zodSchema as zodSchema4\n} 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 {\n lazySchema as lazySchema5,\n zodSchema as zodSchema5\n} 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 parseProviderOptions as parseProviderOptions4,\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-model-options.ts\nimport {\n lazySchema as lazySchema8,\n zodSchema as zodSchema8\n} from \"@ai-sdk/provider-utils\";\nimport { z as z9 } from \"zod/v4\";\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 \"gpt-image-2\": 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 \"gpt-image-2\"\n];\nfunction hasDefaultResponseFormat(modelId) {\n return defaultResponseFormatPrefixes.some(\n (prefix) => modelId.startsWith(prefix)\n );\n}\nvar baseImageModelOptionsObject = z9.object({\n /**\n * Quality of the generated image(s).\n *\n * Valid values: `standard`, `hd`, `low`, `medium`, `high`, `auto`.\n */\n quality: z9.enum([\"standard\", \"hd\", \"low\", \"medium\", \"high\", \"auto\"]).optional(),\n /**\n * Background behavior for the generated image(s).\n *\n * If `transparent`, the output format must support transparency\n * (i.e. `png` or `webp`).\n */\n background: z9.enum([\"transparent\", \"opaque\", \"auto\"]).optional(),\n /**\n * Format in which the generated image(s) are returned.\n */\n outputFormat: z9.enum([\"png\", \"jpeg\", \"webp\"]).optional(),\n /**\n * Compression level (0-100) for the generated image(s). Applies to the\n * `jpeg` and `webp` output formats.\n */\n outputCompression: z9.number().int().min(0).max(100).optional(),\n /**\n * A unique identifier representing your end-user, which can help OpenAI\n * to monitor and detect abuse.\n */\n user: z9.string().optional()\n});\nvar openaiImageModelOptions = lazySchema8(\n () => zodSchema8(baseImageModelOptionsObject)\n);\nvar openaiImageModelGenerationOptions = lazySchema8(\n () => zodSchema8(\n baseImageModelOptionsObject.extend({\n /**\n * Style of the generated image. `vivid` produces hyper-real and\n * dramatic images; `natural` produces more subdued, less hyper-real\n * looking images.\n */\n style: z9.enum([\"vivid\", \"natural\"]).optional(),\n /**\n * Content moderation level for the generated image(s). `low` applies\n * less restrictive filtering.\n */\n moderation: z9.enum([\"auto\", \"low\"]).optional()\n })\n )\n);\nvar openaiImageModelEditOptions = lazySchema8(\n () => zodSchema8(\n baseImageModelOptionsObject.extend({\n /**\n * Fidelity of the output image(s) to the input image(s).\n */\n inputFidelity: z9.enum([\"high\", \"low\"]).optional()\n })\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 openaiOptions2 = (_d = await parseProviderOptions4({\n provider: \"openai\",\n providerOptions,\n schema: openaiImageModelEditOptions\n })) != null ? _d : {};\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 quality: openaiOptions2.quality,\n background: openaiOptions2.background,\n output_format: openaiOptions2.outputFormat,\n output_compression: openaiOptions2.outputCompression,\n input_fidelity: openaiOptions2.inputFidelity,\n user: openaiOptions2.user\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 openaiOptions = (_h = await parseProviderOptions4({\n provider: \"openai\",\n providerOptions,\n schema: openaiImageModelGenerationOptions\n })) != null ? _h : {};\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 quality: openaiOptions.quality,\n style: openaiOptions.style,\n background: openaiOptions.background,\n moderation: openaiOptions.moderation,\n output_format: openaiOptions.outputFormat,\n output_compression: openaiOptions.outputCompression,\n user: openaiOptions.user,\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/transcription/openai-transcription-model.ts\nimport {\n combineHeaders as combineHeaders5,\n convertBase64ToUint8Array as convertBase64ToUint8Array2,\n createJsonResponseHandler as createJsonResponseHandler5,\n mediaTypeToExtension,\n parseProviderOptions as parseProviderOptions5,\n postFormDataToApi as postFormDataToApi2\n} from \"@ai-sdk/provider-utils\";\n\n// src/transcription/openai-transcription-api.ts\nimport { lazySchema as lazySchema9, zodSchema as zodSchema9 } from \"@ai-sdk/provider-utils\";\nimport { z as z10 } from \"zod/v4\";\nvar openaiTranscriptionResponseSchema = lazySchema9(\n () => zodSchema9(\n z10.object({\n text: z10.string(),\n language: z10.string().nullish(),\n duration: z10.number().nullish(),\n words: z10.array(\n z10.object({\n word: z10.string(),\n start: z10.number(),\n end: z10.number()\n })\n ).nullish(),\n segments: z10.array(\n z10.object({\n id: z10.number(),\n seek: z10.number(),\n start: z10.number(),\n end: z10.number(),\n text: z10.string(),\n tokens: z10.array(z10.number()),\n temperature: z10.number(),\n avg_logprob: z10.number(),\n compression_ratio: z10.number(),\n no_speech_prob: z10.number()\n })\n ).nullish()\n })\n )\n);\n\n// src/transcription/openai-transcription-options.ts\nimport {\n lazySchema as lazySchema10,\n zodSchema as zodSchema10\n} from \"@ai-sdk/provider-utils\";\nimport { z as z11 } from \"zod/v4\";\nvar openAITranscriptionModelOptions = lazySchema10(\n () => zodSchema10(\n z11.object({\n /**\n * Additional information to include in the transcription response.\n */\n include: z11.array(z11.string()).optional(),\n /**\n * The language of the input audio in ISO-639-1 format.\n */\n language: z11.string().optional(),\n /**\n * An optional text to guide the model's style or continue a previous audio segment.\n */\n prompt: z11.string().optional(),\n /**\n * The sampling temperature, between 0 and 1.\n * @default 0\n */\n temperature: z11.number().min(0).max(1).default(0).optional(),\n /**\n * The timestamp granularities to populate for this transcription.\n * @default ['segment']\n */\n timestampGranularities: z11.array(z11.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 parseProviderOptions5({\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: combineHeaders5(this.config.headers(), options.headers),\n formData,\n failedResponseHandler: openaiFailedResponseHandler,\n successfulResponseHandler: createJsonResponseHandler5(\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/speech/openai-speech-model.ts\nimport {\n combineHeaders as combineHeaders6,\n createBinaryResponseHandler,\n parseProviderOptions as parseProviderOptions6,\n postJsonToApi as postJsonToApi5\n} from \"@ai-sdk/provider-utils\";\n\n// src/speech/openai-speech-options.ts\nimport {\n lazySchema as lazySchema11,\n zodSchema as zodSchema11\n} from \"@ai-sdk/provider-utils\";\nimport { z as z12 } from \"zod/v4\";\nvar openaiSpeechModelOptionsSchema = lazySchema11(\n () => zodSchema11(\n z12.object({\n instructions: z12.string().nullish(),\n speed: z12.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 postJsonToApi5({\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/responses/openai-responses-language-model.ts\nimport {\n APICallError\n} from \"@ai-sdk/provider\";\nimport {\n combineHeaders as combineHeaders7,\n createEventSourceResponseHandler as createEventSourceResponseHandler3,\n createJsonResponseHandler as createJsonResponseHandler6,\n createToolNameMapping,\n generateId as generateId2,\n parseProviderOptions as parseProviderOptions8,\n postJsonToApi as postJsonToApi6\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 parseProviderOptions7,\n validateTypes\n} from \"@ai-sdk/provider-utils\";\nimport { z as z17 } from \"zod/v4\";\n\n// src/tool/apply-patch.ts\nimport {\n createProviderToolFactoryWithOutputSchema,\n lazySchema as lazySchema12,\n zodSchema as zodSchema12\n} from \"@ai-sdk/provider-utils\";\nimport { z as z13 } from \"zod/v4\";\nvar applyPatchInputSchema = lazySchema12(\n () => zodSchema12(\n z13.object({\n callId: z13.string(),\n operation: z13.discriminatedUnion(\"type\", [\n z13.object({\n type: z13.literal(\"create_file\"),\n path: z13.string(),\n diff: z13.string()\n }),\n z13.object({\n type: z13.literal(\"delete_file\"),\n path: z13.string()\n }),\n z13.object({\n type: z13.literal(\"update_file\"),\n path: z13.string(),\n diff: z13.string()\n })\n ])\n })\n )\n);\nvar applyPatchOutputSchema = lazySchema12(\n () => zodSchema12(\n z13.object({\n status: z13.enum([\"completed\", \"failed\"]),\n output: z13.string().optional()\n })\n )\n);\nvar applyPatchArgsSchema = lazySchema12(() => zodSchema12(z13.object({})));\nvar applyPatchToolFactory = createProviderToolFactoryWithOutputSchema({\n id: \"openai.apply_patch\",\n inputSchema: applyPatchInputSchema,\n outputSchema: applyPatchOutputSchema\n});\nvar applyPatch = applyPatchToolFactory;\n\n// src/tool/local-shell.ts\nimport {\n createProviderToolFactoryWithOutputSchema as createProviderToolFactoryWithOutputSchema2,\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 = createProviderToolFactoryWithOutputSchema2({\n id: \"openai.local_shell\",\n inputSchema: localShellInputSchema,\n outputSchema: localShellOutputSchema\n});\n\n// src/tool/shell.ts\nimport {\n createProviderToolFactoryWithOutputSchema as createProviderToolFactoryWithOutputSchema3,\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 = createProviderToolFactoryWithOutputSchema3({\n id: \"openai.shell\",\n inputSchema: shellInputSchema,\n outputSchema: shellOutputSchema\n});\n\n// src/tool/tool-search.ts\nimport {\n createProviderToolFactoryWithOutputSchema as createProviderToolFactoryWithOutputSchema4,\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 = createProviderToolFactoryWithOutputSchema4({\n id: \"openai.tool_search\",\n inputSchema: toolSearchInputSchema,\n outputSchema: toolSearchOutputSchema\n});\n\n// src/responses/convert-to-openai-responses-input.ts\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 passThroughUnsupportedFiles = false,\n store,\n hasConversation = false,\n hasPreviousResponseId = 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 const mediaType = part.mediaType === \"image/*\" ? \"image/jpeg\" : part.mediaType;\n if (mediaType.startsWith(\"image/\")) {\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 }\n if (part.data instanceof URL) {\n return {\n type: \"input_file\",\n file_url: part.data.toString()\n };\n }\n if (mediaType !== \"application/pdf\" && !passThroughUnsupportedFiles) {\n throw new UnsupportedFunctionalityError4({\n functionality: `file part media type ${mediaType}`\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 : mediaType === \"application/pdf\" ? `part-${index}.pdf` : `part-${index}`,\n file_data: `data:${mediaType};base64,${convertToBase642(part.data)}`\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 if (hasPreviousResponseId) {\n break;\n }\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 parseProviderOptions7({\n provider: providerOptionsName,\n providerOptions: part.providerOptions,\n schema: openaiResponsesReasoningProviderOptionsSchema\n });\n const reasoningId = providerOptions == null ? void 0 : providerOptions.itemId;\n if ((hasConversation || hasPreviousResponseId) && 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, _b2, _c2, _d2, _e2;\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 detail: (_b2 = (_a2 = item.providerOptions) == null ? void 0 : _a2[providerOptionsName]) == null ? void 0 : _b2.imageDetail\n };\n case \"image-url\":\n return {\n type: \"input_image\",\n image_url: item.url,\n detail: (_d2 = (_c2 = item.providerOptions) == null ? void 0 : _c2[providerOptionsName]) == null ? void 0 : _d2.imageDetail\n };\n case \"file-data\":\n return {\n type: \"input_file\",\n filename: (_e2 = item.filename) != null ? _e2 : \"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, _b2, _c2, _d2, _e2;\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 detail: (_b2 = (_a2 = item.providerOptions) == null ? void 0 : _a2[providerOptionsName]) == null ? void 0 : _b2.imageDetail\n };\n }\n case \"image-url\": {\n return {\n type: \"input_image\",\n image_url: item.url,\n detail: (_d2 = (_c2 = item.providerOptions) == null ? void 0 : _c2[providerOptionsName]) == null ? void 0 : _d2.imageDetail\n };\n }\n case \"file-data\": {\n return {\n type: \"input_file\",\n filename: (_e2 = item.filename) != null ? _e2 : \"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 = z17.object({\n itemId: z17.string().nullish(),\n reasoningEncryptedContent: z17.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 {\n lazySchema as lazySchema16,\n zodSchema as zodSchema16\n} from \"@ai-sdk/provider-utils\";\nimport { z as z18 } from \"zod/v4\";\nvar jsonValueSchema = z18.lazy(\n () => z18.union([\n z18.string(),\n z18.number(),\n z18.boolean(),\n z18.null(),\n z18.array(jsonValueSchema),\n z18.record(z18.string(), jsonValueSchema.optional())\n ])\n);\nvar openaiResponsesChunkSchema = lazySchema16(\n () => zodSchema16(\n z18.union([\n z18.object({\n type: z18.literal(\"response.output_text.delta\"),\n item_id: z18.string(),\n delta: z18.string(),\n logprobs: z18.array(\n z18.object({\n token: z18.string(),\n logprob: z18.number(),\n top_logprobs: z18.array(\n z18.object({\n token: z18.string(),\n logprob: z18.number()\n })\n )\n })\n ).nullish()\n }),\n z18.object({\n type: z18.enum([\"response.completed\", \"response.incomplete\"]),\n response: z18.object({\n incomplete_details: z18.object({ reason: z18.string() }).nullish(),\n usage: z18.object({\n input_tokens: z18.number(),\n input_tokens_details: z18.object({ cached_tokens: z18.number().nullish() }).nullish(),\n output_tokens: z18.number(),\n output_tokens_details: z18.object({ reasoning_tokens: z18.number().nullish() }).nullish()\n }),\n service_tier: z18.string().nullish()\n })\n }),\n z18.object({\n type: z18.literal(\"response.failed\"),\n response: z18.object({\n error: z18.object({\n code: z18.string().nullish(),\n message: z18.string()\n }).nullish(),\n incomplete_details: z18.object({ reason: z18.string() }).nullish(),\n usage: z18.object({\n input_tokens: z18.number(),\n input_tokens_details: z18.object({ cached_tokens: z18.number().nullish() }).nullish(),\n output_tokens: z18.number(),\n output_tokens_details: z18.object({ reasoning_tokens: z18.number().nullish() }).nullish()\n }).nullish(),\n service_tier: z18.string().nullish()\n })\n }),\n z18.object({\n type: z18.literal(\"response.created\"),\n response: z18.object({\n id: z18.string(),\n created_at: z18.number(),\n model: z18.string(),\n service_tier: z18.string().nullish()\n })\n }),\n z18.object({\n type: z18.literal(\"response.output_item.added\"),\n output_index: z18.number(),\n item: z18.discriminatedUnion(\"type\", [\n z18.object({\n type: z18.literal(\"message\"),\n id: z18.string(),\n phase: z18.enum([\"commentary\", \"final_answer\"]).nullish()\n }),\n z18.object({\n type: z18.literal(\"reasoning\"),\n id: z18.string(),\n encrypted_content: z18.string().nullish()\n }),\n z18.object({\n type: z18.literal(\"function_call\"),\n id: z18.string(),\n call_id: z18.string(),\n name: z18.string(),\n arguments: z18.string(),\n namespace: z18.string().nullish()\n }),\n z18.object({\n type: z18.literal(\"web_search_call\"),\n id: z18.string(),\n status: z18.string()\n }),\n z18.object({\n type: z18.literal(\"computer_call\"),\n id: z18.string(),\n status: z18.string()\n }),\n z18.object({\n type: z18.literal(\"file_search_call\"),\n id: z18.string()\n }),\n z18.object({\n type: z18.literal(\"image_generation_call\"),\n id: z18.string()\n }),\n z18.object({\n type: z18.literal(\"code_interpreter_call\"),\n id: z18.string(),\n container_id: z18.string(),\n code: z18.string().nullable(),\n outputs: z18.array(\n z18.discriminatedUnion(\"type\", [\n z18.object({ type: z18.literal(\"logs\"), logs: z18.string() }),\n z18.object({ type: z18.literal(\"image\"), url: z18.string() })\n ])\n ).nullable(),\n status: z18.string()\n }),\n z18.object({\n type: z18.literal(\"mcp_call\"),\n id: z18.string(),\n status: z18.string(),\n approval_request_id: z18.string().nullish()\n }),\n z18.object({\n type: z18.literal(\"mcp_list_tools\"),\n id: z18.string()\n }),\n z18.object({\n type: z18.literal(\"mcp_approval_request\"),\n id: z18.string()\n }),\n z18.object({\n type: z18.literal(\"apply_patch_call\"),\n id: z18.string(),\n call_id: z18.string(),\n status: z18.enum([\"in_progress\", \"completed\"]),\n operation: z18.discriminatedUnion(\"type\", [\n z18.object({\n type: z18.literal(\"create_file\"),\n path: z18.string(),\n diff: z18.string()\n }),\n z18.object({\n type: z18.literal(\"delete_file\"),\n path: z18.string()\n }),\n z18.object({\n type: z18.literal(\"update_file\"),\n path: z18.string(),\n diff: z18.string()\n })\n ])\n }),\n z18.object({\n type: z18.literal(\"custom_tool_call\"),\n id: z18.string(),\n call_id: z18.string(),\n name: z18.string(),\n input: z18.string()\n }),\n z18.object({\n type: z18.literal(\"shell_call\"),\n id: z18.string(),\n call_id: z18.string(),\n status: z18.enum([\"in_progress\", \"completed\", \"incomplete\"]),\n action: z18.object({\n commands: z18.array(z18.string())\n })\n }),\n z18.object({\n type: z18.literal(\"shell_call_output\"),\n id: z18.string(),\n call_id: z18.string(),\n status: z18.enum([\"in_progress\", \"completed\", \"incomplete\"]),\n output: z18.array(\n z18.object({\n stdout: z18.string(),\n stderr: z18.string(),\n outcome: z18.discriminatedUnion(\"type\", [\n z18.object({ type: z18.literal(\"timeout\") }),\n z18.object({\n type: z18.literal(\"exit\"),\n exit_code: z18.number()\n })\n ])\n })\n )\n }),\n z18.object({\n type: z18.literal(\"tool_search_call\"),\n id: z18.string(),\n execution: z18.enum([\"server\", \"client\"]),\n call_id: z18.string().nullable(),\n status: z18.enum([\"in_progress\", \"completed\", \"incomplete\"]),\n arguments: z18.unknown()\n }),\n z18.object({\n type: z18.literal(\"tool_search_output\"),\n id: z18.string(),\n execution: z18.enum([\"server\", \"client\"]),\n call_id: z18.string().nullable(),\n status: z18.enum([\"in_progress\", \"completed\", \"incomplete\"]),\n tools: z18.array(z18.record(z18.string(), jsonValueSchema.optional()))\n })\n ])\n }),\n z18.object({\n type: z18.literal(\"response.output_item.done\"),\n output_index: z18.number(),\n item: z18.discriminatedUnion(\"type\", [\n z18.object({\n type: z18.literal(\"message\"),\n id: z18.string(),\n phase: z18.enum([\"commentary\", \"final_answer\"]).nullish()\n }),\n z18.object({\n type: z18.literal(\"reasoning\"),\n id: z18.string(),\n encrypted_content: z18.string().nullish()\n }),\n z18.object({\n type: z18.literal(\"function_call\"),\n id: z18.string(),\n call_id: z18.string(),\n name: z18.string(),\n arguments: z18.string(),\n status: z18.literal(\"completed\"),\n namespace: z18.string().nullish()\n }),\n z18.object({\n type: z18.literal(\"custom_tool_call\"),\n id: z18.string(),\n call_id: z18.string(),\n name: z18.string(),\n input: z18.string(),\n status: z18.literal(\"completed\")\n }),\n z18.object({\n type: z18.literal(\"code_interpreter_call\"),\n id: z18.string(),\n code: z18.string().nullable(),\n container_id: z18.string(),\n outputs: z18.array(\n z18.discriminatedUnion(\"type\", [\n z18.object({ type: z18.literal(\"logs\"), logs: z18.string() }),\n z18.object({ type: z18.literal(\"image\"), url: z18.string() })\n ])\n ).nullable()\n }),\n z18.object({\n type: z18.literal(\"image_generation_call\"),\n id: z18.string(),\n result: z18.string()\n }),\n z18.object({\n type: z18.literal(\"web_search_call\"),\n id: z18.string(),\n status: z18.string(),\n action: z18.discriminatedUnion(\"type\", [\n z18.object({\n type: z18.literal(\"search\"),\n query: z18.string().nullish(),\n queries: z18.array(z18.string()).nullish(),\n sources: z18.array(\n z18.discriminatedUnion(\"type\", [\n z18.object({ type: z18.literal(\"url\"), url: z18.string() }),\n z18.object({ type: z18.literal(\"api\"), name: z18.string() })\n ])\n ).nullish()\n }),\n z18.object({\n type: z18.literal(\"open_page\"),\n url: z18.string().nullish()\n }),\n z18.object({\n type: z18.literal(\"find_in_page\"),\n url: z18.string().nullish(),\n pattern: z18.string().nullish()\n })\n ]).nullish()\n }),\n z18.object({\n type: z18.literal(\"file_search_call\"),\n id: z18.string(),\n queries: z18.array(z18.string()),\n results: z18.array(\n z18.object({\n attributes: z18.record(\n z18.string(),\n z18.union([z18.string(), z18.number(), z18.boolean()])\n ),\n file_id: z18.string(),\n filename: z18.string(),\n score: z18.number(),\n text: z18.string()\n })\n ).nullish()\n }),\n z18.object({\n type: z18.literal(\"local_shell_call\"),\n id: z18.string(),\n call_id: z18.string(),\n action: z18.object({\n type: z18.literal(\"exec\"),\n command: z18.array(z18.string()),\n timeout_ms: z18.number().optional(),\n user: z18.string().optional(),\n working_directory: z18.string().optional(),\n env: z18.record(z18.string(), z18.string()).optional()\n })\n }),\n z18.object({\n type: z18.literal(\"computer_call\"),\n id: z18.string(),\n status: z18.literal(\"completed\")\n }),\n z18.object({\n type: z18.literal(\"mcp_call\"),\n id: z18.string(),\n status: z18.string(),\n arguments: z18.string(),\n name: z18.string(),\n server_label: z18.string(),\n output: z18.string().nullish(),\n error: z18.union([\n z18.string(),\n z18.object({\n type: z18.string().optional(),\n code: z18.union([z18.number(), z18.string()]).optional(),\n message: z18.string().optional()\n }).loose()\n ]).nullish(),\n approval_request_id: z18.string().nullish()\n }),\n z18.object({\n type: z18.literal(\"mcp_list_tools\"),\n id: z18.string(),\n server_label: z18.string(),\n tools: z18.array(\n z18.object({\n name: z18.string(),\n description: z18.string().optional(),\n input_schema: z18.any(),\n annotations: z18.record(z18.string(), z18.unknown()).optional()\n })\n ),\n error: z18.union([\n z18.string(),\n z18.object({\n type: z18.string().optional(),\n code: z18.union([z18.number(), z18.string()]).optional(),\n message: z18.string().optional()\n }).loose()\n ]).optional()\n }),\n z18.object({\n type: z18.literal(\"mcp_approval_request\"),\n id: z18.string(),\n server_label: z18.string(),\n name: z18.string(),\n arguments: z18.string(),\n approval_request_id: z18.string().optional()\n }),\n z18.object({\n type: z18.literal(\"apply_patch_call\"),\n id: z18.string(),\n call_id: z18.string(),\n status: z18.enum([\"in_progress\", \"completed\"]),\n operation: z18.discriminatedUnion(\"type\", [\n z18.object({\n type: z18.literal(\"create_file\"),\n path: z18.string(),\n diff: z18.string()\n }),\n z18.object({\n type: z18.literal(\"delete_file\"),\n path: z18.string()\n }),\n z18.object({\n type: z18.literal(\"update_file\"),\n path: z18.string(),\n diff: z18.string()\n })\n ])\n }),\n z18.object({\n type: z18.literal(\"shell_call\"),\n id: z18.string(),\n call_id: z18.string(),\n status: z18.enum([\"in_progress\", \"completed\", \"incomplete\"]),\n action: z18.object({\n commands: z18.array(z18.string())\n })\n }),\n z18.object({\n type: z18.literal(\"shell_call_output\"),\n id: z18.string(),\n call_id: z18.string(),\n status: z18.enum([\"in_progress\", \"completed\", \"incomplete\"]),\n output: z18.array(\n z18.object({\n stdout: z18.string(),\n stderr: z18.string(),\n outcome: z18.discriminatedUnion(\"type\", [\n z18.object({ type: z18.literal(\"timeout\") }),\n z18.object({\n type: z18.literal(\"exit\"),\n exit_code: z18.number()\n })\n ])\n })\n )\n }),\n z18.object({\n type: z18.literal(\"tool_search_call\"),\n id: z18.string(),\n execution: z18.enum([\"server\", \"client\"]),\n call_id: z18.string().nullable(),\n status: z18.enum([\"in_progress\", \"completed\", \"incomplete\"]),\n arguments: z18.unknown()\n }),\n z18.object({\n type: z18.literal(\"tool_search_output\"),\n id: z18.string(),\n execution: z18.enum([\"server\", \"client\"]),\n call_id: z18.string().nullable(),\n status: z18.enum([\"in_progress\", \"completed\", \"incomplete\"]),\n tools: z18.array(z18.record(z18.string(), jsonValueSchema.optional()))\n })\n ])\n }),\n z18.object({\n type: z18.literal(\"response.function_call_arguments.delta\"),\n item_id: z18.string(),\n output_index: z18.number(),\n delta: z18.string()\n }),\n z18.object({\n type: z18.literal(\"response.custom_tool_call_input.delta\"),\n item_id: z18.string(),\n output_index: z18.number(),\n delta: z18.string()\n }),\n z18.object({\n type: z18.literal(\"response.image_generation_call.partial_image\"),\n item_id: z18.string(),\n output_index: z18.number(),\n partial_image_b64: z18.string()\n }),\n z18.object({\n type: z18.literal(\"response.code_interpreter_call_code.delta\"),\n item_id: z18.string(),\n output_index: z18.number(),\n delta: z18.string()\n }),\n z18.object({\n type: z18.literal(\"response.code_interpreter_call_code.done\"),\n item_id: z18.string(),\n output_index: z18.number(),\n code: z18.string()\n }),\n z18.object({\n type: z18.literal(\"response.output_text.annotation.added\"),\n annotation: z18.discriminatedUnion(\"type\", [\n z18.object({\n type: z18.literal(\"url_citation\"),\n start_index: z18.number(),\n end_index: z18.number(),\n url: z18.string(),\n title: z18.string()\n }),\n z18.object({\n type: z18.literal(\"file_citation\"),\n file_id: z18.string(),\n filename: z18.string(),\n index: z18.number()\n }),\n z18.object({\n type: z18.literal(\"container_file_citation\"),\n container_id: z18.string(),\n file_id: z18.string(),\n filename: z18.string(),\n start_index: z18.number(),\n end_index: z18.number()\n }),\n z18.object({\n type: z18.literal(\"file_path\"),\n file_id: z18.string(),\n index: z18.number()\n })\n ])\n }),\n z18.object({\n type: z18.literal(\"response.reasoning_summary_part.added\"),\n item_id: z18.string(),\n summary_index: z18.number()\n }),\n z18.object({\n type: z18.literal(\"response.reasoning_summary_text.delta\"),\n item_id: z18.string(),\n summary_index: z18.number(),\n delta: z18.string()\n }),\n z18.object({\n type: z18.literal(\"response.reasoning_summary_part.done\"),\n item_id: z18.string(),\n summary_index: z18.number()\n }),\n z18.object({\n type: z18.literal(\"response.apply_patch_call_operation_diff.delta\"),\n item_id: z18.string(),\n output_index: z18.number(),\n delta: z18.string(),\n obfuscation: z18.string().nullish()\n }),\n z18.object({\n type: z18.literal(\"response.apply_patch_call_operation_diff.done\"),\n item_id: z18.string(),\n output_index: z18.number(),\n diff: z18.string()\n }),\n z18.object({\n type: z18.literal(\"error\"),\n sequence_number: z18.number(),\n error: z18.object({\n type: z18.string(),\n code: z18.string(),\n message: z18.string(),\n param: z18.string().nullish()\n })\n }),\n z18.object({ type: z18.string() }).loose().transform((value) => ({\n type: \"unknown_chunk\",\n message: value.type\n }))\n // fallback for unknown chunks\n ])\n )\n);\nvar openaiResponsesResponseSchema = lazySchema16(\n () => zodSchema16(\n z18.object({\n id: z18.string().optional(),\n created_at: z18.number().optional(),\n error: z18.object({\n message: z18.string(),\n type: z18.string(),\n param: z18.string().nullish(),\n code: z18.string()\n }).nullish(),\n model: z18.string().optional(),\n output: z18.array(\n z18.discriminatedUnion(\"type\", [\n z18.object({\n type: z18.literal(\"message\"),\n role: z18.literal(\"assistant\"),\n id: z18.string(),\n phase: z18.enum([\"commentary\", \"final_answer\"]).nullish(),\n content: z18.array(\n z18.object({\n type: z18.literal(\"output_text\"),\n text: z18.string(),\n logprobs: z18.array(\n z18.object({\n token: z18.string(),\n logprob: z18.number(),\n top_logprobs: z18.array(\n z18.object({\n token: z18.string(),\n logprob: z18.number()\n })\n )\n })\n ).nullish(),\n annotations: z18.array(\n z18.discriminatedUnion(\"type\", [\n z18.object({\n type: z18.literal(\"url_citation\"),\n start_index: z18.number(),\n end_index: z18.number(),\n url: z18.string(),\n title: z18.string()\n }),\n z18.object({\n type: z18.literal(\"file_citation\"),\n file_id: z18.string(),\n filename: z18.string(),\n index: z18.number()\n }),\n z18.object({\n type: z18.literal(\"container_file_citation\"),\n container_id: z18.string(),\n file_id: z18.string(),\n filename: z18.string(),\n start_index: z18.number(),\n end_index: z18.number()\n }),\n z18.object({\n type: z18.literal(\"file_path\"),\n file_id: z18.string(),\n index: z18.number()\n })\n ])\n )\n })\n )\n }),\n z18.object({\n type: z18.literal(\"web_search_call\"),\n id: z18.string(),\n status: z18.string(),\n action: z18.discriminatedUnion(\"type\", [\n z18.object({\n type: z18.literal(\"search\"),\n query: z18.string().nullish(),\n queries: z18.array(z18.string()).nullish(),\n sources: z18.array(\n z18.discriminatedUnion(\"type\", [\n z18.object({ type: z18.literal(\"url\"), url: z18.string() }),\n z18.object({\n type: z18.literal(\"api\"),\n name: z18.string()\n })\n ])\n ).nullish()\n }),\n z18.object({\n type: z18.literal(\"open_page\"),\n url: z18.string().nullish()\n }),\n z18.object({\n type: z18.literal(\"find_in_page\"),\n url: z18.string().nullish(),\n pattern: z18.string().nullish()\n })\n ]).nullish()\n }),\n z18.object({\n type: z18.literal(\"file_search_call\"),\n id: z18.string(),\n queries: z18.array(z18.string()),\n results: z18.array(\n z18.object({\n attributes: z18.record(\n z18.string(),\n z18.union([z18.string(), z18.number(), z18.boolean()])\n ),\n file_id: z18.string(),\n filename: z18.string(),\n score: z18.number(),\n text: z18.string()\n })\n ).nullish()\n }),\n z18.object({\n type: z18.literal(\"code_interpreter_call\"),\n id: z18.string(),\n code: z18.string().nullable(),\n container_id: z18.string(),\n outputs: z18.array(\n z18.discriminatedUnion(\"type\", [\n z18.object({ type: z18.literal(\"logs\"), logs: z18.string() }),\n z18.object({ type: z18.literal(\"image\"), url: z18.string() })\n ])\n ).nullable()\n }),\n z18.object({\n type: z18.literal(\"image_generation_call\"),\n id: z18.string(),\n result: z18.string()\n }),\n z18.object({\n type: z18.literal(\"local_shell_call\"),\n id: z18.string(),\n call_id: z18.string(),\n action: z18.object({\n type: z18.literal(\"exec\"),\n command: z18.array(z18.string()),\n timeout_ms: z18.number().optional(),\n user: z18.string().optional(),\n working_directory: z18.string().optional(),\n env: z18.record(z18.string(), z18.string()).optional()\n })\n }),\n z18.object({\n type: z18.literal(\"function_call\"),\n call_id: z18.string(),\n name: z18.string(),\n arguments: z18.string(),\n id: z18.string(),\n namespace: z18.string().nullish()\n }),\n z18.object({\n type: z18.literal(\"custom_tool_call\"),\n call_id: z18.string(),\n name: z18.string(),\n input: z18.string(),\n id: z18.string()\n }),\n z18.object({\n type: z18.literal(\"computer_call\"),\n id: z18.string(),\n status: z18.string().optional()\n }),\n z18.object({\n type: z18.literal(\"reasoning\"),\n id: z18.string(),\n encrypted_content: z18.string().nullish(),\n summary: z18.array(\n z18.object({\n type: z18.literal(\"summary_text\"),\n text: z18.string()\n })\n )\n }),\n z18.object({\n type: z18.literal(\"mcp_call\"),\n id: z18.string(),\n status: z18.string(),\n arguments: z18.string(),\n name: z18.string(),\n server_label: z18.string(),\n output: z18.string().nullish(),\n error: z18.union([\n z18.string(),\n z18.object({\n type: z18.string().optional(),\n code: z18.union([z18.number(), z18.string()]).optional(),\n message: z18.string().optional()\n }).loose()\n ]).nullish(),\n approval_request_id: z18.string().nullish()\n }),\n z18.object({\n type: z18.literal(\"mcp_list_tools\"),\n id: z18.string(),\n server_label: z18.string(),\n tools: z18.array(\n z18.object({\n name: z18.string(),\n description: z18.string().optional(),\n input_schema: z18.any(),\n annotations: z18.record(z18.string(), z18.unknown()).optional()\n })\n ),\n error: z18.union([\n z18.string(),\n z18.object({\n type: z18.string().optional(),\n code: z18.union([z18.number(), z18.string()]).optional(),\n message: z18.string().optional()\n }).loose()\n ]).optional()\n }),\n z18.object({\n type: z18.literal(\"mcp_approval_request\"),\n id: z18.string(),\n server_label: z18.string(),\n name: z18.string(),\n arguments: z18.string(),\n approval_request_id: z18.string().optional()\n }),\n z18.object({\n type: z18.literal(\"apply_patch_call\"),\n id: z18.string(),\n call_id: z18.string(),\n status: z18.enum([\"in_progress\", \"completed\"]),\n operation: z18.discriminatedUnion(\"type\", [\n z18.object({\n type: z18.literal(\"create_file\"),\n path: z18.string(),\n diff: z18.string()\n }),\n z18.object({\n type: z18.literal(\"delete_file\"),\n path: z18.string()\n }),\n z18.object({\n type: z18.literal(\"update_file\"),\n path: z18.string(),\n diff: z18.string()\n })\n ])\n }),\n z18.object({\n type: z18.literal(\"shell_call\"),\n id: z18.string(),\n call_id: z18.string(),\n status: z18.enum([\"in_progress\", \"completed\", \"incomplete\"]),\n action: z18.object({\n commands: z18.array(z18.string())\n })\n }),\n z18.object({\n type: z18.literal(\"shell_call_output\"),\n id: z18.string(),\n call_id: z18.string(),\n status: z18.enum([\"in_progress\", \"completed\", \"incomplete\"]),\n output: z18.array(\n z18.object({\n stdout: z18.string(),\n stderr: z18.string(),\n outcome: z18.discriminatedUnion(\"type\", [\n z18.object({ type: z18.literal(\"timeout\") }),\n z18.object({\n type: z18.literal(\"exit\"),\n exit_code: z18.number()\n })\n ])\n })\n )\n }),\n z18.object({\n type: z18.literal(\"tool_search_call\"),\n id: z18.string(),\n execution: z18.enum([\"server\", \"client\"]),\n call_id: z18.string().nullable(),\n status: z18.enum([\"in_progress\", \"completed\", \"incomplete\"]),\n arguments: z18.unknown()\n }),\n z18.object({\n type: z18.literal(\"tool_search_output\"),\n id: z18.string(),\n execution: z18.enum([\"server\", \"client\"]),\n call_id: z18.string().nullable(),\n status: z18.enum([\"in_progress\", \"completed\", \"incomplete\"]),\n tools: z18.array(z18.record(z18.string(), jsonValueSchema.optional()))\n })\n ])\n ).optional(),\n service_tier: z18.string().nullish(),\n incomplete_details: z18.object({ reason: z18.string() }).nullish(),\n usage: z18.object({\n input_tokens: z18.number(),\n input_tokens_details: z18.object({ cached_tokens: z18.number().nullish() }).nullish(),\n output_tokens: z18.number(),\n output_tokens_details: z18.object({ reasoning_tokens: z18.number().nullish() }).nullish()\n }).optional()\n })\n )\n);\n\n// src/responses/openai-responses-options.ts\nimport {\n lazySchema as lazySchema17,\n zodSchema as zodSchema17\n} from \"@ai-sdk/provider-utils\";\nimport { z as z19 } 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 \"gpt-5.5\",\n \"gpt-5.5-2026-04-23\"\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 = lazySchema17(\n () => zodSchema17(\n z19.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: z19.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: z19.array(\n z19.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: z19.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: z19.union([z19.boolean(), z19.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: z19.number().nullish(),\n /**\n * Additional metadata to store with the generation.\n */\n metadata: z19.any().nullish(),\n /**\n * Whether to use parallel tool calls. Defaults to `true`.\n */\n parallelToolCalls: z19.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: z19.string().nullish(),\n /**\n * Sets a cache key to tie this prompt to cached prefixes for better caching performance.\n */\n promptCacheKey: z19.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: z19.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: z19.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: z19.string().nullish(),\n /**\n * The identifier for safety monitoring and tracking.\n */\n safetyIdentifier: z19.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: z19.enum([\"auto\", \"flex\", \"priority\", \"default\"]).nullish(),\n /**\n * Whether to store the generation. Defaults to `true`.\n */\n store: z19.boolean().nullish(),\n /**\n * Whether to pass through non-image file types as generic input files.\n *\n * By default, inline file inputs are restricted to images and PDFs.\n * Enable this when the target OpenAI Responses model supports additional\n * file media types, such as text/csv.\n */\n passThroughUnsupportedFiles: z19.boolean().optional(),\n /**\n * Whether to use strict JSON schema validation.\n * Defaults to `true`.\n */\n strictJsonSchema: z19.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: z19.enum([\"low\", \"medium\", \"high\"]).nullish(),\n /**\n * Controls output truncation. 'auto' (default) performs truncation automatically;\n * 'disabled' turns truncation off.\n */\n truncation: z19.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: z19.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: z19.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: z19.boolean().optional(),\n /**\n * Restrict the callable tools to a subset while keeping the full tools\n * list intact, so prompt caching is preserved across requests with\n * different allowlists.\n *\n * When set, this overrides the request-level `toolChoice` and emits\n * `tool_choice: { type: \"allowed_tools\", mode, tools }` on the wire.\n *\n * @see https://developers.openai.com/api/reference/resources/responses/methods/create#(resource)%20responses%20%3E%20(model)%20tool_choice_allowed%20%3E%20(schema)\n */\n allowedTools: z19.object({\n toolNames: z19.array(z19.string()).min(1),\n mode: z19.enum([\"auto\", \"required\"]).optional()\n }).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\";\n\n// src/tool/code-interpreter.ts\nimport {\n createProviderToolFactoryWithOutputSchema as createProviderToolFactoryWithOutputSchema5,\n lazySchema as lazySchema18,\n zodSchema as zodSchema18\n} from \"@ai-sdk/provider-utils\";\nimport { z as z20 } from \"zod/v4\";\nvar codeInterpreterInputSchema = lazySchema18(\n () => zodSchema18(\n z20.object({\n code: z20.string().nullish(),\n containerId: z20.string()\n })\n )\n);\nvar codeInterpreterOutputSchema = lazySchema18(\n () => zodSchema18(\n z20.object({\n outputs: z20.array(\n z20.discriminatedUnion(\"type\", [\n z20.object({ type: z20.literal(\"logs\"), logs: z20.string() }),\n z20.object({ type: z20.literal(\"image\"), url: z20.string() })\n ])\n ).nullish()\n })\n )\n);\nvar codeInterpreterArgsSchema = lazySchema18(\n () => zodSchema18(\n z20.object({\n container: z20.union([\n z20.string(),\n z20.object({\n fileIds: z20.array(z20.string()).optional()\n })\n ]).optional()\n })\n )\n);\nvar codeInterpreterToolFactory = createProviderToolFactoryWithOutputSchema5({\n id: \"openai.code_interpreter\",\n inputSchema: codeInterpreterInputSchema,\n outputSchema: codeInterpreterOutputSchema\n});\nvar codeInterpreter = (args = {}) => {\n return codeInterpreterToolFactory(args);\n};\n\n// src/tool/file-search.ts\nimport {\n createProviderToolFactoryWithOutputSchema as createProviderToolFactoryWithOutputSchema6,\n lazySchema as lazySchema19,\n zodSchema as zodSchema19\n} from \"@ai-sdk/provider-utils\";\nimport { z as z21 } from \"zod/v4\";\nvar comparisonFilterSchema = z21.object({\n key: z21.string(),\n type: z21.enum([\"eq\", \"ne\", \"gt\", \"gte\", \"lt\", \"lte\", \"in\", \"nin\"]),\n value: z21.union([z21.string(), z21.number(), z21.boolean(), z21.array(z21.string())])\n});\nvar compoundFilterSchema = z21.object({\n type: z21.enum([\"and\", \"or\"]),\n filters: z21.array(\n z21.union([comparisonFilterSchema, z21.lazy(() => compoundFilterSchema)])\n )\n});\nvar fileSearchArgsSchema = lazySchema19(\n () => zodSchema19(\n z21.object({\n vectorStoreIds: z21.array(z21.string()),\n maxNumResults: z21.number().optional(),\n ranking: z21.object({\n ranker: z21.string().optional(),\n scoreThreshold: z21.number().optional()\n }).optional(),\n filters: z21.union([comparisonFilterSchema, compoundFilterSchema]).optional()\n })\n )\n);\nvar fileSearchOutputSchema = lazySchema19(\n () => zodSchema19(\n z21.object({\n queries: z21.array(z21.string()),\n results: z21.array(\n z21.object({\n attributes: z21.record(z21.string(), z21.unknown()),\n fileId: z21.string(),\n filename: z21.string(),\n score: z21.number(),\n text: z21.string()\n })\n ).nullable()\n })\n )\n);\nvar fileSearch = createProviderToolFactoryWithOutputSchema6({\n id: \"openai.file_search\",\n inputSchema: z21.object({}),\n outputSchema: fileSearchOutputSchema\n});\n\n// src/tool/image-generation.ts\nimport {\n createProviderToolFactoryWithOutputSchema as createProviderToolFactoryWithOutputSchema7,\n lazySchema as lazySchema20,\n zodSchema as zodSchema20\n} from \"@ai-sdk/provider-utils\";\nimport { z as z22 } from \"zod/v4\";\nvar imageGenerationArgsSchema = lazySchema20(\n () => zodSchema20(\n z22.object({\n background: z22.enum([\"auto\", \"opaque\", \"transparent\"]).optional(),\n inputFidelity: z22.enum([\"low\", \"high\"]).optional(),\n inputImageMask: z22.object({\n fileId: z22.string().optional(),\n imageUrl: z22.string().optional()\n }).optional(),\n model: z22.string().optional(),\n moderation: z22.enum([\"auto\"]).optional(),\n outputCompression: z22.number().int().min(0).max(100).optional(),\n outputFormat: z22.enum([\"png\", \"jpeg\", \"webp\"]).optional(),\n partialImages: z22.number().int().min(0).max(3).optional(),\n quality: z22.enum([\"auto\", \"low\", \"medium\", \"high\"]).optional(),\n size: z22.enum([\"1024x1024\", \"1024x1536\", \"1536x1024\", \"auto\"]).optional()\n }).strict()\n )\n);\nvar imageGenerationInputSchema = lazySchema20(() => zodSchema20(z22.object({})));\nvar imageGenerationOutputSchema = lazySchema20(\n () => zodSchema20(z22.object({ result: z22.string() }))\n);\nvar imageGenerationToolFactory = createProviderToolFactoryWithOutputSchema7({\n id: \"openai.image_generation\",\n inputSchema: imageGenerationInputSchema,\n outputSchema: imageGenerationOutputSchema\n});\nvar imageGeneration = (args = {}) => {\n return imageGenerationToolFactory(args);\n};\n\n// src/tool/custom.ts\nimport {\n createProviderToolFactory,\n lazySchema as lazySchema21,\n zodSchema as zodSchema21\n} from \"@ai-sdk/provider-utils\";\nimport { z as z23 } from \"zod/v4\";\nvar customArgsSchema = lazySchema21(\n () => zodSchema21(\n z23.object({\n name: z23.string(),\n description: z23.string().optional(),\n format: z23.union([\n z23.object({\n type: z23.literal(\"grammar\"),\n syntax: z23.enum([\"regex\", \"lark\"]),\n definition: z23.string()\n }),\n z23.object({\n type: z23.literal(\"text\")\n })\n ]).optional()\n })\n )\n);\nvar customInputSchema = lazySchema21(() => zodSchema21(z23.string()));\nvar customToolFactory = createProviderToolFactory({\n id: \"openai.custom\",\n inputSchema: customInputSchema\n});\n\n// src/tool/mcp.ts\nimport {\n createProviderToolFactoryWithOutputSchema as createProviderToolFactoryWithOutputSchema8,\n lazySchema as lazySchema22,\n zodSchema as zodSchema22\n} from \"@ai-sdk/provider-utils\";\nimport { z as z24 } from \"zod/v4\";\nvar jsonValueSchema2 = z24.lazy(\n () => z24.union([\n z24.string(),\n z24.number(),\n z24.boolean(),\n z24.null(),\n z24.array(jsonValueSchema2),\n z24.record(z24.string(), jsonValueSchema2)\n ])\n);\nvar mcpArgsSchema = lazySchema22(\n () => zodSchema22(\n z24.object({\n serverLabel: z24.string(),\n allowedTools: z24.union([\n z24.array(z24.string()),\n z24.object({\n readOnly: z24.boolean().optional(),\n toolNames: z24.array(z24.string()).optional()\n })\n ]).optional(),\n authorization: z24.string().optional(),\n connectorId: z24.string().optional(),\n headers: z24.record(z24.string(), z24.string()).optional(),\n requireApproval: z24.union([\n z24.enum([\"always\", \"never\"]),\n z24.object({\n never: z24.object({\n toolNames: z24.array(z24.string()).optional()\n }).optional()\n })\n ]).optional(),\n serverDescription: z24.string().optional(),\n serverUrl: z24.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 = lazySchema22(() => zodSchema22(z24.object({})));\nvar mcpOutputSchema = lazySchema22(\n () => zodSchema22(\n z24.object({\n type: z24.literal(\"call\"),\n serverLabel: z24.string(),\n name: z24.string(),\n arguments: z24.string(),\n output: z24.string().nullish(),\n error: z24.union([z24.string(), jsonValueSchema2]).optional()\n })\n )\n);\nvar mcpToolFactory = createProviderToolFactoryWithOutputSchema8({\n id: \"openai.mcp\",\n inputSchema: mcpInputSchema,\n outputSchema: mcpOutputSchema\n});\n\n// src/tool/web-search.ts\nimport {\n createProviderToolFactoryWithOutputSchema as createProviderToolFactoryWithOutputSchema9,\n lazySchema as lazySchema23,\n zodSchema as zodSchema23\n} from \"@ai-sdk/provider-utils\";\nimport { z as z25 } from \"zod/v4\";\nvar webSearchArgsSchema = lazySchema23(\n () => zodSchema23(\n z25.object({\n externalWebAccess: z25.boolean().optional(),\n filters: z25.object({ allowedDomains: z25.array(z25.string()).optional() }).optional(),\n searchContextSize: z25.enum([\"low\", \"medium\", \"high\"]).optional(),\n userLocation: z25.object({\n type: z25.literal(\"approximate\"),\n country: z25.string().optional(),\n city: z25.string().optional(),\n region: z25.string().optional(),\n timezone: z25.string().optional()\n }).optional()\n })\n )\n);\nvar webSearchInputSchema = lazySchema23(() => zodSchema23(z25.object({})));\nvar webSearchOutputSchema = lazySchema23(\n () => zodSchema23(\n z25.object({\n action: z25.discriminatedUnion(\"type\", [\n z25.object({\n type: z25.literal(\"search\"),\n query: z25.string().optional(),\n queries: z25.array(z25.string()).optional()\n }),\n z25.object({\n type: z25.literal(\"openPage\"),\n url: z25.string().nullish()\n }),\n z25.object({\n type: z25.literal(\"findInPage\"),\n url: z25.string().nullish(),\n pattern: z25.string().nullish()\n })\n ]).optional(),\n sources: z25.array(\n z25.discriminatedUnion(\"type\", [\n z25.object({ type: z25.literal(\"url\"), url: z25.string() }),\n z25.object({ type: z25.literal(\"api\"), name: z25.string() })\n ])\n ).optional()\n })\n )\n);\nvar webSearchToolFactory = createProviderToolFactoryWithOutputSchema9({\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 createProviderToolFactoryWithOutputSchema10,\n lazySchema as lazySchema24,\n zodSchema as zodSchema24\n} from \"@ai-sdk/provider-utils\";\nimport { z as z26 } from \"zod/v4\";\nvar webSearchPreviewArgsSchema = lazySchema24(\n () => zodSchema24(\n z26.object({\n searchContextSize: z26.enum([\"low\", \"medium\", \"high\"]).optional(),\n userLocation: z26.object({\n type: z26.literal(\"approximate\"),\n country: z26.string().optional(),\n city: z26.string().optional(),\n region: z26.string().optional(),\n timezone: z26.string().optional()\n }).optional()\n })\n )\n);\nvar webSearchPreviewInputSchema = lazySchema24(\n () => zodSchema24(z26.object({}))\n);\nvar webSearchPreviewOutputSchema = lazySchema24(\n () => zodSchema24(\n z26.object({\n action: z26.discriminatedUnion(\"type\", [\n z26.object({\n type: z26.literal(\"search\"),\n query: z26.string().optional()\n }),\n z26.object({\n type: z26.literal(\"openPage\"),\n url: z26.string().nullish()\n }),\n z26.object({\n type: z26.literal(\"findInPage\"),\n url: z26.string().nullish(),\n pattern: z26.string().nullish()\n })\n ]).optional()\n })\n )\n);\nvar webSearchPreview = createProviderToolFactoryWithOutputSchema10({\n id: \"openai.web_search_preview\",\n inputSchema: webSearchPreviewInputSchema,\n outputSchema: webSearchPreviewOutputSchema\n});\n\n// src/responses/openai-responses-prepare-tools.ts\nasync function prepareResponsesTools({\n tools,\n toolChoice,\n allowedTools,\n toolNameMapping,\n customProviderToolNames\n}) {\n var _a, _b, _c;\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 openaiTools = [];\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 openaiTools.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 openaiTools.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 openaiTools.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 openaiTools.push({\n type: \"shell\",\n ...args.environment && {\n environment: mapShellEnvironment(args.environment)\n }\n });\n break;\n }\n case \"openai.apply_patch\": {\n openaiTools.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 openaiTools.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 openaiTools.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 openaiTools.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 openaiTools.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 openaiTools.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 openaiTools.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 openaiTools.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 (allowedTools != null) {\n return {\n tools: openaiTools,\n toolChoice: {\n type: \"allowed_tools\",\n mode: (_b = allowedTools.mode) != null ? _b : \"auto\",\n tools: allowedTools.toolNames.map((name) => {\n var _a2;\n return {\n type: \"function\",\n name: (_a2 = toolNameMapping == null ? void 0 : toolNameMapping.toProviderToolName(name)) != null ? _a2 : name\n };\n })\n },\n toolWarnings\n };\n }\n if (toolChoice == null) {\n return { tools: openaiTools, 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: openaiTools, toolChoice: type, toolWarnings };\n case \"tool\": {\n const resolvedToolName = (_c = toolNameMapping == null ? void 0 : toolNameMapping.toProviderToolName(toolChoice.toolName)) != null ? _c : toolChoice.toolName;\n return {\n tools: openaiTools,\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, _j, _k;\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 parseProviderOptions8({\n provider: providerOptionsName,\n providerOptions,\n schema: openaiLanguageModelResponsesOptionsSchema\n });\n if (openaiOptions == null && providerOptionsName !== \"openai\") {\n openaiOptions = await parseProviderOptions8({\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: openaiTools,\n toolChoice: openaiToolChoice,\n toolWarnings\n } = await prepareResponsesTools({\n tools,\n toolChoice,\n allowedTools: (_b = openaiOptions == null ? void 0 : openaiOptions.allowedTools) != null ? _b : void 0,\n toolNameMapping,\n customProviderToolNames\n });\n const { input, warnings: inputWarnings } = await convertToOpenAIResponsesInput({\n prompt,\n toolNameMapping,\n systemMessageMode: (_c = openaiOptions == null ? void 0 : openaiOptions.systemMessageMode) != null ? _c : isReasoningModel ? \"developer\" : modelCapabilities.systemMessageMode,\n providerOptionsName,\n fileIdPrefixes: this.config.fileIdPrefixes,\n passThroughUnsupportedFiles: (_d = openaiOptions == null ? void 0 : openaiOptions.passThroughUnsupportedFiles) != null ? _d : false,\n store: (_e = openaiOptions == null ? void 0 : openaiOptions.store) != null ? _e : true,\n hasConversation: (openaiOptions == null ? void 0 : openaiOptions.conversation) != null,\n hasPreviousResponseId: (openaiOptions == null ? void 0 : openaiOptions.previousResponseId) != 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 = (_f = openaiOptions == null ? void 0 : openaiOptions.strictJsonSchema) != null ? _f : 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 = (_g = 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 : _g.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: (_h = responseFormat.name) != null ? _h : \"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 = (_k = (_j = (_i = tools == null ? void 0 : tools.find(\n (tool) => tool.type === \"provider\" && tool.id === \"openai.shell\"\n )) == null ? void 0 : _i.args) == null ? void 0 : _j.environment) == null ? void 0 : _k.type;\n const isShellProviderExecuted = shellToolEnvType === \"containerAuto\" || shellToolEnvType === \"containerReference\";\n return {\n webSearchToolName,\n args: {\n ...baseArgs,\n tools: openaiTools,\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 postJsonToApi6({\n url,\n headers: combineHeaders7(this.config.headers(), options.headers),\n body,\n failedResponseHandler: openaiFailedResponseHandler,\n successfulResponseHandler: createJsonResponseHandler6(\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 ...part.namespace != null && { namespace: part.namespace }\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 postJsonToApi6({\n url: this.config.url({\n path: \"/responses\",\n modelId: this.modelId\n }),\n headers: combineHeaders7(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 ...value.item.namespace != null && {\n providerMetadata: {\n [providerOptionsName]: {\n namespace: value.item.namespace\n }\n }\n }\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 ...value.item.namespace != null && {\n namespace: value.item.namespace\n }\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: {\n type: \"search\",\n query: (_a = action.query) != null ? _a : void 0,\n ...action.queries != null && { queries: action.queries }\n },\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}\nexport {\n OpenAIChatLanguageModel,\n OpenAICompletionLanguageModel,\n OpenAIEmbeddingModel,\n OpenAIImageModel,\n OpenAIResponsesLanguageModel,\n OpenAISpeechModel,\n OpenAITranscriptionModel,\n applyPatch,\n applyPatchArgsSchema,\n applyPatchInputSchema,\n applyPatchOutputSchema,\n applyPatchToolFactory,\n codeInterpreter,\n codeInterpreterArgsSchema,\n codeInterpreterInputSchema,\n codeInterpreterOutputSchema,\n codeInterpreterToolFactory,\n fileSearch,\n fileSearchArgsSchema,\n fileSearchOutputSchema,\n hasDefaultResponseFormat,\n imageGeneration,\n imageGenerationArgsSchema,\n imageGenerationOutputSchema,\n modelMaxImagesPerCall,\n openAITranscriptionModelOptions,\n openaiEmbeddingModelOptions,\n openaiImageModelEditOptions,\n openaiImageModelGenerationOptions,\n openaiImageModelOptions,\n openaiLanguageModelChatOptions,\n openaiLanguageModelCompletionOptions,\n openaiSpeechModelOptionsSchema,\n webSearch,\n webSearchArgsSchema,\n webSearchOutputSchema,\n webSearchPreview,\n webSearchPreviewArgsSchema,\n webSearchPreviewInputSchema,\n webSearchToolFactory\n};\n//# sourceMappingURL=index.mjs.map",
6
+ "// src/mantle/bedrock-mantle-provider.ts\nimport {\n OpenAIChatLanguageModel,\n OpenAIResponsesLanguageModel\n} from \"@ai-sdk/openai/internal\";\nimport {\n NoSuchModelError\n} from \"@ai-sdk/provider\";\nimport {\n loadOptionalSetting,\n loadSetting,\n withoutTrailingSlash,\n withUserAgentSuffix as withUserAgentSuffix2\n} from \"@ai-sdk/provider-utils\";\n\n// src/bedrock-sigv4-fetch.ts\nimport {\n combineHeaders,\n normalizeHeaders,\n withUserAgentSuffix,\n getRuntimeEnvironmentUserAgent\n} from \"@ai-sdk/provider-utils\";\nimport { AwsV4Signer } from \"aws4fetch\";\n\n// src/version.ts\nvar VERSION = true ? \"4.0.112\" : \"0.0.0-test\";\n\n// src/bedrock-sigv4-fetch.ts\nfunction createSigV4FetchFunction(getCredentials, fetch, service = \"bedrock\") {\n return async (input, init) => {\n var _a, _b;\n const effectiveFetch = fetch != null ? fetch : globalThis.fetch;\n const request = input instanceof Request ? input : void 0;\n const originalHeaders = combineHeaders(\n normalizeHeaders(request == null ? void 0 : request.headers),\n normalizeHeaders(init == null ? void 0 : init.headers)\n );\n const headersWithUserAgent = withUserAgentSuffix(\n originalHeaders,\n `ai-sdk/amazon-bedrock/${VERSION}`,\n getRuntimeEnvironmentUserAgent()\n );\n let effectiveBody = (_a = init == null ? void 0 : init.body) != null ? _a : void 0;\n if (effectiveBody === void 0 && request && request.body !== null) {\n try {\n effectiveBody = await request.clone().text();\n } catch (e) {\n }\n }\n const effectiveMethod = (_b = init == null ? void 0 : init.method) != null ? _b : request == null ? void 0 : request.method;\n if ((effectiveMethod == null ? void 0 : effectiveMethod.toUpperCase()) !== \"POST\" || !effectiveBody) {\n return effectiveFetch(input, {\n ...init,\n headers: headersWithUserAgent\n });\n }\n const url = typeof input === \"string\" ? input : input instanceof URL ? input.href : input.url;\n const body = prepareBodyString(effectiveBody);\n const credentials = await getCredentials();\n const signer = new AwsV4Signer({\n url,\n method: \"POST\",\n headers: Object.entries(headersWithUserAgent),\n body,\n region: credentials.region,\n accessKeyId: credentials.accessKeyId,\n secretAccessKey: credentials.secretAccessKey,\n sessionToken: credentials.sessionToken,\n service\n });\n const signingResult = await signer.sign();\n const signedHeaders = normalizeHeaders(signingResult.headers);\n const combinedHeaders = combineHeaders(headersWithUserAgent, signedHeaders);\n return effectiveFetch(input, {\n ...init,\n body,\n headers: combinedHeaders\n });\n };\n}\nfunction prepareBodyString(body) {\n if (typeof body === \"string\") {\n return body;\n } else if (body instanceof Uint8Array) {\n return new TextDecoder().decode(body);\n } else if (body instanceof ArrayBuffer) {\n return new TextDecoder().decode(new Uint8Array(body));\n } else {\n return JSON.stringify(body);\n }\n}\nfunction createApiKeyFetchFunction(apiKey, fetch) {\n return async (input, init) => {\n const effectiveFetch = fetch != null ? fetch : globalThis.fetch;\n const originalHeaders = normalizeHeaders(init == null ? void 0 : init.headers);\n const headersWithUserAgent = withUserAgentSuffix(\n originalHeaders,\n `ai-sdk/amazon-bedrock/${VERSION}`,\n getRuntimeEnvironmentUserAgent()\n );\n const finalHeaders = combineHeaders(headersWithUserAgent, {\n Authorization: `Bearer ${apiKey}`\n });\n return effectiveFetch(input, {\n ...init,\n headers: finalHeaders\n });\n };\n}\n\n// src/mantle/bedrock-mantle-provider.ts\nfunction createBedrockMantle(options = {}) {\n const rawApiKey = loadOptionalSetting({\n settingValue: options.apiKey,\n environmentVariableName: \"AWS_BEARER_TOKEN_BEDROCK\"\n });\n const apiKey = rawApiKey && rawApiKey.trim().length > 0 ? rawApiKey.trim() : void 0;\n const fetchFunction = apiKey ? createApiKeyFetchFunction(apiKey, options.fetch) : createSigV4FetchFunction(\n async () => {\n const region = loadSetting({\n settingValue: options.region,\n settingName: \"region\",\n environmentVariableName: \"AWS_REGION\",\n description: \"AWS region\"\n });\n if (options.credentialProvider) {\n try {\n return {\n ...await options.credentialProvider(),\n region\n };\n } catch (error) {\n const errorMessage = error instanceof Error ? error.message : String(error);\n throw new Error(\n `AWS credential provider failed: ${errorMessage}. Please ensure your credential provider returns valid AWS credentials with accessKeyId and secretAccessKey properties.`\n );\n }\n }\n try {\n return {\n region,\n accessKeyId: loadSetting({\n settingValue: options.accessKeyId,\n settingName: \"accessKeyId\",\n environmentVariableName: \"AWS_ACCESS_KEY_ID\",\n description: \"AWS access key ID\"\n }),\n secretAccessKey: loadSetting({\n settingValue: options.secretAccessKey,\n settingName: \"secretAccessKey\",\n environmentVariableName: \"AWS_SECRET_ACCESS_KEY\",\n description: \"AWS secret access key\"\n }),\n sessionToken: loadOptionalSetting({\n settingValue: options.sessionToken,\n environmentVariableName: \"AWS_SESSION_TOKEN\"\n })\n };\n } catch (error) {\n const errorMessage = error instanceof Error ? error.message : String(error);\n if (errorMessage.includes(\"AWS_ACCESS_KEY_ID\") || errorMessage.includes(\"accessKeyId\")) {\n throw new Error(\n `AWS SigV4 authentication requires AWS credentials. Please provide either:\n1. Set AWS_ACCESS_KEY_ID and AWS_SECRET_ACCESS_KEY environment variables\n2. Provide accessKeyId and secretAccessKey in options\n3. Use a credentialProvider function\n4. Use API key authentication with AWS_BEARER_TOKEN_BEDROCK or apiKey option\nOriginal error: ${errorMessage}`\n );\n }\n if (errorMessage.includes(\"AWS_SECRET_ACCESS_KEY\") || errorMessage.includes(\"secretAccessKey\")) {\n throw new Error(\n `AWS SigV4 authentication requires both AWS_ACCESS_KEY_ID and AWS_SECRET_ACCESS_KEY. Please ensure both credentials are provided.\nOriginal error: ${errorMessage}`\n );\n }\n throw error;\n }\n },\n options.fetch,\n \"bedrock-mantle\"\n );\n const getBaseURL = () => {\n var _a, _b;\n return (_b = withoutTrailingSlash(\n (_a = options.baseURL) != null ? _a : `https://bedrock-mantle.${loadSetting({\n settingValue: options.region,\n settingName: \"region\",\n environmentVariableName: \"AWS_REGION\",\n description: \"AWS region\"\n })}.api.aws/v1`\n )) != null ? _b : \"https://bedrock-mantle.us-east-1.api.aws/v1\";\n };\n const getHeaders = () => {\n var _a;\n return withUserAgentSuffix2(\n (_a = options.headers) != null ? _a : {},\n `ai-sdk/amazon-bedrock/${VERSION}`\n );\n };\n const url = ({ path }) => `${getBaseURL()}${path}`;\n const createChatModel = (modelId) => new OpenAIChatLanguageModel(modelId, {\n provider: \"bedrock-mantle.chat\",\n url,\n headers: getHeaders,\n fetch: fetchFunction\n });\n const createResponsesModel = (modelId) => new OpenAIResponsesLanguageModel(modelId, {\n provider: \"bedrock-mantle.responses\",\n url,\n headers: getHeaders,\n fetch: fetchFunction\n });\n const provider = function(modelId) {\n if (new.target) {\n throw new Error(\n \"The Bedrock Mantle model function cannot be called with the new keyword.\"\n );\n }\n return createChatModel(modelId);\n };\n provider.specificationVersion = \"v3\";\n provider.languageModel = createChatModel;\n provider.chat = createChatModel;\n provider.responses = createResponsesModel;\n provider.embeddingModel = (modelId) => {\n throw new NoSuchModelError({ modelId, modelType: \"embeddingModel\" });\n };\n provider.textEmbeddingModel = provider.embeddingModel;\n provider.imageModel = (modelId) => {\n throw new NoSuchModelError({ modelId, modelType: \"imageModel\" });\n };\n return provider;\n}\nvar bedrockMantle = createBedrockMantle();\nexport {\n bedrockMantle,\n createBedrockMantle\n};\n//# sourceMappingURL=index.mjs.map"
7
+ ],
8
+ "mappings": "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",
9
+ "debugId": "18DCF83AA29B56E064756E2164756E21",
10
+ "names": []
11
+ }