openai 6.43.0 → 6.45.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (317) hide show
  1. package/CHANGELOG.md +56 -0
  2. package/README.md +85 -102
  3. package/_vendor/zod-to-json-schema/parseDef.d.mts.map +1 -1
  4. package/_vendor/zod-to-json-schema/parseDef.d.ts.map +1 -1
  5. package/_vendor/zod-to-json-schema/parseDef.js +41 -15
  6. package/_vendor/zod-to-json-schema/parseDef.js.map +1 -1
  7. package/_vendor/zod-to-json-schema/parseDef.mjs +41 -15
  8. package/_vendor/zod-to-json-schema/parseDef.mjs.map +1 -1
  9. package/_vendor/zod-to-json-schema/parsers/branded.d.mts +1 -1
  10. package/_vendor/zod-to-json-schema/parsers/branded.d.mts.map +1 -1
  11. package/_vendor/zod-to-json-schema/parsers/branded.d.ts +1 -1
  12. package/_vendor/zod-to-json-schema/parsers/branded.d.ts.map +1 -1
  13. package/_vendor/zod-to-json-schema/parsers/branded.js +2 -2
  14. package/_vendor/zod-to-json-schema/parsers/branded.js.map +1 -1
  15. package/_vendor/zod-to-json-schema/parsers/branded.mjs +2 -2
  16. package/_vendor/zod-to-json-schema/parsers/branded.mjs.map +1 -1
  17. package/_vendor/zod-to-json-schema/parsers/catch.d.mts +1 -1
  18. package/_vendor/zod-to-json-schema/parsers/catch.d.mts.map +1 -1
  19. package/_vendor/zod-to-json-schema/parsers/catch.d.ts +1 -1
  20. package/_vendor/zod-to-json-schema/parsers/catch.d.ts.map +1 -1
  21. package/_vendor/zod-to-json-schema/parsers/catch.js +2 -2
  22. package/_vendor/zod-to-json-schema/parsers/catch.js.map +1 -1
  23. package/_vendor/zod-to-json-schema/parsers/catch.mjs +2 -2
  24. package/_vendor/zod-to-json-schema/parsers/catch.mjs.map +1 -1
  25. package/_vendor/zod-to-json-schema/parsers/default.d.mts +1 -1
  26. package/_vendor/zod-to-json-schema/parsers/default.d.mts.map +1 -1
  27. package/_vendor/zod-to-json-schema/parsers/default.d.ts +1 -1
  28. package/_vendor/zod-to-json-schema/parsers/default.d.ts.map +1 -1
  29. package/_vendor/zod-to-json-schema/parsers/default.js +2 -2
  30. package/_vendor/zod-to-json-schema/parsers/default.js.map +1 -1
  31. package/_vendor/zod-to-json-schema/parsers/default.mjs +2 -2
  32. package/_vendor/zod-to-json-schema/parsers/default.mjs.map +1 -1
  33. package/_vendor/zod-to-json-schema/parsers/nullable.d.mts +1 -1
  34. package/_vendor/zod-to-json-schema/parsers/nullable.d.mts.map +1 -1
  35. package/_vendor/zod-to-json-schema/parsers/nullable.d.ts +1 -1
  36. package/_vendor/zod-to-json-schema/parsers/nullable.d.ts.map +1 -1
  37. package/_vendor/zod-to-json-schema/parsers/nullable.js +2 -2
  38. package/_vendor/zod-to-json-schema/parsers/nullable.js.map +1 -1
  39. package/_vendor/zod-to-json-schema/parsers/nullable.mjs +2 -2
  40. package/_vendor/zod-to-json-schema/parsers/nullable.mjs.map +1 -1
  41. package/_vendor/zod-to-json-schema/parsers/optional.d.mts +1 -1
  42. package/_vendor/zod-to-json-schema/parsers/optional.d.mts.map +1 -1
  43. package/_vendor/zod-to-json-schema/parsers/optional.d.ts +1 -1
  44. package/_vendor/zod-to-json-schema/parsers/optional.d.ts.map +1 -1
  45. package/_vendor/zod-to-json-schema/parsers/optional.js +3 -3
  46. package/_vendor/zod-to-json-schema/parsers/optional.js.map +1 -1
  47. package/_vendor/zod-to-json-schema/parsers/optional.mjs +3 -3
  48. package/_vendor/zod-to-json-schema/parsers/optional.mjs.map +1 -1
  49. package/_vendor/zod-to-json-schema/parsers/pipeline.d.mts +1 -1
  50. package/_vendor/zod-to-json-schema/parsers/pipeline.d.mts.map +1 -1
  51. package/_vendor/zod-to-json-schema/parsers/pipeline.d.ts +1 -1
  52. package/_vendor/zod-to-json-schema/parsers/pipeline.d.ts.map +1 -1
  53. package/_vendor/zod-to-json-schema/parsers/pipeline.js +3 -3
  54. package/_vendor/zod-to-json-schema/parsers/pipeline.js.map +1 -1
  55. package/_vendor/zod-to-json-schema/parsers/pipeline.mjs +3 -3
  56. package/_vendor/zod-to-json-schema/parsers/pipeline.mjs.map +1 -1
  57. package/_vendor/zod-to-json-schema/parsers/promise.d.mts +1 -1
  58. package/_vendor/zod-to-json-schema/parsers/promise.d.mts.map +1 -1
  59. package/_vendor/zod-to-json-schema/parsers/promise.d.ts +1 -1
  60. package/_vendor/zod-to-json-schema/parsers/promise.d.ts.map +1 -1
  61. package/_vendor/zod-to-json-schema/parsers/promise.js +2 -2
  62. package/_vendor/zod-to-json-schema/parsers/promise.js.map +1 -1
  63. package/_vendor/zod-to-json-schema/parsers/promise.mjs +2 -2
  64. package/_vendor/zod-to-json-schema/parsers/promise.mjs.map +1 -1
  65. package/_vendor/zod-to-json-schema/parsers/readonly.d.mts +1 -1
  66. package/_vendor/zod-to-json-schema/parsers/readonly.d.mts.map +1 -1
  67. package/_vendor/zod-to-json-schema/parsers/readonly.d.ts +1 -1
  68. package/_vendor/zod-to-json-schema/parsers/readonly.d.ts.map +1 -1
  69. package/_vendor/zod-to-json-schema/parsers/readonly.js +2 -2
  70. package/_vendor/zod-to-json-schema/parsers/readonly.js.map +1 -1
  71. package/_vendor/zod-to-json-schema/parsers/readonly.mjs +2 -2
  72. package/_vendor/zod-to-json-schema/parsers/readonly.mjs.map +1 -1
  73. package/auth/workload-identity-auth.d.mts.map +1 -1
  74. package/auth/workload-identity-auth.d.ts.map +1 -1
  75. package/auth/workload-identity-auth.js +12 -4
  76. package/auth/workload-identity-auth.js.map +1 -1
  77. package/auth/workload-identity-auth.mjs +13 -5
  78. package/auth/workload-identity-auth.mjs.map +1 -1
  79. package/azure.d.mts +3 -1
  80. package/azure.d.mts.map +1 -1
  81. package/azure.d.ts +3 -1
  82. package/azure.d.ts.map +1 -1
  83. package/azure.js.map +1 -1
  84. package/azure.mjs.map +1 -1
  85. package/beta/realtime/internal-base.d.mts +14 -1
  86. package/beta/realtime/internal-base.d.mts.map +1 -1
  87. package/beta/realtime/internal-base.d.ts +14 -1
  88. package/beta/realtime/internal-base.d.ts.map +1 -1
  89. package/beta/realtime/internal-base.js +21 -5
  90. package/beta/realtime/internal-base.js.map +1 -1
  91. package/beta/realtime/internal-base.mjs +21 -5
  92. package/beta/realtime/internal-base.mjs.map +1 -1
  93. package/beta/realtime/websocket.d.mts +3 -5
  94. package/beta/realtime/websocket.d.mts.map +1 -1
  95. package/beta/realtime/websocket.d.ts +3 -5
  96. package/beta/realtime/websocket.d.ts.map +1 -1
  97. package/beta/realtime/websocket.js +2 -3
  98. package/beta/realtime/websocket.js.map +1 -1
  99. package/beta/realtime/websocket.mjs +3 -4
  100. package/beta/realtime/websocket.mjs.map +1 -1
  101. package/beta/realtime/ws.d.mts +3 -5
  102. package/beta/realtime/ws.d.mts.map +1 -1
  103. package/beta/realtime/ws.d.ts +3 -5
  104. package/beta/realtime/ws.d.ts.map +1 -1
  105. package/beta/realtime/ws.js +2 -3
  106. package/beta/realtime/ws.js.map +1 -1
  107. package/beta/realtime/ws.mjs +3 -4
  108. package/beta/realtime/ws.mjs.map +1 -1
  109. package/client.d.mts +9 -1
  110. package/client.d.mts.map +1 -1
  111. package/client.d.ts +9 -1
  112. package/client.d.ts.map +1 -1
  113. package/client.js +56 -9
  114. package/client.js.map +1 -1
  115. package/client.mjs +56 -9
  116. package/client.mjs.map +1 -1
  117. package/helpers/zod.d.mts.map +1 -1
  118. package/helpers/zod.d.ts.map +1 -1
  119. package/helpers/zod.js +12 -0
  120. package/helpers/zod.js.map +1 -1
  121. package/helpers/zod.mjs +12 -0
  122. package/helpers/zod.mjs.map +1 -1
  123. package/internal/bedrock.d.mts +34 -0
  124. package/internal/bedrock.d.mts.map +1 -0
  125. package/internal/bedrock.d.ts +34 -0
  126. package/internal/bedrock.d.ts.map +1 -0
  127. package/internal/bedrock.js +107 -0
  128. package/internal/bedrock.js.map +1 -0
  129. package/internal/bedrock.mjs +99 -0
  130. package/internal/bedrock.mjs.map +1 -0
  131. package/internal/provider.d.mts +23 -0
  132. package/internal/provider.d.mts.map +1 -0
  133. package/internal/provider.d.ts +23 -0
  134. package/internal/provider.d.ts.map +1 -0
  135. package/internal/provider.js +36 -0
  136. package/internal/provider.js.map +1 -0
  137. package/internal/provider.mjs +32 -0
  138. package/internal/provider.mjs.map +1 -0
  139. package/internal/utils/log.d.mts.map +1 -1
  140. package/internal/utils/log.d.ts.map +1 -1
  141. package/internal/utils/log.js +1 -0
  142. package/internal/utils/log.js.map +1 -1
  143. package/internal/utils/log.mjs +1 -0
  144. package/internal/utils/log.mjs.map +1 -1
  145. package/lib/AbstractChatCompletionRunner.d.mts +15 -4
  146. package/lib/AbstractChatCompletionRunner.d.mts.map +1 -1
  147. package/lib/AbstractChatCompletionRunner.d.ts +15 -4
  148. package/lib/AbstractChatCompletionRunner.d.ts.map +1 -1
  149. package/lib/AbstractChatCompletionRunner.js +63 -40
  150. package/lib/AbstractChatCompletionRunner.js.map +1 -1
  151. package/lib/AbstractChatCompletionRunner.mjs +63 -40
  152. package/lib/AbstractChatCompletionRunner.mjs.map +1 -1
  153. package/lib/AssistantStream.d.mts.map +1 -1
  154. package/lib/AssistantStream.d.ts.map +1 -1
  155. package/lib/AssistantStream.js +4 -24
  156. package/lib/AssistantStream.js.map +1 -1
  157. package/lib/AssistantStream.mjs +4 -24
  158. package/lib/AssistantStream.mjs.map +1 -1
  159. package/lib/ChatCompletionRunner.js +1 -1
  160. package/lib/ChatCompletionRunner.js.map +1 -1
  161. package/lib/ChatCompletionRunner.mjs +1 -1
  162. package/lib/ChatCompletionRunner.mjs.map +1 -1
  163. package/lib/ChatCompletionStream.d.mts.map +1 -1
  164. package/lib/ChatCompletionStream.d.ts.map +1 -1
  165. package/lib/ChatCompletionStream.js +4 -13
  166. package/lib/ChatCompletionStream.js.map +1 -1
  167. package/lib/ChatCompletionStream.mjs +4 -13
  168. package/lib/ChatCompletionStream.mjs.map +1 -1
  169. package/lib/ChatCompletionStreamingRunner.js +1 -1
  170. package/lib/ChatCompletionStreamingRunner.js.map +1 -1
  171. package/lib/ChatCompletionStreamingRunner.mjs +1 -1
  172. package/lib/ChatCompletionStreamingRunner.mjs.map +1 -1
  173. package/lib/EventEmitter.d.mts.map +1 -1
  174. package/lib/EventEmitter.d.ts.map +1 -1
  175. package/lib/EventEmitter.js +12 -2
  176. package/lib/EventEmitter.js.map +1 -1
  177. package/lib/EventEmitter.mjs +12 -2
  178. package/lib/EventEmitter.mjs.map +1 -1
  179. package/lib/EventStream.d.mts +1 -0
  180. package/lib/EventStream.d.mts.map +1 -1
  181. package/lib/EventStream.d.ts +1 -0
  182. package/lib/EventStream.d.ts.map +1 -1
  183. package/lib/EventStream.js +19 -2
  184. package/lib/EventStream.js.map +1 -1
  185. package/lib/EventStream.mjs +19 -2
  186. package/lib/EventStream.mjs.map +1 -1
  187. package/lib/ResponsesParser.d.mts.map +1 -1
  188. package/lib/ResponsesParser.d.ts.map +1 -1
  189. package/lib/ResponsesParser.js +12 -4
  190. package/lib/ResponsesParser.js.map +1 -1
  191. package/lib/ResponsesParser.mjs +12 -4
  192. package/lib/ResponsesParser.mjs.map +1 -1
  193. package/lib/responses/ResponseAccumulator.d.mts +10 -0
  194. package/lib/responses/ResponseAccumulator.d.mts.map +1 -0
  195. package/lib/responses/ResponseAccumulator.d.ts +10 -0
  196. package/lib/responses/ResponseAccumulator.d.ts.map +1 -0
  197. package/lib/responses/ResponseAccumulator.js +402 -0
  198. package/lib/responses/ResponseAccumulator.js.map +1 -0
  199. package/lib/responses/ResponseAccumulator.mjs +399 -0
  200. package/lib/responses/ResponseAccumulator.mjs.map +1 -0
  201. package/lib/responses/ResponseInputItems.d.mts +19 -0
  202. package/lib/responses/ResponseInputItems.d.mts.map +1 -0
  203. package/lib/responses/ResponseInputItems.d.ts +19 -0
  204. package/lib/responses/ResponseInputItems.d.ts.map +1 -0
  205. package/lib/responses/ResponseInputItems.js +102 -0
  206. package/lib/responses/ResponseInputItems.js.map +1 -0
  207. package/lib/responses/ResponseInputItems.mjs +98 -0
  208. package/lib/responses/ResponseInputItems.mjs.map +1 -0
  209. package/lib/responses/ResponseStream.d.mts.map +1 -1
  210. package/lib/responses/ResponseStream.d.ts.map +1 -1
  211. package/lib/responses/ResponseStream.js +5 -90
  212. package/lib/responses/ResponseStream.js.map +1 -1
  213. package/lib/responses/ResponseStream.mjs +5 -90
  214. package/lib/responses/ResponseStream.mjs.map +1 -1
  215. package/package.json +24 -1
  216. package/providers/bedrock/aws.d.mts +24 -0
  217. package/providers/bedrock/aws.d.mts.map +1 -0
  218. package/providers/bedrock/aws.d.ts +24 -0
  219. package/providers/bedrock/aws.d.ts.map +1 -0
  220. package/providers/bedrock/aws.js +170 -0
  221. package/providers/bedrock/aws.js.map +1 -0
  222. package/providers/bedrock/aws.mjs +166 -0
  223. package/providers/bedrock/aws.mjs.map +1 -0
  224. package/providers/bedrock.d.mts +7 -0
  225. package/providers/bedrock.d.mts.map +1 -0
  226. package/providers/bedrock.d.ts +7 -0
  227. package/providers/bedrock.d.ts.map +1 -0
  228. package/providers/bedrock.js +26 -0
  229. package/providers/bedrock.js.map +1 -0
  230. package/providers/bedrock.mjs +22 -0
  231. package/providers/bedrock.mjs.map +1 -0
  232. package/realtime/internal-base.d.mts +28 -1
  233. package/realtime/internal-base.d.mts.map +1 -1
  234. package/realtime/internal-base.d.ts +28 -1
  235. package/realtime/internal-base.d.ts.map +1 -1
  236. package/realtime/internal-base.js +50 -7
  237. package/realtime/internal-base.js.map +1 -1
  238. package/realtime/internal-base.mjs +49 -7
  239. package/realtime/internal-base.mjs.map +1 -1
  240. package/realtime/websocket.d.mts +4 -7
  241. package/realtime/websocket.d.mts.map +1 -1
  242. package/realtime/websocket.d.ts +4 -7
  243. package/realtime/websocket.d.ts.map +1 -1
  244. package/realtime/websocket.js +4 -8
  245. package/realtime/websocket.js.map +1 -1
  246. package/realtime/websocket.mjs +5 -9
  247. package/realtime/websocket.mjs.map +1 -1
  248. package/realtime/ws.d.mts +4 -7
  249. package/realtime/ws.d.mts.map +1 -1
  250. package/realtime/ws.d.ts +4 -7
  251. package/realtime/ws.d.ts.map +1 -1
  252. package/realtime/ws.js +4 -8
  253. package/realtime/ws.js.map +1 -1
  254. package/realtime/ws.mjs +5 -9
  255. package/realtime/ws.mjs.map +1 -1
  256. package/resources/realtime/client-secrets.d.mts +9 -4
  257. package/resources/realtime/client-secrets.d.mts.map +1 -1
  258. package/resources/realtime/client-secrets.d.ts +9 -4
  259. package/resources/realtime/client-secrets.d.ts.map +1 -1
  260. package/resources/realtime/realtime.d.mts +18 -8
  261. package/resources/realtime/realtime.d.mts.map +1 -1
  262. package/resources/realtime/realtime.d.ts +18 -8
  263. package/resources/realtime/realtime.d.ts.map +1 -1
  264. package/resources/realtime/realtime.js.map +1 -1
  265. package/resources/realtime/realtime.mjs.map +1 -1
  266. package/resources/responses/responses.d.mts +9 -4
  267. package/resources/responses/responses.d.mts.map +1 -1
  268. package/resources/responses/responses.d.ts +9 -4
  269. package/resources/responses/responses.d.ts.map +1 -1
  270. package/resources/responses/responses.js.map +1 -1
  271. package/resources/responses/responses.mjs.map +1 -1
  272. package/resources/videos.d.mts +1 -1
  273. package/resources/videos.d.ts +1 -1
  274. package/src/_vendor/zod-to-json-schema/parseDef.ts +44 -16
  275. package/src/_vendor/zod-to-json-schema/parsers/branded.ts +2 -2
  276. package/src/_vendor/zod-to-json-schema/parsers/catch.ts +2 -2
  277. package/src/_vendor/zod-to-json-schema/parsers/default.ts +6 -2
  278. package/src/_vendor/zod-to-json-schema/parsers/nullable.ts +13 -5
  279. package/src/_vendor/zod-to-json-schema/parsers/optional.ts +14 -6
  280. package/src/_vendor/zod-to-json-schema/parsers/pipeline.ts +3 -2
  281. package/src/_vendor/zod-to-json-schema/parsers/promise.ts +6 -2
  282. package/src/_vendor/zod-to-json-schema/parsers/readonly.ts +2 -2
  283. package/src/auth/workload-identity-auth.ts +16 -5
  284. package/src/azure.ts +4 -1
  285. package/src/beta/realtime/internal-base.ts +43 -5
  286. package/src/beta/realtime/websocket.ts +10 -7
  287. package/src/beta/realtime/ws.ts +10 -7
  288. package/src/client.ts +80 -18
  289. package/src/helpers/zod.ts +16 -0
  290. package/src/internal/bedrock.ts +153 -0
  291. package/src/internal/provider.ts +60 -0
  292. package/src/internal/utils/log.ts +1 -0
  293. package/src/lib/AbstractChatCompletionRunner.ts +96 -45
  294. package/src/lib/AssistantStream.ts +4 -20
  295. package/src/lib/ChatCompletionRunner.ts +1 -1
  296. package/src/lib/ChatCompletionStream.ts +4 -11
  297. package/src/lib/ChatCompletionStreamingRunner.ts +1 -1
  298. package/src/lib/EventEmitter.ts +11 -2
  299. package/src/lib/EventStream.ts +20 -0
  300. package/src/lib/ResponsesParser.ts +18 -4
  301. package/src/lib/responses/ResponseAccumulator.ts +412 -0
  302. package/src/lib/responses/ResponseInputItems.ts +127 -0
  303. package/src/lib/responses/ResponseStream.ts +4 -93
  304. package/src/providers/bedrock/aws.ts +255 -0
  305. package/src/providers/bedrock.ts +33 -0
  306. package/src/realtime/internal-base.ts +90 -7
  307. package/src/realtime/websocket.ts +15 -13
  308. package/src/realtime/ws.ts +15 -13
  309. package/src/resources/realtime/client-secrets.ts +10 -4
  310. package/src/resources/realtime/realtime.ts +20 -8
  311. package/src/resources/responses/responses.ts +10 -4
  312. package/src/resources/videos.ts +1 -1
  313. package/src/version.ts +1 -1
  314. package/version.d.mts +1 -1
  315. package/version.d.ts +1 -1
  316. package/version.js +1 -1
  317. package/version.mjs +1 -1
@@ -0,0 +1,402 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.accumulateResponse = accumulateResponse;
4
+ const error_1 = require("../../error.js");
5
+ const ResponsesParser_1 = require("../ResponsesParser.js");
6
+ /**
7
+ * Applies a streaming event to a response snapshot.
8
+ *
9
+ * Always use the returned snapshot. Incremental events update the supplied snapshot
10
+ * in place, while response lifecycle events return a detached replacement. Event
11
+ * payloads are cloned, so retaining or replaying the raw events is safe.
12
+ */
13
+ function accumulateResponse(event, snapshot) {
14
+ if (!snapshot) {
15
+ if (event.type !== 'response.created') {
16
+ throw new error_1.OpenAIError(`When snapshot hasn't been set yet, expected 'response.created' event, got ${event.type}`);
17
+ }
18
+ return cloneResponse(event.response);
19
+ }
20
+ switch (event.type) {
21
+ case 'response.output_item.added': {
22
+ snapshot.output.push(structuredClone(event.item));
23
+ if (event.item.type === 'message') {
24
+ (0, ResponsesParser_1.addOutputText)(snapshot);
25
+ }
26
+ break;
27
+ }
28
+ case 'response.output_item.done': {
29
+ getOutput(snapshot, event.output_index);
30
+ snapshot.output[event.output_index] = structuredClone(event.item);
31
+ if (event.item.type === 'message') {
32
+ (0, ResponsesParser_1.addOutputText)(snapshot);
33
+ }
34
+ break;
35
+ }
36
+ case 'response.content_part.added': {
37
+ const output = getOutput(snapshot, event.output_index);
38
+ const type = output.type;
39
+ const part = event.part;
40
+ if (type === 'message' && part.type !== 'reasoning_text') {
41
+ output.content.push(structuredClone(part));
42
+ if (part.type === 'output_text') {
43
+ (0, ResponsesParser_1.addOutputText)(snapshot);
44
+ }
45
+ }
46
+ else if (type === 'reasoning' && part.type === 'reasoning_text') {
47
+ if (!output.content) {
48
+ output.content = [];
49
+ }
50
+ output.content.push(structuredClone(part));
51
+ }
52
+ break;
53
+ }
54
+ case 'response.content_part.done': {
55
+ const output = getOutput(snapshot, event.output_index);
56
+ const part = event.part;
57
+ if (output.type === 'message' && part.type !== 'reasoning_text') {
58
+ getContent(output.content, event.content_index);
59
+ output.content[event.content_index] = structuredClone(part);
60
+ if (part.type === 'output_text') {
61
+ (0, ResponsesParser_1.addOutputText)(snapshot);
62
+ }
63
+ }
64
+ else if (output.type === 'reasoning' && part.type === 'reasoning_text') {
65
+ const content = output.content;
66
+ if (!content) {
67
+ throw new error_1.OpenAIError(`missing content at index ${event.content_index}`);
68
+ }
69
+ getContent(content, event.content_index);
70
+ content[event.content_index] = structuredClone(part);
71
+ }
72
+ break;
73
+ }
74
+ case 'response.output_text.delta': {
75
+ const output = getOutput(snapshot, event.output_index);
76
+ if (output.type === 'message') {
77
+ const content = getContent(output.content, event.content_index);
78
+ if (content.type !== 'output_text') {
79
+ throw new error_1.OpenAIError(`expected content to be 'output_text', got ${content.type}`);
80
+ }
81
+ content.text += event.delta;
82
+ snapshot.output_text += event.delta;
83
+ }
84
+ break;
85
+ }
86
+ case 'response.output_text.done': {
87
+ const output = getOutput(snapshot, event.output_index);
88
+ if (output.type === 'message') {
89
+ const content = getContent(output.content, event.content_index);
90
+ if (content.type !== 'output_text') {
91
+ throw new error_1.OpenAIError(`expected content to be 'output_text', got ${content.type}`);
92
+ }
93
+ content.text = event.text;
94
+ (0, ResponsesParser_1.addOutputText)(snapshot);
95
+ }
96
+ break;
97
+ }
98
+ case 'response.output_text.annotation.added': {
99
+ const output = getOutput(snapshot, event.output_index);
100
+ if (output.type === 'message') {
101
+ const content = getContent(output.content, event.content_index);
102
+ if (content.type !== 'output_text') {
103
+ throw new error_1.OpenAIError(`expected content to be 'output_text', got ${content.type}`);
104
+ }
105
+ content.annotations[event.annotation_index] = structuredClone(event.annotation);
106
+ }
107
+ break;
108
+ }
109
+ case 'response.refusal.delta': {
110
+ const output = getOutput(snapshot, event.output_index);
111
+ if (output.type === 'message') {
112
+ const content = getContent(output.content, event.content_index);
113
+ if (content.type !== 'refusal') {
114
+ throw new error_1.OpenAIError(`expected content to be 'refusal', got ${content.type}`);
115
+ }
116
+ content.refusal += event.delta;
117
+ }
118
+ break;
119
+ }
120
+ case 'response.refusal.done': {
121
+ const output = getOutput(snapshot, event.output_index);
122
+ if (output.type === 'message') {
123
+ const content = getContent(output.content, event.content_index);
124
+ if (content.type !== 'refusal') {
125
+ throw new error_1.OpenAIError(`expected content to be 'refusal', got ${content.type}`);
126
+ }
127
+ content.refusal = event.refusal;
128
+ }
129
+ break;
130
+ }
131
+ case 'response.function_call_arguments.delta': {
132
+ const output = getOutput(snapshot, event.output_index);
133
+ if (output.type === 'function_call') {
134
+ output.arguments += event.delta;
135
+ }
136
+ break;
137
+ }
138
+ case 'response.function_call_arguments.done': {
139
+ const output = getOutput(snapshot, event.output_index);
140
+ if (output.type === 'function_call') {
141
+ output.arguments = event.arguments;
142
+ }
143
+ break;
144
+ }
145
+ case 'response.reasoning_text.delta': {
146
+ const output = getOutput(snapshot, event.output_index);
147
+ if (output.type === 'reasoning') {
148
+ if (!output.content) {
149
+ throw new error_1.OpenAIError(`missing content at index ${event.content_index}`);
150
+ }
151
+ const content = getContent(output.content, event.content_index);
152
+ if (content.type !== 'reasoning_text') {
153
+ throw new error_1.OpenAIError(`expected content to be 'reasoning_text', got ${content.type}`);
154
+ }
155
+ content.text += event.delta;
156
+ }
157
+ break;
158
+ }
159
+ case 'response.reasoning_text.done': {
160
+ const output = getOutput(snapshot, event.output_index);
161
+ if (output.type === 'reasoning') {
162
+ if (!output.content) {
163
+ throw new error_1.OpenAIError(`missing content at index ${event.content_index}`);
164
+ }
165
+ const content = getContent(output.content, event.content_index);
166
+ if (content.type !== 'reasoning_text') {
167
+ throw new error_1.OpenAIError(`expected content to be 'reasoning_text', got ${content.type}`);
168
+ }
169
+ content.text = event.text;
170
+ }
171
+ break;
172
+ }
173
+ case 'response.reasoning_summary_part.added': {
174
+ const output = getOutput(snapshot, event.output_index);
175
+ if (output.type === 'reasoning') {
176
+ output.summary.push(structuredClone(event.part));
177
+ }
178
+ break;
179
+ }
180
+ case 'response.reasoning_summary_part.done': {
181
+ const output = getOutput(snapshot, event.output_index);
182
+ if (output.type === 'reasoning') {
183
+ getContent(output.summary, event.summary_index);
184
+ output.summary[event.summary_index] = structuredClone(event.part);
185
+ }
186
+ break;
187
+ }
188
+ case 'response.reasoning_summary_text.delta': {
189
+ const output = getOutput(snapshot, event.output_index);
190
+ if (output.type === 'reasoning') {
191
+ const part = getContent(output.summary, event.summary_index);
192
+ part.text += event.delta;
193
+ }
194
+ break;
195
+ }
196
+ case 'response.reasoning_summary_text.done': {
197
+ const output = getOutput(snapshot, event.output_index);
198
+ if (output.type === 'reasoning') {
199
+ const part = getContent(output.summary, event.summary_index);
200
+ part.text = event.text;
201
+ }
202
+ break;
203
+ }
204
+ case 'response.custom_tool_call_input.delta': {
205
+ const output = getOutput(snapshot, event.output_index);
206
+ if (output.type === 'custom_tool_call') {
207
+ output.input += event.delta;
208
+ }
209
+ break;
210
+ }
211
+ case 'response.custom_tool_call_input.done': {
212
+ const output = getOutput(snapshot, event.output_index);
213
+ if (output.type === 'custom_tool_call') {
214
+ output.input = event.input;
215
+ }
216
+ break;
217
+ }
218
+ case 'response.mcp_call_arguments.delta': {
219
+ const output = getOutput(snapshot, event.output_index);
220
+ if (output.type === 'mcp_call') {
221
+ output.arguments += event.delta;
222
+ }
223
+ break;
224
+ }
225
+ case 'response.mcp_call_arguments.done': {
226
+ const output = getOutput(snapshot, event.output_index);
227
+ if (output.type === 'mcp_call') {
228
+ output.arguments = event.arguments;
229
+ }
230
+ break;
231
+ }
232
+ case 'response.code_interpreter_call_code.delta': {
233
+ const output = getOutput(snapshot, event.output_index);
234
+ if (output.type === 'code_interpreter_call') {
235
+ output.code = (output.code ?? '') + event.delta;
236
+ }
237
+ break;
238
+ }
239
+ case 'response.code_interpreter_call_code.done': {
240
+ const output = getOutput(snapshot, event.output_index);
241
+ if (output.type === 'code_interpreter_call') {
242
+ output.code = event.code;
243
+ }
244
+ break;
245
+ }
246
+ case 'response.code_interpreter_call.in_progress': {
247
+ const output = getOutput(snapshot, event.output_index);
248
+ if (output.type === 'code_interpreter_call') {
249
+ output.status = 'in_progress';
250
+ }
251
+ break;
252
+ }
253
+ case 'response.code_interpreter_call.interpreting': {
254
+ const output = getOutput(snapshot, event.output_index);
255
+ if (output.type === 'code_interpreter_call') {
256
+ output.status = 'interpreting';
257
+ }
258
+ break;
259
+ }
260
+ case 'response.code_interpreter_call.completed': {
261
+ const output = getOutput(snapshot, event.output_index);
262
+ if (output.type === 'code_interpreter_call') {
263
+ output.status = 'completed';
264
+ }
265
+ break;
266
+ }
267
+ case 'response.file_search_call.in_progress': {
268
+ const output = getOutput(snapshot, event.output_index);
269
+ if (output.type === 'file_search_call') {
270
+ output.status = 'in_progress';
271
+ }
272
+ break;
273
+ }
274
+ case 'response.file_search_call.searching': {
275
+ const output = getOutput(snapshot, event.output_index);
276
+ if (output.type === 'file_search_call') {
277
+ output.status = 'searching';
278
+ }
279
+ break;
280
+ }
281
+ case 'response.file_search_call.completed': {
282
+ const output = getOutput(snapshot, event.output_index);
283
+ if (output.type === 'file_search_call') {
284
+ output.status = 'completed';
285
+ }
286
+ break;
287
+ }
288
+ case 'response.web_search_call.in_progress': {
289
+ const output = getOutput(snapshot, event.output_index);
290
+ if (output.type === 'web_search_call') {
291
+ output.status = 'in_progress';
292
+ }
293
+ break;
294
+ }
295
+ case 'response.web_search_call.searching': {
296
+ const output = getOutput(snapshot, event.output_index);
297
+ if (output.type === 'web_search_call') {
298
+ output.status = 'searching';
299
+ }
300
+ break;
301
+ }
302
+ case 'response.web_search_call.completed': {
303
+ const output = getOutput(snapshot, event.output_index);
304
+ if (output.type === 'web_search_call') {
305
+ output.status = 'completed';
306
+ }
307
+ break;
308
+ }
309
+ case 'response.image_generation_call.in_progress': {
310
+ const output = getOutput(snapshot, event.output_index);
311
+ if (output.type === 'image_generation_call') {
312
+ output.status = 'in_progress';
313
+ }
314
+ break;
315
+ }
316
+ case 'response.image_generation_call.generating': {
317
+ const output = getOutput(snapshot, event.output_index);
318
+ if (output.type === 'image_generation_call') {
319
+ output.status = 'generating';
320
+ }
321
+ break;
322
+ }
323
+ case 'response.image_generation_call.completed': {
324
+ const output = getOutput(snapshot, event.output_index);
325
+ if (output.type === 'image_generation_call') {
326
+ output.status = 'completed';
327
+ }
328
+ break;
329
+ }
330
+ case 'response.mcp_call.in_progress': {
331
+ const output = getOutput(snapshot, event.output_index);
332
+ if (output.type === 'mcp_call') {
333
+ output.status = 'in_progress';
334
+ }
335
+ break;
336
+ }
337
+ case 'response.mcp_call.completed': {
338
+ const output = getOutput(snapshot, event.output_index);
339
+ if (output.type === 'mcp_call') {
340
+ output.status = 'completed';
341
+ }
342
+ break;
343
+ }
344
+ case 'response.mcp_call.failed': {
345
+ const output = getOutput(snapshot, event.output_index);
346
+ if (output.type === 'mcp_call') {
347
+ output.status = 'failed';
348
+ }
349
+ break;
350
+ }
351
+ case 'response.created':
352
+ case 'response.queued':
353
+ case 'response.in_progress':
354
+ case 'response.completed':
355
+ case 'response.failed':
356
+ case 'response.incomplete': {
357
+ snapshot = cloneResponse(event.response);
358
+ break;
359
+ }
360
+ case 'response.audio.delta':
361
+ case 'response.audio.done':
362
+ case 'response.audio.transcript.delta':
363
+ case 'response.audio.transcript.done':
364
+ case 'response.image_generation_call.partial_image':
365
+ case 'response.mcp_list_tools.in_progress':
366
+ case 'response.mcp_list_tools.completed':
367
+ case 'response.mcp_list_tools.failed':
368
+ case 'error': {
369
+ // These events do not contain state represented by the Response object.
370
+ break;
371
+ }
372
+ default: {
373
+ assertNever(event);
374
+ }
375
+ }
376
+ return snapshot;
377
+ }
378
+ function cloneResponse(response) {
379
+ const snapshot = structuredClone(response);
380
+ if (!Object.getOwnPropertyDescriptor(snapshot, 'output_text') || snapshot.output_text == null) {
381
+ (0, ResponsesParser_1.addOutputText)(snapshot);
382
+ }
383
+ return snapshot;
384
+ }
385
+ function getOutput(snapshot, outputIndex) {
386
+ const output = snapshot.output[outputIndex];
387
+ if (!output) {
388
+ throw new error_1.OpenAIError(`missing output at index ${outputIndex}`);
389
+ }
390
+ return output;
391
+ }
392
+ function getContent(content, contentIndex) {
393
+ const part = content[contentIndex];
394
+ if (!part) {
395
+ throw new error_1.OpenAIError(`missing content at index ${contentIndex}`);
396
+ }
397
+ return part;
398
+ }
399
+ function assertNever(value) {
400
+ throw new error_1.OpenAIError(`Unhandled response stream event: ${JSON.stringify(value)}`);
401
+ }
402
+ //# sourceMappingURL=ResponseAccumulator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ResponseAccumulator.js","sourceRoot":"","sources":["../../src/lib/responses/ResponseAccumulator.ts"],"names":[],"mappings":"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"}