openai 4.53.2 → 4.55.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 (463) hide show
  1. package/CHANGELOG.md +29 -0
  2. package/README.md +2 -2
  3. package/_vendor/partial-json-parser/parser.d.ts +3 -0
  4. package/_vendor/partial-json-parser/parser.d.ts.map +1 -0
  5. package/_vendor/partial-json-parser/parser.js +226 -0
  6. package/_vendor/partial-json-parser/parser.js.map +1 -0
  7. package/_vendor/partial-json-parser/parser.mjs +223 -0
  8. package/_vendor/partial-json-parser/parser.mjs.map +1 -0
  9. package/_vendor/zod-to-json-schema/Options.d.ts +32 -0
  10. package/_vendor/zod-to-json-schema/Options.d.ts.map +1 -0
  11. package/_vendor/zod-to-json-schema/Options.js +36 -0
  12. package/_vendor/zod-to-json-schema/Options.js.map +1 -0
  13. package/_vendor/zod-to-json-schema/Options.mjs +32 -0
  14. package/_vendor/zod-to-json-schema/Options.mjs.map +1 -0
  15. package/_vendor/zod-to-json-schema/Refs.d.ts +15 -0
  16. package/_vendor/zod-to-json-schema/Refs.d.ts.map +1 -0
  17. package/_vendor/zod-to-json-schema/Refs.js +26 -0
  18. package/_vendor/zod-to-json-schema/Refs.js.map +1 -0
  19. package/_vendor/zod-to-json-schema/Refs.mjs +22 -0
  20. package/_vendor/zod-to-json-schema/Refs.mjs.map +1 -0
  21. package/_vendor/zod-to-json-schema/errorMessages.d.ts +12 -0
  22. package/_vendor/zod-to-json-schema/errorMessages.d.ts.map +1 -0
  23. package/_vendor/zod-to-json-schema/errorMessages.js +20 -0
  24. package/_vendor/zod-to-json-schema/errorMessages.js.map +1 -0
  25. package/_vendor/zod-to-json-schema/errorMessages.mjs +15 -0
  26. package/_vendor/zod-to-json-schema/errorMessages.mjs.map +1 -0
  27. package/_vendor/zod-to-json-schema/index.d.ts +38 -0
  28. package/_vendor/zod-to-json-schema/index.d.ts.map +1 -0
  29. package/_vendor/zod-to-json-schema/index.js +54 -0
  30. package/_vendor/zod-to-json-schema/index.js.map +1 -0
  31. package/_vendor/zod-to-json-schema/index.mjs +38 -0
  32. package/_vendor/zod-to-json-schema/index.mjs.map +1 -0
  33. package/_vendor/zod-to-json-schema/parseDef.d.ts +38 -0
  34. package/_vendor/zod-to-json-schema/parseDef.d.ts.map +1 -0
  35. package/_vendor/zod-to-json-schema/parseDef.js +168 -0
  36. package/_vendor/zod-to-json-schema/parseDef.js.map +1 -0
  37. package/_vendor/zod-to-json-schema/parseDef.mjs +164 -0
  38. package/_vendor/zod-to-json-schema/parseDef.mjs.map +1 -0
  39. package/_vendor/zod-to-json-schema/parsers/any.d.ts +3 -0
  40. package/_vendor/zod-to-json-schema/parsers/any.d.ts.map +1 -0
  41. package/_vendor/zod-to-json-schema/parsers/any.js +8 -0
  42. package/_vendor/zod-to-json-schema/parsers/any.js.map +1 -0
  43. package/_vendor/zod-to-json-schema/parsers/any.mjs +4 -0
  44. package/_vendor/zod-to-json-schema/parsers/any.mjs.map +1 -0
  45. package/_vendor/zod-to-json-schema/parsers/array.d.ts +13 -0
  46. package/_vendor/zod-to-json-schema/parsers/array.d.ts.map +1 -0
  47. package/_vendor/zod-to-json-schema/parsers/array.js +30 -0
  48. package/_vendor/zod-to-json-schema/parsers/array.js.map +1 -0
  49. package/_vendor/zod-to-json-schema/parsers/array.mjs +26 -0
  50. package/_vendor/zod-to-json-schema/parsers/array.mjs.map +1 -0
  51. package/_vendor/zod-to-json-schema/parsers/bigint.d.ts +15 -0
  52. package/_vendor/zod-to-json-schema/parsers/bigint.d.ts.map +1 -0
  53. package/_vendor/zod-to-json-schema/parsers/bigint.js +54 -0
  54. package/_vendor/zod-to-json-schema/parsers/bigint.js.map +1 -0
  55. package/_vendor/zod-to-json-schema/parsers/bigint.mjs +50 -0
  56. package/_vendor/zod-to-json-schema/parsers/bigint.mjs.map +1 -0
  57. package/_vendor/zod-to-json-schema/parsers/boolean.d.ts +5 -0
  58. package/_vendor/zod-to-json-schema/parsers/boolean.d.ts.map +1 -0
  59. package/_vendor/zod-to-json-schema/parsers/boolean.js +10 -0
  60. package/_vendor/zod-to-json-schema/parsers/boolean.js.map +1 -0
  61. package/_vendor/zod-to-json-schema/parsers/boolean.mjs +6 -0
  62. package/_vendor/zod-to-json-schema/parsers/boolean.mjs.map +1 -0
  63. package/_vendor/zod-to-json-schema/parsers/branded.d.ts +4 -0
  64. package/_vendor/zod-to-json-schema/parsers/branded.d.ts.map +1 -0
  65. package/_vendor/zod-to-json-schema/parsers/branded.js +9 -0
  66. package/_vendor/zod-to-json-schema/parsers/branded.js.map +1 -0
  67. package/_vendor/zod-to-json-schema/parsers/branded.mjs +5 -0
  68. package/_vendor/zod-to-json-schema/parsers/branded.mjs.map +1 -0
  69. package/_vendor/zod-to-json-schema/parsers/catch.d.ts +4 -0
  70. package/_vendor/zod-to-json-schema/parsers/catch.d.ts.map +1 -0
  71. package/_vendor/zod-to-json-schema/parsers/catch.js +9 -0
  72. package/_vendor/zod-to-json-schema/parsers/catch.js.map +1 -0
  73. package/_vendor/zod-to-json-schema/parsers/catch.mjs +5 -0
  74. package/_vendor/zod-to-json-schema/parsers/catch.mjs.map +1 -0
  75. package/_vendor/zod-to-json-schema/parsers/date.d.ts +16 -0
  76. package/_vendor/zod-to-json-schema/parsers/date.d.ts.map +1 -0
  77. package/_vendor/zod-to-json-schema/parsers/date.js +51 -0
  78. package/_vendor/zod-to-json-schema/parsers/date.js.map +1 -0
  79. package/_vendor/zod-to-json-schema/parsers/date.mjs +47 -0
  80. package/_vendor/zod-to-json-schema/parsers/date.mjs.map +1 -0
  81. package/_vendor/zod-to-json-schema/parsers/default.d.ts +7 -0
  82. package/_vendor/zod-to-json-schema/parsers/default.d.ts.map +1 -0
  83. package/_vendor/zod-to-json-schema/parsers/default.js +12 -0
  84. package/_vendor/zod-to-json-schema/parsers/default.js.map +1 -0
  85. package/_vendor/zod-to-json-schema/parsers/default.mjs +8 -0
  86. package/_vendor/zod-to-json-schema/parsers/default.mjs.map +1 -0
  87. package/_vendor/zod-to-json-schema/parsers/effects.d.ts +5 -0
  88. package/_vendor/zod-to-json-schema/parsers/effects.d.ts.map +1 -0
  89. package/_vendor/zod-to-json-schema/parsers/effects.js +9 -0
  90. package/_vendor/zod-to-json-schema/parsers/effects.js.map +1 -0
  91. package/_vendor/zod-to-json-schema/parsers/effects.mjs +5 -0
  92. package/_vendor/zod-to-json-schema/parsers/effects.mjs.map +1 -0
  93. package/_vendor/zod-to-json-schema/parsers/enum.d.ts +7 -0
  94. package/_vendor/zod-to-json-schema/parsers/enum.d.ts.map +1 -0
  95. package/_vendor/zod-to-json-schema/parsers/enum.js +11 -0
  96. package/_vendor/zod-to-json-schema/parsers/enum.js.map +1 -0
  97. package/_vendor/zod-to-json-schema/parsers/enum.mjs +7 -0
  98. package/_vendor/zod-to-json-schema/parsers/enum.mjs.map +1 -0
  99. package/_vendor/zod-to-json-schema/parsers/intersection.d.ts +9 -0
  100. package/_vendor/zod-to-json-schema/parsers/intersection.d.ts.map +1 -0
  101. package/_vendor/zod-to-json-schema/parsers/intersection.js +54 -0
  102. package/_vendor/zod-to-json-schema/parsers/intersection.js.map +1 -0
  103. package/_vendor/zod-to-json-schema/parsers/intersection.mjs +50 -0
  104. package/_vendor/zod-to-json-schema/parsers/intersection.mjs.map +1 -0
  105. package/_vendor/zod-to-json-schema/parsers/literal.d.ts +10 -0
  106. package/_vendor/zod-to-json-schema/parsers/literal.d.ts.map +1 -0
  107. package/_vendor/zod-to-json-schema/parsers/literal.js +26 -0
  108. package/_vendor/zod-to-json-schema/parsers/literal.js.map +1 -0
  109. package/_vendor/zod-to-json-schema/parsers/literal.mjs +22 -0
  110. package/_vendor/zod-to-json-schema/parsers/literal.mjs.map +1 -0
  111. package/_vendor/zod-to-json-schema/parsers/map.d.ts +16 -0
  112. package/_vendor/zod-to-json-schema/parsers/map.d.ts.map +1 -0
  113. package/_vendor/zod-to-json-schema/parsers/map.js +30 -0
  114. package/_vendor/zod-to-json-schema/parsers/map.js.map +1 -0
  115. package/_vendor/zod-to-json-schema/parsers/map.mjs +26 -0
  116. package/_vendor/zod-to-json-schema/parsers/map.mjs.map +1 -0
  117. package/_vendor/zod-to-json-schema/parsers/nativeEnum.d.ts +7 -0
  118. package/_vendor/zod-to-json-schema/parsers/nativeEnum.d.ts.map +1 -0
  119. package/_vendor/zod-to-json-schema/parsers/nativeEnum.js +21 -0
  120. package/_vendor/zod-to-json-schema/parsers/nativeEnum.js.map +1 -0
  121. package/_vendor/zod-to-json-schema/parsers/nativeEnum.mjs +17 -0
  122. package/_vendor/zod-to-json-schema/parsers/nativeEnum.mjs.map +1 -0
  123. package/_vendor/zod-to-json-schema/parsers/never.d.ts +5 -0
  124. package/_vendor/zod-to-json-schema/parsers/never.d.ts.map +1 -0
  125. package/_vendor/zod-to-json-schema/parsers/never.js +10 -0
  126. package/_vendor/zod-to-json-schema/parsers/never.js.map +1 -0
  127. package/_vendor/zod-to-json-schema/parsers/never.mjs +6 -0
  128. package/_vendor/zod-to-json-schema/parsers/never.mjs.map +1 -0
  129. package/_vendor/zod-to-json-schema/parsers/null.d.ts +6 -0
  130. package/_vendor/zod-to-json-schema/parsers/null.d.ts.map +1 -0
  131. package/_vendor/zod-to-json-schema/parsers/null.js +15 -0
  132. package/_vendor/zod-to-json-schema/parsers/null.js.map +1 -0
  133. package/_vendor/zod-to-json-schema/parsers/null.mjs +11 -0
  134. package/_vendor/zod-to-json-schema/parsers/null.mjs.map +1 -0
  135. package/_vendor/zod-to-json-schema/parsers/nullable.d.ts +11 -0
  136. package/_vendor/zod-to-json-schema/parsers/nullable.d.ts.map +1 -0
  137. package/_vendor/zod-to-json-schema/parsers/nullable.js +35 -0
  138. package/_vendor/zod-to-json-schema/parsers/nullable.js.map +1 -0
  139. package/_vendor/zod-to-json-schema/parsers/nullable.mjs +31 -0
  140. package/_vendor/zod-to-json-schema/parsers/nullable.mjs.map +1 -0
  141. package/_vendor/zod-to-json-schema/parsers/number.d.ts +14 -0
  142. package/_vendor/zod-to-json-schema/parsers/number.d.ts.map +1 -0
  143. package/_vendor/zod-to-json-schema/parsers/number.js +57 -0
  144. package/_vendor/zod-to-json-schema/parsers/number.js.map +1 -0
  145. package/_vendor/zod-to-json-schema/parsers/number.mjs +53 -0
  146. package/_vendor/zod-to-json-schema/parsers/number.mjs.map +1 -0
  147. package/_vendor/zod-to-json-schema/parsers/object.d.ts +11 -0
  148. package/_vendor/zod-to-json-schema/parsers/object.d.ts.map +1 -0
  149. package/_vendor/zod-to-json-schema/parsers/object.js +51 -0
  150. package/_vendor/zod-to-json-schema/parsers/object.js.map +1 -0
  151. package/_vendor/zod-to-json-schema/parsers/object.mjs +47 -0
  152. package/_vendor/zod-to-json-schema/parsers/object.mjs.map +1 -0
  153. package/_vendor/zod-to-json-schema/parsers/optional.d.ts +5 -0
  154. package/_vendor/zod-to-json-schema/parsers/optional.d.ts.map +1 -0
  155. package/_vendor/zod-to-json-schema/parsers/optional.js +25 -0
  156. package/_vendor/zod-to-json-schema/parsers/optional.js.map +1 -0
  157. package/_vendor/zod-to-json-schema/parsers/optional.mjs +21 -0
  158. package/_vendor/zod-to-json-schema/parsers/optional.mjs.map +1 -0
  159. package/_vendor/zod-to-json-schema/parsers/pipeline.d.ts +6 -0
  160. package/_vendor/zod-to-json-schema/parsers/pipeline.d.ts.map +1 -0
  161. package/_vendor/zod-to-json-schema/parsers/pipeline.js +25 -0
  162. package/_vendor/zod-to-json-schema/parsers/pipeline.js.map +1 -0
  163. package/_vendor/zod-to-json-schema/parsers/pipeline.mjs +21 -0
  164. package/_vendor/zod-to-json-schema/parsers/pipeline.mjs.map +1 -0
  165. package/_vendor/zod-to-json-schema/parsers/promise.d.ts +5 -0
  166. package/_vendor/zod-to-json-schema/parsers/promise.d.ts.map +1 -0
  167. package/_vendor/zod-to-json-schema/parsers/promise.js +9 -0
  168. package/_vendor/zod-to-json-schema/parsers/promise.js.map +1 -0
  169. package/_vendor/zod-to-json-schema/parsers/promise.mjs +5 -0
  170. package/_vendor/zod-to-json-schema/parsers/promise.mjs.map +1 -0
  171. package/_vendor/zod-to-json-schema/parsers/readonly.d.ts +4 -0
  172. package/_vendor/zod-to-json-schema/parsers/readonly.d.ts.map +1 -0
  173. package/_vendor/zod-to-json-schema/parsers/readonly.js +9 -0
  174. package/_vendor/zod-to-json-schema/parsers/readonly.js.map +1 -0
  175. package/_vendor/zod-to-json-schema/parsers/readonly.mjs +5 -0
  176. package/_vendor/zod-to-json-schema/parsers/readonly.mjs.map +1 -0
  177. package/_vendor/zod-to-json-schema/parsers/record.d.ts +14 -0
  178. package/_vendor/zod-to-json-schema/parsers/record.d.ts.map +1 -0
  179. package/_vendor/zod-to-json-schema/parsers/record.js +50 -0
  180. package/_vendor/zod-to-json-schema/parsers/record.js.map +1 -0
  181. package/_vendor/zod-to-json-schema/parsers/record.mjs +46 -0
  182. package/_vendor/zod-to-json-schema/parsers/record.mjs.map +1 -0
  183. package/_vendor/zod-to-json-schema/parsers/set.d.ts +14 -0
  184. package/_vendor/zod-to-json-schema/parsers/set.d.ts.map +1 -0
  185. package/_vendor/zod-to-json-schema/parsers/set.js +25 -0
  186. package/_vendor/zod-to-json-schema/parsers/set.js.map +1 -0
  187. package/_vendor/zod-to-json-schema/parsers/set.mjs +21 -0
  188. package/_vendor/zod-to-json-schema/parsers/set.mjs.map +1 -0
  189. package/_vendor/zod-to-json-schema/parsers/string.d.ts +70 -0
  190. package/_vendor/zod-to-json-schema/parsers/string.d.ts.map +1 -0
  191. package/_vendor/zod-to-json-schema/parsers/string.js +316 -0
  192. package/_vendor/zod-to-json-schema/parsers/string.js.map +1 -0
  193. package/_vendor/zod-to-json-schema/parsers/string.mjs +312 -0
  194. package/_vendor/zod-to-json-schema/parsers/string.mjs.map +1 -0
  195. package/_vendor/zod-to-json-schema/parsers/tuple.d.ts +14 -0
  196. package/_vendor/zod-to-json-schema/parsers/tuple.d.ts.map +1 -0
  197. package/_vendor/zod-to-json-schema/parsers/tuple.js +37 -0
  198. package/_vendor/zod-to-json-schema/parsers/tuple.js.map +1 -0
  199. package/_vendor/zod-to-json-schema/parsers/tuple.mjs +33 -0
  200. package/_vendor/zod-to-json-schema/parsers/tuple.mjs.map +1 -0
  201. package/_vendor/zod-to-json-schema/parsers/undefined.d.ts +5 -0
  202. package/_vendor/zod-to-json-schema/parsers/undefined.d.ts.map +1 -0
  203. package/_vendor/zod-to-json-schema/parsers/undefined.js +10 -0
  204. package/_vendor/zod-to-json-schema/parsers/undefined.js.map +1 -0
  205. package/_vendor/zod-to-json-schema/parsers/undefined.mjs +6 -0
  206. package/_vendor/zod-to-json-schema/parsers/undefined.mjs.map +1 -0
  207. package/_vendor/zod-to-json-schema/parsers/union.d.ts +24 -0
  208. package/_vendor/zod-to-json-schema/parsers/union.d.ts.map +1 -0
  209. package/_vendor/zod-to-json-schema/parsers/union.js +77 -0
  210. package/_vendor/zod-to-json-schema/parsers/union.js.map +1 -0
  211. package/_vendor/zod-to-json-schema/parsers/union.mjs +73 -0
  212. package/_vendor/zod-to-json-schema/parsers/union.mjs.map +1 -0
  213. package/_vendor/zod-to-json-schema/parsers/unknown.d.ts +3 -0
  214. package/_vendor/zod-to-json-schema/parsers/unknown.d.ts.map +1 -0
  215. package/_vendor/zod-to-json-schema/parsers/unknown.js +8 -0
  216. package/_vendor/zod-to-json-schema/parsers/unknown.js.map +1 -0
  217. package/_vendor/zod-to-json-schema/parsers/unknown.mjs +4 -0
  218. package/_vendor/zod-to-json-schema/parsers/unknown.mjs.map +1 -0
  219. package/_vendor/zod-to-json-schema/zodToJsonSchema.d.ts +11 -0
  220. package/_vendor/zod-to-json-schema/zodToJsonSchema.d.ts.map +1 -0
  221. package/_vendor/zod-to-json-schema/zodToJsonSchema.js +53 -0
  222. package/_vendor/zod-to-json-schema/zodToJsonSchema.js.map +1 -0
  223. package/_vendor/zod-to-json-schema/zodToJsonSchema.mjs +50 -0
  224. package/_vendor/zod-to-json-schema/zodToJsonSchema.mjs.map +1 -0
  225. package/error.d.ts +6 -0
  226. package/error.d.ts.map +1 -1
  227. package/error.js +13 -1
  228. package/error.js.map +1 -1
  229. package/error.mjs +10 -0
  230. package/error.mjs.map +1 -1
  231. package/helpers/zod.d.ts +57 -0
  232. package/helpers/zod.d.ts.map +1 -0
  233. package/helpers/zod.js +79 -0
  234. package/helpers/zod.js.map +1 -0
  235. package/helpers/zod.mjs +74 -0
  236. package/helpers/zod.mjs.map +1 -0
  237. package/index.d.mts +8 -0
  238. package/index.d.ts +8 -0
  239. package/index.d.ts.map +1 -1
  240. package/index.js +1 -0
  241. package/index.js.map +1 -1
  242. package/index.mjs +1 -0
  243. package/index.mjs.map +1 -1
  244. package/lib/AbstractChatCompletionRunner.d.ts +15 -68
  245. package/lib/AbstractChatCompletionRunner.d.ts.map +1 -1
  246. package/lib/AbstractChatCompletionRunner.js +47 -200
  247. package/lib/AbstractChatCompletionRunner.js.map +1 -1
  248. package/lib/AbstractChatCompletionRunner.mjs +48 -201
  249. package/lib/AbstractChatCompletionRunner.mjs.map +1 -1
  250. package/lib/AssistantStream.d.ts +10 -6
  251. package/lib/AssistantStream.d.ts.map +1 -1
  252. package/lib/AssistantStream.js +18 -6
  253. package/lib/AssistantStream.js.map +1 -1
  254. package/lib/AssistantStream.mjs +18 -6
  255. package/lib/AssistantStream.mjs.map +1 -1
  256. package/lib/ChatCompletionRunner.d.ts +8 -6
  257. package/lib/ChatCompletionRunner.d.ts.map +1 -1
  258. package/lib/ChatCompletionRunner.js +4 -4
  259. package/lib/ChatCompletionRunner.js.map +1 -1
  260. package/lib/ChatCompletionRunner.mjs +4 -4
  261. package/lib/ChatCompletionRunner.mjs.map +1 -1
  262. package/lib/ChatCompletionStream.d.ts +71 -12
  263. package/lib/ChatCompletionStream.d.ts.map +1 -1
  264. package/lib/ChatCompletionStream.js +233 -42
  265. package/lib/ChatCompletionStream.js.map +1 -1
  266. package/lib/ChatCompletionStream.mjs +234 -43
  267. package/lib/ChatCompletionStream.mjs.map +1 -1
  268. package/lib/ChatCompletionStreamingRunner.d.ts +8 -6
  269. package/lib/ChatCompletionStreamingRunner.d.ts.map +1 -1
  270. package/lib/ChatCompletionStreamingRunner.js +9 -7
  271. package/lib/ChatCompletionStreamingRunner.js.map +1 -1
  272. package/lib/ChatCompletionStreamingRunner.mjs +9 -7
  273. package/lib/ChatCompletionStreamingRunner.mjs.map +1 -1
  274. package/lib/EventStream.d.ts +63 -0
  275. package/lib/EventStream.d.ts.map +1 -0
  276. package/lib/EventStream.js +200 -0
  277. package/lib/EventStream.js.map +1 -0
  278. package/lib/EventStream.mjs +196 -0
  279. package/lib/EventStream.mjs.map +1 -0
  280. package/lib/RunnableFunction.d.ts +4 -2
  281. package/lib/RunnableFunction.d.ts.map +1 -1
  282. package/lib/RunnableFunction.js.map +1 -1
  283. package/lib/RunnableFunction.mjs.map +1 -1
  284. package/lib/parser.d.ts +37 -0
  285. package/lib/parser.d.ts.map +1 -0
  286. package/lib/parser.js +133 -0
  287. package/lib/parser.js.map +1 -0
  288. package/lib/parser.mjs +121 -0
  289. package/lib/parser.mjs.map +1 -0
  290. package/package.json +10 -2
  291. package/resources/audio/audio.d.ts +4 -0
  292. package/resources/audio/audio.d.ts.map +1 -1
  293. package/resources/audio/audio.js.map +1 -1
  294. package/resources/audio/audio.mjs.map +1 -1
  295. package/resources/audio/index.d.ts +2 -2
  296. package/resources/audio/index.d.ts.map +1 -1
  297. package/resources/audio/index.js.map +1 -1
  298. package/resources/audio/index.mjs.map +1 -1
  299. package/resources/audio/speech.d.ts +3 -1
  300. package/resources/audio/speech.d.ts.map +1 -1
  301. package/resources/audio/speech.js.map +1 -1
  302. package/resources/audio/speech.mjs.map +1 -1
  303. package/resources/audio/transcriptions.d.ts +2 -1
  304. package/resources/audio/transcriptions.d.ts.map +1 -1
  305. package/resources/audio/transcriptions.js.map +1 -1
  306. package/resources/audio/transcriptions.mjs.map +1 -1
  307. package/resources/audio/translations.d.ts +2 -1
  308. package/resources/audio/translations.d.ts.map +1 -1
  309. package/resources/audio/translations.js.map +1 -1
  310. package/resources/audio/translations.mjs.map +1 -1
  311. package/resources/beta/assistants.d.ts +19 -3
  312. package/resources/beta/assistants.d.ts.map +1 -1
  313. package/resources/beta/assistants.js.map +1 -1
  314. package/resources/beta/assistants.mjs.map +1 -1
  315. package/resources/beta/beta.d.ts +0 -1
  316. package/resources/beta/beta.d.ts.map +1 -1
  317. package/resources/beta/beta.js.map +1 -1
  318. package/resources/beta/beta.mjs.map +1 -1
  319. package/resources/beta/chat/completions.d.ts +25 -5
  320. package/resources/beta/chat/completions.d.ts.map +1 -1
  321. package/resources/beta/chat/completions.js +17 -5
  322. package/resources/beta/chat/completions.js.map +1 -1
  323. package/resources/beta/chat/completions.mjs +17 -5
  324. package/resources/beta/chat/completions.mjs.map +1 -1
  325. package/resources/beta/index.d.ts +1 -1
  326. package/resources/beta/index.d.ts.map +1 -1
  327. package/resources/beta/index.js.map +1 -1
  328. package/resources/beta/index.mjs.map +1 -1
  329. package/resources/beta/threads/index.d.ts +2 -2
  330. package/resources/beta/threads/index.d.ts.map +1 -1
  331. package/resources/beta/threads/index.js.map +1 -1
  332. package/resources/beta/threads/index.mjs.map +1 -1
  333. package/resources/beta/threads/messages.d.ts +28 -2
  334. package/resources/beta/threads/messages.d.ts.map +1 -1
  335. package/resources/beta/threads/messages.js.map +1 -1
  336. package/resources/beta/threads/messages.mjs.map +1 -1
  337. package/resources/beta/threads/runs/runs.d.ts +12 -1
  338. package/resources/beta/threads/runs/runs.d.ts.map +1 -1
  339. package/resources/beta/threads/runs/runs.js.map +1 -1
  340. package/resources/beta/threads/runs/runs.mjs.map +1 -1
  341. package/resources/beta/threads/threads.d.ts +22 -8
  342. package/resources/beta/threads/threads.d.ts.map +1 -1
  343. package/resources/beta/threads/threads.js.map +1 -1
  344. package/resources/beta/threads/threads.mjs.map +1 -1
  345. package/resources/beta/vector-stores/files.d.ts +1 -1
  346. package/resources/beta/vector-stores/files.d.ts.map +1 -1
  347. package/resources/chat/chat.d.ts +2 -1
  348. package/resources/chat/chat.d.ts.map +1 -1
  349. package/resources/chat/chat.js.map +1 -1
  350. package/resources/chat/chat.mjs.map +1 -1
  351. package/resources/chat/completions.d.ts +37 -26
  352. package/resources/chat/completions.d.ts.map +1 -1
  353. package/resources/chat/completions.js.map +1 -1
  354. package/resources/chat/completions.mjs.map +1 -1
  355. package/resources/chat/index.d.ts +1 -1
  356. package/resources/chat/index.d.ts.map +1 -1
  357. package/resources/chat/index.js.map +1 -1
  358. package/resources/chat/index.mjs.map +1 -1
  359. package/resources/fine-tuning/jobs/jobs.d.ts +3 -3
  360. package/resources/fine-tuning/jobs/jobs.d.ts.map +1 -1
  361. package/resources/images.d.ts +5 -3
  362. package/resources/images.d.ts.map +1 -1
  363. package/resources/images.js.map +1 -1
  364. package/resources/images.mjs.map +1 -1
  365. package/resources/index.d.ts +3 -3
  366. package/resources/index.d.ts.map +1 -1
  367. package/resources/index.js.map +1 -1
  368. package/resources/index.mjs +1 -1
  369. package/resources/index.mjs.map +1 -1
  370. package/resources/moderations.d.ts +3 -1
  371. package/resources/moderations.d.ts.map +1 -1
  372. package/resources/moderations.js.map +1 -1
  373. package/resources/moderations.mjs.map +1 -1
  374. package/resources/shared.d.ts +53 -0
  375. package/resources/shared.d.ts.map +1 -1
  376. package/src/_vendor/partial-json-parser/README.md +3 -0
  377. package/src/_vendor/partial-json-parser/parser.ts +264 -0
  378. package/src/_vendor/zod-to-json-schema/Options.ts +73 -0
  379. package/src/_vendor/zod-to-json-schema/Refs.ts +39 -0
  380. package/src/_vendor/zod-to-json-schema/errorMessages.ts +31 -0
  381. package/src/_vendor/zod-to-json-schema/index.ts +37 -0
  382. package/src/_vendor/zod-to-json-schema/parseDef.ts +231 -0
  383. package/src/_vendor/zod-to-json-schema/parsers/any.ts +5 -0
  384. package/src/_vendor/zod-to-json-schema/parsers/array.ts +36 -0
  385. package/src/_vendor/zod-to-json-schema/parsers/bigint.ts +60 -0
  386. package/src/_vendor/zod-to-json-schema/parsers/boolean.ts +9 -0
  387. package/src/_vendor/zod-to-json-schema/parsers/branded.ts +7 -0
  388. package/src/_vendor/zod-to-json-schema/parsers/catch.ts +7 -0
  389. package/src/_vendor/zod-to-json-schema/parsers/date.ts +83 -0
  390. package/src/_vendor/zod-to-json-schema/parsers/default.ts +10 -0
  391. package/src/_vendor/zod-to-json-schema/parsers/effects.ts +7 -0
  392. package/src/_vendor/zod-to-json-schema/parsers/enum.ts +13 -0
  393. package/src/_vendor/zod-to-json-schema/parsers/intersection.ts +64 -0
  394. package/src/_vendor/zod-to-json-schema/parsers/literal.ts +37 -0
  395. package/src/_vendor/zod-to-json-schema/parsers/map.ts +42 -0
  396. package/src/_vendor/zod-to-json-schema/parsers/nativeEnum.ts +27 -0
  397. package/src/_vendor/zod-to-json-schema/parsers/never.ts +9 -0
  398. package/src/_vendor/zod-to-json-schema/parsers/null.ts +16 -0
  399. package/src/_vendor/zod-to-json-schema/parsers/nullable.ts +49 -0
  400. package/src/_vendor/zod-to-json-schema/parsers/number.ts +62 -0
  401. package/src/_vendor/zod-to-json-schema/parsers/object.ts +63 -0
  402. package/src/_vendor/zod-to-json-schema/parsers/optional.ts +25 -0
  403. package/src/_vendor/zod-to-json-schema/parsers/pipeline.ts +28 -0
  404. package/src/_vendor/zod-to-json-schema/parsers/promise.ts +7 -0
  405. package/src/_vendor/zod-to-json-schema/parsers/readonly.ts +7 -0
  406. package/src/_vendor/zod-to-json-schema/parsers/record.ts +73 -0
  407. package/src/_vendor/zod-to-json-schema/parsers/set.ts +36 -0
  408. package/src/_vendor/zod-to-json-schema/parsers/string.ts +400 -0
  409. package/src/_vendor/zod-to-json-schema/parsers/tuple.ts +54 -0
  410. package/src/_vendor/zod-to-json-schema/parsers/undefined.ts +9 -0
  411. package/src/_vendor/zod-to-json-schema/parsers/union.ts +119 -0
  412. package/src/_vendor/zod-to-json-schema/parsers/unknown.ts +5 -0
  413. package/src/_vendor/zod-to-json-schema/zodToJsonSchema.ts +91 -0
  414. package/src/error.ts +12 -0
  415. package/src/helpers/zod.ts +102 -0
  416. package/src/index.ts +8 -0
  417. package/src/lib/AbstractChatCompletionRunner.ts +72 -258
  418. package/src/lib/AssistantStream.ts +47 -19
  419. package/src/lib/ChatCompletionRunner.ts +16 -12
  420. package/src/lib/ChatCompletionStream.ts +423 -47
  421. package/src/lib/ChatCompletionStreamingRunner.ts +19 -15
  422. package/src/lib/{AbstractAssistantStreamRunner.ts → EventStream.ts} +37 -138
  423. package/src/lib/RunnableFunction.ts +4 -2
  424. package/src/lib/parser.ts +235 -0
  425. package/src/resources/audio/audio.ts +5 -0
  426. package/src/resources/audio/index.ts +2 -2
  427. package/src/resources/audio/speech.ts +4 -1
  428. package/src/resources/audio/transcriptions.ts +2 -1
  429. package/src/resources/audio/translations.ts +2 -1
  430. package/src/resources/beta/assistants.ts +19 -26
  431. package/src/resources/beta/beta.ts +0 -1
  432. package/src/resources/beta/chat/completions.ts +77 -27
  433. package/src/resources/beta/index.ts +0 -1
  434. package/src/resources/beta/threads/index.ts +2 -1
  435. package/src/resources/beta/threads/messages.ts +41 -2
  436. package/src/resources/beta/threads/runs/runs.ts +12 -25
  437. package/src/resources/beta/threads/threads.ts +26 -32
  438. package/src/resources/beta/vector-stores/files.ts +1 -1
  439. package/src/resources/chat/chat.ts +2 -0
  440. package/src/resources/chat/completions.ts +47 -27
  441. package/src/resources/chat/index.ts +1 -0
  442. package/src/resources/fine-tuning/jobs/jobs.ts +3 -3
  443. package/src/resources/images.ts +6 -3
  444. package/src/resources/index.ts +9 -2
  445. package/src/resources/moderations.ts +4 -1
  446. package/src/resources/shared.ts +62 -0
  447. package/src/version.ts +1 -1
  448. package/version.d.ts +1 -1
  449. package/version.js +1 -1
  450. package/version.mjs +1 -1
  451. package/lib/AbstractAssistantStreamRunner.d.ts +0 -74
  452. package/lib/AbstractAssistantStreamRunner.d.ts.map +0 -1
  453. package/lib/AbstractAssistantStreamRunner.js +0 -246
  454. package/lib/AbstractAssistantStreamRunner.js.map +0 -1
  455. package/lib/AbstractAssistantStreamRunner.mjs +0 -242
  456. package/lib/AbstractAssistantStreamRunner.mjs.map +0 -1
  457. package/lib/ChatCompletionRunFunctions.test.d.ts +0 -2
  458. package/lib/ChatCompletionRunFunctions.test.d.ts.map +0 -1
  459. package/lib/ChatCompletionRunFunctions.test.js +0 -2177
  460. package/lib/ChatCompletionRunFunctions.test.js.map +0 -1
  461. package/lib/ChatCompletionRunFunctions.test.mjs +0 -2172
  462. package/lib/ChatCompletionRunFunctions.test.mjs.map +0 -1
  463. package/src/lib/ChatCompletionRunFunctions.test.ts +0 -2328
@@ -1,23 +1,29 @@
1
- var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
2
- if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
3
- if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
4
- return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
5
- };
6
1
  var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
7
2
  if (kind === "m") throw new TypeError("Private method is not writable");
8
3
  if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
9
4
  if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
10
5
  return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
11
6
  };
12
- var _ChatCompletionStream_instances, _ChatCompletionStream_currentChatCompletionSnapshot, _ChatCompletionStream_beginRequest, _ChatCompletionStream_addChunk, _ChatCompletionStream_endRequest, _ChatCompletionStream_accumulateChatCompletion;
13
- import { OpenAIError, APIUserAbortError } from 'openai/error';
7
+ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
8
+ if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
9
+ if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
10
+ return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
11
+ };
12
+ var _ChatCompletionStream_instances, _ChatCompletionStream_params, _ChatCompletionStream_choiceEventStates, _ChatCompletionStream_currentChatCompletionSnapshot, _ChatCompletionStream_beginRequest, _ChatCompletionStream_getChoiceEventState, _ChatCompletionStream_addChunk, _ChatCompletionStream_emitToolCallDoneEvent, _ChatCompletionStream_emitContentDoneEvents, _ChatCompletionStream_endRequest, _ChatCompletionStream_getAutoParseableResponseFormat, _ChatCompletionStream_accumulateChatCompletion;
13
+ import { OpenAIError, APIUserAbortError, LengthFinishReasonError, ContentFilterFinishReasonError, } from 'openai/error';
14
14
  import { AbstractChatCompletionRunner, } from "./AbstractChatCompletionRunner.mjs";
15
15
  import { Stream } from 'openai/streaming';
16
+ import { hasAutoParseableInput, isAutoParsableResponseFormat, isAutoParsableTool, maybeParseChatCompletion, shouldParseToolCall, } from 'openai/lib/parser';
17
+ import { partialParse } from "../_vendor/partial-json-parser/parser.mjs";
16
18
  export class ChatCompletionStream extends AbstractChatCompletionRunner {
17
- constructor() {
18
- super(...arguments);
19
+ constructor(params) {
20
+ super();
19
21
  _ChatCompletionStream_instances.add(this);
22
+ _ChatCompletionStream_params.set(this, void 0);
23
+ _ChatCompletionStream_choiceEventStates.set(this, void 0);
20
24
  _ChatCompletionStream_currentChatCompletionSnapshot.set(this, void 0);
25
+ __classPrivateFieldSet(this, _ChatCompletionStream_params, params, "f");
26
+ __classPrivateFieldSet(this, _ChatCompletionStream_choiceEventStates, [], "f");
21
27
  }
22
28
  get currentChatCompletionSnapshot() {
23
29
  return __classPrivateFieldGet(this, _ChatCompletionStream_currentChatCompletionSnapshot, "f");
@@ -30,16 +36,17 @@ export class ChatCompletionStream extends AbstractChatCompletionRunner {
30
36
  * in this context.
31
37
  */
32
38
  static fromReadableStream(stream) {
33
- const runner = new ChatCompletionStream();
39
+ const runner = new ChatCompletionStream(null);
34
40
  runner._run(() => runner._fromReadableStream(stream));
35
41
  return runner;
36
42
  }
37
- static createChatCompletion(completions, params, options) {
38
- const runner = new ChatCompletionStream();
39
- runner._run(() => runner._runChatCompletion(completions, { ...params, stream: true }, { ...options, headers: { ...options?.headers, 'X-Stainless-Helper-Method': 'stream' } }));
43
+ static createChatCompletion(client, params, options) {
44
+ const runner = new ChatCompletionStream(params);
45
+ runner._run(() => runner._runChatCompletion(client, { ...params, stream: true }, { ...options, headers: { ...options?.headers, 'X-Stainless-Helper-Method': 'stream' } }));
40
46
  return runner;
41
47
  }
42
- async _createChatCompletion(completions, params, options) {
48
+ async _createChatCompletion(client, params, options) {
49
+ super._createChatCompletion;
43
50
  const signal = options?.signal;
44
51
  if (signal) {
45
52
  if (signal.aborted)
@@ -47,7 +54,7 @@ export class ChatCompletionStream extends AbstractChatCompletionRunner {
47
54
  signal.addEventListener('abort', () => this.controller.abort());
48
55
  }
49
56
  __classPrivateFieldGet(this, _ChatCompletionStream_instances, "m", _ChatCompletionStream_beginRequest).call(this);
50
- const stream = await completions.create({ ...params, stream: true }, { ...options, signal: this.controller.signal });
57
+ const stream = await client.chat.completions.create({ ...params, stream: true }, { ...options, signal: this.controller.signal });
51
58
  this._connected();
52
59
  for await (const chunk of stream) {
53
60
  __classPrivateFieldGet(this, _ChatCompletionStream_instances, "m", _ChatCompletionStream_addChunk).call(this, chunk);
@@ -81,19 +88,146 @@ export class ChatCompletionStream extends AbstractChatCompletionRunner {
81
88
  }
82
89
  return this._addChatCompletion(__classPrivateFieldGet(this, _ChatCompletionStream_instances, "m", _ChatCompletionStream_endRequest).call(this));
83
90
  }
84
- [(_ChatCompletionStream_currentChatCompletionSnapshot = new WeakMap(), _ChatCompletionStream_instances = new WeakSet(), _ChatCompletionStream_beginRequest = function _ChatCompletionStream_beginRequest() {
91
+ [(_ChatCompletionStream_params = new WeakMap(), _ChatCompletionStream_choiceEventStates = new WeakMap(), _ChatCompletionStream_currentChatCompletionSnapshot = new WeakMap(), _ChatCompletionStream_instances = new WeakSet(), _ChatCompletionStream_beginRequest = function _ChatCompletionStream_beginRequest() {
85
92
  if (this.ended)
86
93
  return;
87
94
  __classPrivateFieldSet(this, _ChatCompletionStream_currentChatCompletionSnapshot, undefined, "f");
95
+ }, _ChatCompletionStream_getChoiceEventState = function _ChatCompletionStream_getChoiceEventState(choice) {
96
+ let state = __classPrivateFieldGet(this, _ChatCompletionStream_choiceEventStates, "f")[choice.index];
97
+ if (state) {
98
+ return state;
99
+ }
100
+ state = {
101
+ content_done: false,
102
+ refusal_done: false,
103
+ logprobs_content_done: false,
104
+ logprobs_refusal_done: false,
105
+ done_tool_calls: new Set(),
106
+ current_tool_call_index: null,
107
+ };
108
+ __classPrivateFieldGet(this, _ChatCompletionStream_choiceEventStates, "f")[choice.index] = state;
109
+ return state;
88
110
  }, _ChatCompletionStream_addChunk = function _ChatCompletionStream_addChunk(chunk) {
89
111
  if (this.ended)
90
112
  return;
91
113
  const completion = __classPrivateFieldGet(this, _ChatCompletionStream_instances, "m", _ChatCompletionStream_accumulateChatCompletion).call(this, chunk);
92
114
  this._emit('chunk', chunk, completion);
93
- const delta = chunk.choices[0]?.delta?.content;
94
- const snapshot = completion.choices[0]?.message;
95
- if (delta != null && snapshot?.role === 'assistant' && snapshot?.content) {
96
- this._emit('content', delta, snapshot.content);
115
+ for (const choice of chunk.choices) {
116
+ const choiceSnapshot = completion.choices[choice.index];
117
+ if (choice.delta.content != null &&
118
+ choiceSnapshot.message?.role === 'assistant' &&
119
+ choiceSnapshot.message?.content) {
120
+ this._emit('content', choice.delta.content, choiceSnapshot.message.content);
121
+ this._emit('content.delta', {
122
+ delta: choice.delta.content,
123
+ snapshot: choiceSnapshot.message.content,
124
+ parsed: choiceSnapshot.message.parsed,
125
+ });
126
+ }
127
+ if (choice.delta.refusal != null &&
128
+ choiceSnapshot.message?.role === 'assistant' &&
129
+ choiceSnapshot.message?.refusal) {
130
+ this._emit('refusal.delta', {
131
+ delta: choice.delta.refusal,
132
+ snapshot: choiceSnapshot.message.refusal,
133
+ });
134
+ }
135
+ if (choice.logprobs?.content != null && choiceSnapshot.message?.role === 'assistant') {
136
+ this._emit('logprobs.content.delta', {
137
+ content: choice.logprobs?.content,
138
+ snapshot: choiceSnapshot.logprobs?.content ?? [],
139
+ });
140
+ }
141
+ if (choice.logprobs?.refusal != null && choiceSnapshot.message?.role === 'assistant') {
142
+ this._emit('logprobs.refusal.delta', {
143
+ refusal: choice.logprobs?.refusal,
144
+ snapshot: choiceSnapshot.logprobs?.refusal ?? [],
145
+ });
146
+ }
147
+ const state = __classPrivateFieldGet(this, _ChatCompletionStream_instances, "m", _ChatCompletionStream_getChoiceEventState).call(this, choiceSnapshot);
148
+ if (choiceSnapshot.finish_reason) {
149
+ __classPrivateFieldGet(this, _ChatCompletionStream_instances, "m", _ChatCompletionStream_emitContentDoneEvents).call(this, choiceSnapshot);
150
+ if (state.current_tool_call_index != null) {
151
+ __classPrivateFieldGet(this, _ChatCompletionStream_instances, "m", _ChatCompletionStream_emitToolCallDoneEvent).call(this, choiceSnapshot, state.current_tool_call_index);
152
+ }
153
+ }
154
+ for (const toolCall of choice.delta.tool_calls ?? []) {
155
+ if (state.current_tool_call_index !== toolCall.index) {
156
+ __classPrivateFieldGet(this, _ChatCompletionStream_instances, "m", _ChatCompletionStream_emitContentDoneEvents).call(this, choiceSnapshot);
157
+ // new tool call started, the previous one is done
158
+ if (state.current_tool_call_index != null) {
159
+ __classPrivateFieldGet(this, _ChatCompletionStream_instances, "m", _ChatCompletionStream_emitToolCallDoneEvent).call(this, choiceSnapshot, state.current_tool_call_index);
160
+ }
161
+ }
162
+ state.current_tool_call_index = toolCall.index;
163
+ }
164
+ for (const toolCallDelta of choice.delta.tool_calls ?? []) {
165
+ const toolCallSnapshot = choiceSnapshot.message.tool_calls?.[toolCallDelta.index];
166
+ if (!toolCallSnapshot?.type) {
167
+ continue;
168
+ }
169
+ if (toolCallSnapshot?.type === 'function') {
170
+ this._emit('tool_calls.function.arguments.delta', {
171
+ name: toolCallSnapshot.function?.name,
172
+ index: toolCallDelta.index,
173
+ arguments: toolCallSnapshot.function.arguments,
174
+ parsed_arguments: toolCallSnapshot.function.parsed_arguments,
175
+ arguments_delta: toolCallDelta.function?.arguments ?? '',
176
+ });
177
+ }
178
+ else {
179
+ assertNever(toolCallSnapshot?.type);
180
+ }
181
+ }
182
+ }
183
+ }, _ChatCompletionStream_emitToolCallDoneEvent = function _ChatCompletionStream_emitToolCallDoneEvent(choiceSnapshot, toolCallIndex) {
184
+ const state = __classPrivateFieldGet(this, _ChatCompletionStream_instances, "m", _ChatCompletionStream_getChoiceEventState).call(this, choiceSnapshot);
185
+ if (state.done_tool_calls.has(toolCallIndex)) {
186
+ // we've already fired the done event
187
+ return;
188
+ }
189
+ const toolCallSnapshot = choiceSnapshot.message.tool_calls?.[toolCallIndex];
190
+ if (!toolCallSnapshot) {
191
+ throw new Error('no tool call snapshot');
192
+ }
193
+ if (!toolCallSnapshot.type) {
194
+ throw new Error('tool call snapshot missing `type`');
195
+ }
196
+ if (toolCallSnapshot.type === 'function') {
197
+ const inputTool = __classPrivateFieldGet(this, _ChatCompletionStream_params, "f")?.tools?.find((tool) => tool.type === 'function' && tool.function.name === toolCallSnapshot.function.name);
198
+ this._emit('tool_calls.function.arguments.done', {
199
+ name: toolCallSnapshot.function.name,
200
+ index: toolCallIndex,
201
+ arguments: toolCallSnapshot.function.arguments,
202
+ parsed_arguments: isAutoParsableTool(inputTool) ? inputTool.$parseRaw(toolCallSnapshot.function.arguments)
203
+ : inputTool?.function.strict ? JSON.parse(toolCallSnapshot.function.arguments)
204
+ : null,
205
+ });
206
+ }
207
+ else {
208
+ assertNever(toolCallSnapshot.type);
209
+ }
210
+ }, _ChatCompletionStream_emitContentDoneEvents = function _ChatCompletionStream_emitContentDoneEvents(choiceSnapshot) {
211
+ const state = __classPrivateFieldGet(this, _ChatCompletionStream_instances, "m", _ChatCompletionStream_getChoiceEventState).call(this, choiceSnapshot);
212
+ if (choiceSnapshot.message.content && !state.content_done) {
213
+ state.content_done = true;
214
+ const responseFormat = __classPrivateFieldGet(this, _ChatCompletionStream_instances, "m", _ChatCompletionStream_getAutoParseableResponseFormat).call(this);
215
+ this._emit('content.done', {
216
+ content: choiceSnapshot.message.content,
217
+ parsed: responseFormat ? responseFormat.$parseRaw(choiceSnapshot.message.content) : null,
218
+ });
219
+ }
220
+ if (choiceSnapshot.message.refusal && !state.refusal_done) {
221
+ state.refusal_done = true;
222
+ this._emit('refusal.done', { refusal: choiceSnapshot.message.refusal });
223
+ }
224
+ if (choiceSnapshot.logprobs?.content && !state.logprobs_content_done) {
225
+ state.logprobs_content_done = true;
226
+ this._emit('logprobs.content.done', { content: choiceSnapshot.logprobs.content });
227
+ }
228
+ if (choiceSnapshot.logprobs?.refusal && !state.logprobs_refusal_done) {
229
+ state.logprobs_refusal_done = true;
230
+ this._emit('logprobs.refusal.done', { refusal: choiceSnapshot.logprobs.refusal });
97
231
  }
98
232
  }, _ChatCompletionStream_endRequest = function _ChatCompletionStream_endRequest() {
99
233
  if (this.ended) {
@@ -104,9 +238,16 @@ export class ChatCompletionStream extends AbstractChatCompletionRunner {
104
238
  throw new OpenAIError(`request ended without sending any chunks`);
105
239
  }
106
240
  __classPrivateFieldSet(this, _ChatCompletionStream_currentChatCompletionSnapshot, undefined, "f");
107
- return finalizeChatCompletion(snapshot);
241
+ __classPrivateFieldSet(this, _ChatCompletionStream_choiceEventStates, [], "f");
242
+ return finalizeChatCompletion(snapshot, __classPrivateFieldGet(this, _ChatCompletionStream_params, "f"));
243
+ }, _ChatCompletionStream_getAutoParseableResponseFormat = function _ChatCompletionStream_getAutoParseableResponseFormat() {
244
+ const responseFormat = __classPrivateFieldGet(this, _ChatCompletionStream_params, "f")?.response_format;
245
+ if (isAutoParsableResponseFormat(responseFormat)) {
246
+ return responseFormat;
247
+ }
248
+ return null;
108
249
  }, _ChatCompletionStream_accumulateChatCompletion = function _ChatCompletionStream_accumulateChatCompletion(chunk) {
109
- var _a, _b, _c;
250
+ var _a, _b, _c, _d;
110
251
  let snapshot = __classPrivateFieldGet(this, _ChatCompletionStream_currentChatCompletionSnapshot, "f");
111
252
  const { choices, ...rest } = chunk;
112
253
  if (!snapshot) {
@@ -128,23 +269,39 @@ export class ChatCompletionStream extends AbstractChatCompletionRunner {
128
269
  choice.logprobs = Object.assign({}, logprobs);
129
270
  }
130
271
  else {
131
- const { content, ...rest } = logprobs;
272
+ const { content, refusal, ...rest } = logprobs;
273
+ assertIsEmpty(rest);
132
274
  Object.assign(choice.logprobs, rest);
133
275
  if (content) {
134
276
  (_a = choice.logprobs).content ?? (_a.content = []);
135
277
  choice.logprobs.content.push(...content);
136
278
  }
279
+ if (refusal) {
280
+ (_b = choice.logprobs).refusal ?? (_b.refusal = []);
281
+ choice.logprobs.refusal.push(...refusal);
282
+ }
137
283
  }
138
284
  }
139
- if (finish_reason)
285
+ if (finish_reason) {
140
286
  choice.finish_reason = finish_reason;
287
+ if (__classPrivateFieldGet(this, _ChatCompletionStream_params, "f") && hasAutoParseableInput(__classPrivateFieldGet(this, _ChatCompletionStream_params, "f"))) {
288
+ if (finish_reason === 'length') {
289
+ throw new LengthFinishReasonError();
290
+ }
291
+ if (finish_reason === 'content_filter') {
292
+ throw new ContentFilterFinishReasonError();
293
+ }
294
+ }
295
+ }
141
296
  Object.assign(choice, other);
142
297
  if (!delta)
143
298
  continue; // Shouldn't happen; just in case.
144
- const { content, function_call, role, tool_calls, ...rest } = delta;
299
+ const { content, refusal, function_call, role, tool_calls, ...rest } = delta;
300
+ assertIsEmpty(rest);
145
301
  Object.assign(choice.message, rest);
146
- if (content)
147
- choice.message.content = (choice.message.content || '') + content;
302
+ if (refusal) {
303
+ choice.message.refusal = (choice.message.refusal || '') + refusal;
304
+ }
148
305
  if (role)
149
306
  choice.message.role = role;
150
307
  if (function_call) {
@@ -155,27 +312,37 @@ export class ChatCompletionStream extends AbstractChatCompletionRunner {
155
312
  if (function_call.name)
156
313
  choice.message.function_call.name = function_call.name;
157
314
  if (function_call.arguments) {
158
- (_b = choice.message.function_call).arguments ?? (_b.arguments = '');
315
+ (_c = choice.message.function_call).arguments ?? (_c.arguments = '');
159
316
  choice.message.function_call.arguments += function_call.arguments;
160
317
  }
161
318
  }
162
319
  }
320
+ if (content) {
321
+ choice.message.content = (choice.message.content || '') + content;
322
+ if (!choice.message.refusal && __classPrivateFieldGet(this, _ChatCompletionStream_instances, "m", _ChatCompletionStream_getAutoParseableResponseFormat).call(this)) {
323
+ choice.message.parsed = partialParse(choice.message.content);
324
+ }
325
+ }
163
326
  if (tool_calls) {
164
327
  if (!choice.message.tool_calls)
165
328
  choice.message.tool_calls = [];
166
329
  for (const { index, id, type, function: fn, ...rest } of tool_calls) {
167
- const tool_call = ((_c = choice.message.tool_calls)[index] ?? (_c[index] = {}));
330
+ const tool_call = ((_d = choice.message.tool_calls)[index] ?? (_d[index] = {}));
168
331
  Object.assign(tool_call, rest);
169
332
  if (id)
170
333
  tool_call.id = id;
171
334
  if (type)
172
335
  tool_call.type = type;
173
336
  if (fn)
174
- tool_call.function ?? (tool_call.function = { arguments: '' });
337
+ tool_call.function ?? (tool_call.function = { name: fn.name ?? '', arguments: '' });
175
338
  if (fn?.name)
176
339
  tool_call.function.name = fn.name;
177
- if (fn?.arguments)
340
+ if (fn?.arguments) {
178
341
  tool_call.function.arguments += fn.arguments;
342
+ if (shouldParseToolCall(__classPrivateFieldGet(this, _ChatCompletionStream_params, "f"), tool_call)) {
343
+ tool_call.function.parsed_arguments = partialParse(tool_call.function.arguments);
344
+ }
345
+ }
179
346
  }
180
347
  }
181
348
  }
@@ -236,27 +403,36 @@ export class ChatCompletionStream extends AbstractChatCompletionRunner {
236
403
  return stream.toReadableStream();
237
404
  }
238
405
  }
239
- function finalizeChatCompletion(snapshot) {
406
+ function finalizeChatCompletion(snapshot, params) {
240
407
  const { id, choices, created, model, system_fingerprint, ...rest } = snapshot;
241
- return {
408
+ const completion = {
242
409
  ...rest,
243
410
  id,
244
411
  choices: choices.map(({ message, finish_reason, index, logprobs, ...choiceRest }) => {
245
- if (!finish_reason)
412
+ if (!finish_reason) {
246
413
  throw new OpenAIError(`missing finish_reason for choice ${index}`);
414
+ }
247
415
  const { content = null, function_call, tool_calls, ...messageRest } = message;
248
416
  const role = message.role; // this is what we expect; in theory it could be different which would make our types a slight lie but would be fine.
249
- if (!role)
417
+ if (!role) {
250
418
  throw new OpenAIError(`missing role for choice ${index}`);
419
+ }
251
420
  if (function_call) {
252
421
  const { arguments: args, name } = function_call;
253
- if (args == null)
422
+ if (args == null) {
254
423
  throw new OpenAIError(`missing function_call.arguments for choice ${index}`);
255
- if (!name)
424
+ }
425
+ if (!name) {
256
426
  throw new OpenAIError(`missing function_call.name for choice ${index}`);
427
+ }
257
428
  return {
258
429
  ...choiceRest,
259
- message: { content, function_call: { arguments: args, name }, role },
430
+ message: {
431
+ content,
432
+ function_call: { arguments: args, name },
433
+ role,
434
+ refusal: message.refusal ?? null,
435
+ },
260
436
  finish_reason,
261
437
  index,
262
438
  logprobs,
@@ -272,17 +448,22 @@ function finalizeChatCompletion(snapshot) {
272
448
  ...messageRest,
273
449
  role,
274
450
  content,
451
+ refusal: message.refusal ?? null,
275
452
  tool_calls: tool_calls.map((tool_call, i) => {
276
453
  const { function: fn, type, id, ...toolRest } = tool_call;
277
454
  const { arguments: args, name, ...fnRest } = fn || {};
278
- if (id == null)
455
+ if (id == null) {
279
456
  throw new OpenAIError(`missing choices[${index}].tool_calls[${i}].id\n${str(snapshot)}`);
280
- if (type == null)
457
+ }
458
+ if (type == null) {
281
459
  throw new OpenAIError(`missing choices[${index}].tool_calls[${i}].type\n${str(snapshot)}`);
282
- if (name == null)
460
+ }
461
+ if (name == null) {
283
462
  throw new OpenAIError(`missing choices[${index}].tool_calls[${i}].function.name\n${str(snapshot)}`);
284
- if (args == null)
463
+ }
464
+ if (args == null) {
285
465
  throw new OpenAIError(`missing choices[${index}].tool_calls[${i}].function.arguments\n${str(snapshot)}`);
466
+ }
286
467
  return { ...toolRest, id, type, function: { ...fnRest, name, arguments: args } };
287
468
  }),
288
469
  },
@@ -290,7 +471,7 @@ function finalizeChatCompletion(snapshot) {
290
471
  }
291
472
  return {
292
473
  ...choiceRest,
293
- message: { ...messageRest, content, role },
474
+ message: { ...messageRest, content, role, refusal: message.refusal ?? null },
294
475
  finish_reason,
295
476
  index,
296
477
  logprobs,
@@ -301,8 +482,18 @@ function finalizeChatCompletion(snapshot) {
301
482
  object: 'chat.completion',
302
483
  ...(system_fingerprint ? { system_fingerprint } : {}),
303
484
  };
485
+ return maybeParseChatCompletion(completion, params);
304
486
  }
305
487
  function str(x) {
306
488
  return JSON.stringify(x);
307
489
  }
490
+ /**
491
+ * Ensures the given argument is an empty object, useful for
492
+ * asserting that all known properties on an object have been
493
+ * destructured.
494
+ */
495
+ function assertIsEmpty(obj) {
496
+ return;
497
+ }
498
+ function assertNever(_x) { }
308
499
  //# sourceMappingURL=ChatCompletionStream.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"ChatCompletionStream.mjs","sourceRoot":"","sources":["../src/lib/ChatCompletionStream.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ChatCompletionStream.mjs","sourceRoot":"","sources":["../src/lib/ChatCompletionStream.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,10 @@
1
- import { Completions, type ChatCompletionChunk, type ChatCompletionCreateParamsStreaming } from 'openai/resources/chat/completions';
1
+ import { type ChatCompletionChunk, type ChatCompletionCreateParamsStreaming } from 'openai/resources/chat/completions';
2
2
  import { RunnerOptions, type AbstractChatCompletionRunnerEvents } from "./AbstractChatCompletionRunner.js";
3
3
  import { type ReadableStream } from 'openai/_shims/index';
4
4
  import { RunnableTools, type BaseFunctionsArgs, type RunnableFunctions } from "./RunnableFunction.js";
5
5
  import { ChatCompletionSnapshot, ChatCompletionStream } from "./ChatCompletionStream.js";
6
+ import OpenAI from 'openai/index';
7
+ import { AutoParseableTool } from 'openai/lib/parser';
6
8
  export interface ChatCompletionStreamEvents extends AbstractChatCompletionRunnerEvents {
7
9
  content: (contentDelta: string, contentSnapshot: string) => void;
8
10
  chunk: (chunk: ChatCompletionChunk, snapshot: ChatCompletionSnapshot) => void;
@@ -11,12 +13,12 @@ export type ChatCompletionStreamingFunctionRunnerParams<FunctionsArgs extends Ba
11
13
  functions: RunnableFunctions<FunctionsArgs>;
12
14
  };
13
15
  export type ChatCompletionStreamingToolRunnerParams<FunctionsArgs extends BaseFunctionsArgs> = Omit<ChatCompletionCreateParamsStreaming, 'tools'> & {
14
- tools: RunnableTools<FunctionsArgs>;
16
+ tools: RunnableTools<FunctionsArgs> | AutoParseableTool<any, true>[];
15
17
  };
16
- export declare class ChatCompletionStreamingRunner extends ChatCompletionStream implements AsyncIterable<ChatCompletionChunk> {
17
- static fromReadableStream(stream: ReadableStream): ChatCompletionStreamingRunner;
18
+ export declare class ChatCompletionStreamingRunner<ParsedT = null> extends ChatCompletionStream<ParsedT> implements AsyncIterable<ChatCompletionChunk> {
19
+ static fromReadableStream(stream: ReadableStream): ChatCompletionStreamingRunner<null>;
18
20
  /** @deprecated - please use `runTools` instead. */
19
- static runFunctions<T extends (string | object)[]>(completions: Completions, params: ChatCompletionStreamingFunctionRunnerParams<T>, options?: RunnerOptions): ChatCompletionStreamingRunner;
20
- static runTools<T extends (string | object)[]>(completions: Completions, params: ChatCompletionStreamingToolRunnerParams<T>, options?: RunnerOptions): ChatCompletionStreamingRunner;
21
+ static runFunctions<T extends (string | object)[]>(client: OpenAI, params: ChatCompletionStreamingFunctionRunnerParams<T>, options?: RunnerOptions): ChatCompletionStreamingRunner<null>;
22
+ static runTools<T extends (string | object)[], ParsedT = null>(client: OpenAI, params: ChatCompletionStreamingToolRunnerParams<T>, options?: RunnerOptions): ChatCompletionStreamingRunner<ParsedT>;
21
23
  }
22
24
  //# sourceMappingURL=ChatCompletionStreamingRunner.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ChatCompletionStreamingRunner.d.ts","sourceRoot":"","sources":["../src/lib/ChatCompletionStreamingRunner.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,WAAW,EACX,KAAK,mBAAmB,EACxB,KAAK,mCAAmC,EACzC,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EAAE,aAAa,EAAE,KAAK,kCAAkC,EAAE,MAAM,gCAAgC,CAAC;AACxG,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,EAAE,aAAa,EAAE,KAAK,iBAAiB,EAAE,KAAK,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AACnG,OAAO,EAAE,sBAAsB,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAEtF,MAAM,WAAW,0BAA2B,SAAQ,kCAAkC;IACpF,OAAO,EAAE,CAAC,YAAY,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,KAAK,IAAI,CAAC;IACjE,KAAK,EAAE,CAAC,KAAK,EAAE,mBAAmB,EAAE,QAAQ,EAAE,sBAAsB,KAAK,IAAI,CAAC;CAC/E;AAED,MAAM,MAAM,2CAA2C,CAAC,aAAa,SAAS,iBAAiB,IAAI,IAAI,CACrG,mCAAmC,EACnC,WAAW,CACZ,GAAG;IACF,SAAS,EAAE,iBAAiB,CAAC,aAAa,CAAC,CAAC;CAC7C,CAAC;AAEF,MAAM,MAAM,uCAAuC,CAAC,aAAa,SAAS,iBAAiB,IAAI,IAAI,CACjG,mCAAmC,EACnC,OAAO,CACR,GAAG;IACF,KAAK,EAAE,aAAa,CAAC,aAAa,CAAC,CAAC;CACrC,CAAC;AAEF,qBAAa,6BACX,SAAQ,oBACR,YAAW,aAAa,CAAC,mBAAmB,CAAC;WAE7B,kBAAkB,CAAC,MAAM,EAAE,cAAc,GAAG,6BAA6B;IAMzF,mDAAmD;IACnD,MAAM,CAAC,YAAY,CAAC,CAAC,SAAS,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,EAC/C,WAAW,EAAE,WAAW,EACxB,MAAM,EAAE,2CAA2C,CAAC,CAAC,CAAC,EACtD,OAAO,CAAC,EAAE,aAAa,GACtB,6BAA6B;IAUhC,MAAM,CAAC,QAAQ,CAAC,CAAC,SAAS,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,EAC3C,WAAW,EAAE,WAAW,EACxB,MAAM,EAAE,uCAAuC,CAAC,CAAC,CAAC,EAClD,OAAO,CAAC,EAAE,aAAa,GACtB,6BAA6B;CASjC"}
1
+ {"version":3,"file":"ChatCompletionStreamingRunner.d.ts","sourceRoot":"","sources":["../src/lib/ChatCompletionStreamingRunner.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,mBAAmB,EACxB,KAAK,mCAAmC,EACzC,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EAAE,aAAa,EAAE,KAAK,kCAAkC,EAAE,MAAM,gCAAgC,CAAC;AACxG,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,EAAE,aAAa,EAAE,KAAK,iBAAiB,EAAE,KAAK,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AACnG,OAAO,EAAE,sBAAsB,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AACtF,OAAO,MAAM,MAAM,cAAc,CAAC;AAClC,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAEtD,MAAM,WAAW,0BAA2B,SAAQ,kCAAkC;IACpF,OAAO,EAAE,CAAC,YAAY,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,KAAK,IAAI,CAAC;IACjE,KAAK,EAAE,CAAC,KAAK,EAAE,mBAAmB,EAAE,QAAQ,EAAE,sBAAsB,KAAK,IAAI,CAAC;CAC/E;AAED,MAAM,MAAM,2CAA2C,CAAC,aAAa,SAAS,iBAAiB,IAAI,IAAI,CACrG,mCAAmC,EACnC,WAAW,CACZ,GAAG;IACF,SAAS,EAAE,iBAAiB,CAAC,aAAa,CAAC,CAAC;CAC7C,CAAC;AAEF,MAAM,MAAM,uCAAuC,CAAC,aAAa,SAAS,iBAAiB,IAAI,IAAI,CACjG,mCAAmC,EACnC,OAAO,CACR,GAAG;IACF,KAAK,EAAE,aAAa,CAAC,aAAa,CAAC,GAAG,iBAAiB,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE,CAAC;CACtE,CAAC;AAEF,qBAAa,6BAA6B,CAAC,OAAO,GAAG,IAAI,CACvD,SAAQ,oBAAoB,CAAC,OAAO,CACpC,YAAW,aAAa,CAAC,mBAAmB,CAAC;WAE7B,kBAAkB,CAAC,MAAM,EAAE,cAAc,GAAG,6BAA6B,CAAC,IAAI,CAAC;IAM/F,mDAAmD;IACnD,MAAM,CAAC,YAAY,CAAC,CAAC,SAAS,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,EAC/C,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,2CAA2C,CAAC,CAAC,CAAC,EACtD,OAAO,CAAC,EAAE,aAAa,GACtB,6BAA6B,CAAC,IAAI,CAAC;IAUtC,MAAM,CAAC,QAAQ,CAAC,CAAC,SAAS,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,EAAE,OAAO,GAAG,IAAI,EAC3D,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,uCAAuC,CAAC,CAAC,CAAC,EAClD,OAAO,CAAC,EAAE,aAAa,GACtB,6BAA6B,CAAC,OAAO,CAAC;CAY1C"}
@@ -4,27 +4,29 @@ exports.ChatCompletionStreamingRunner = void 0;
4
4
  const ChatCompletionStream_1 = require("./ChatCompletionStream.js");
5
5
  class ChatCompletionStreamingRunner extends ChatCompletionStream_1.ChatCompletionStream {
6
6
  static fromReadableStream(stream) {
7
- const runner = new ChatCompletionStreamingRunner();
7
+ const runner = new ChatCompletionStreamingRunner(null);
8
8
  runner._run(() => runner._fromReadableStream(stream));
9
9
  return runner;
10
10
  }
11
11
  /** @deprecated - please use `runTools` instead. */
12
- static runFunctions(completions, params, options) {
13
- const runner = new ChatCompletionStreamingRunner();
12
+ static runFunctions(client, params, options) {
13
+ const runner = new ChatCompletionStreamingRunner(null);
14
14
  const opts = {
15
15
  ...options,
16
16
  headers: { ...options?.headers, 'X-Stainless-Helper-Method': 'runFunctions' },
17
17
  };
18
- runner._run(() => runner._runFunctions(completions, params, opts));
18
+ runner._run(() => runner._runFunctions(client, params, opts));
19
19
  return runner;
20
20
  }
21
- static runTools(completions, params, options) {
22
- const runner = new ChatCompletionStreamingRunner();
21
+ static runTools(client, params, options) {
22
+ const runner = new ChatCompletionStreamingRunner(
23
+ // @ts-expect-error TODO these types are incompatible
24
+ params);
23
25
  const opts = {
24
26
  ...options,
25
27
  headers: { ...options?.headers, 'X-Stainless-Helper-Method': 'runTools' },
26
28
  };
27
- runner._run(() => runner._runTools(completions, params, opts));
29
+ runner._run(() => runner._runTools(client, params, opts));
28
30
  return runner;
29
31
  }
30
32
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ChatCompletionStreamingRunner.js","sourceRoot":"","sources":["../src/lib/ChatCompletionStreamingRunner.ts"],"names":[],"mappings":";;;AAQA,oEAAsF;AAqBtF,MAAa,6BACX,SAAQ,2CAAoB;IAG5B,MAAM,CAAU,kBAAkB,CAAC,MAAsB;QACvD,MAAM,MAAM,GAAG,IAAI,6BAA6B,EAAE,CAAC;QACnD,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC,CAAC;QACtD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,mDAAmD;IACnD,MAAM,CAAC,YAAY,CACjB,WAAwB,EACxB,MAAsD,EACtD,OAAuB;QAEvB,MAAM,MAAM,GAAG,IAAI,6BAA6B,EAAE,CAAC;QACnD,MAAM,IAAI,GAAG;YACX,GAAG,OAAO;YACV,OAAO,EAAE,EAAE,GAAG,OAAO,EAAE,OAAO,EAAE,2BAA2B,EAAE,cAAc,EAAE;SAC9E,CAAC;QACF,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,aAAa,CAAC,WAAW,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC;QACnE,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,MAAM,CAAC,QAAQ,CACb,WAAwB,EACxB,MAAkD,EAClD,OAAuB;QAEvB,MAAM,MAAM,GAAG,IAAI,6BAA6B,EAAE,CAAC;QACnD,MAAM,IAAI,GAAG;YACX,GAAG,OAAO;YACV,OAAO,EAAE,EAAE,GAAG,OAAO,EAAE,OAAO,EAAE,2BAA2B,EAAE,UAAU,EAAE;SAC1E,CAAC;QACF,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,WAAW,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC;QAC/D,OAAO,MAAM,CAAC;IAChB,CAAC;CACF;AAtCD,sEAsCC"}
1
+ {"version":3,"file":"ChatCompletionStreamingRunner.js","sourceRoot":"","sources":["../src/lib/ChatCompletionStreamingRunner.ts"],"names":[],"mappings":";;;AAOA,oEAAsF;AAuBtF,MAAa,6BACX,SAAQ,2CAA6B;IAGrC,MAAM,CAAU,kBAAkB,CAAC,MAAsB;QACvD,MAAM,MAAM,GAAG,IAAI,6BAA6B,CAAC,IAAI,CAAC,CAAC;QACvD,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC,CAAC;QACtD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,mDAAmD;IACnD,MAAM,CAAC,YAAY,CACjB,MAAc,EACd,MAAsD,EACtD,OAAuB;QAEvB,MAAM,MAAM,GAAG,IAAI,6BAA6B,CAAC,IAAI,CAAC,CAAC;QACvD,MAAM,IAAI,GAAG;YACX,GAAG,OAAO;YACV,OAAO,EAAE,EAAE,GAAG,OAAO,EAAE,OAAO,EAAE,2BAA2B,EAAE,cAAc,EAAE;SAC9E,CAAC;QACF,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC;QAC9D,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,MAAM,CAAC,QAAQ,CACb,MAAc,EACd,MAAkD,EAClD,OAAuB;QAEvB,MAAM,MAAM,GAAG,IAAI,6BAA6B;QAC9C,qDAAqD;QACrD,MAAM,CACP,CAAC;QACF,MAAM,IAAI,GAAG;YACX,GAAG,OAAO;YACV,OAAO,EAAE,EAAE,GAAG,OAAO,EAAE,OAAO,EAAE,2BAA2B,EAAE,UAAU,EAAE;SAC1E,CAAC;QACF,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC;QAC1D,OAAO,MAAM,CAAC;IAChB,CAAC;CACF;AAzCD,sEAyCC"}
@@ -1,27 +1,29 @@
1
1
  import { ChatCompletionStream } from "./ChatCompletionStream.mjs";
2
2
  export class ChatCompletionStreamingRunner extends ChatCompletionStream {
3
3
  static fromReadableStream(stream) {
4
- const runner = new ChatCompletionStreamingRunner();
4
+ const runner = new ChatCompletionStreamingRunner(null);
5
5
  runner._run(() => runner._fromReadableStream(stream));
6
6
  return runner;
7
7
  }
8
8
  /** @deprecated - please use `runTools` instead. */
9
- static runFunctions(completions, params, options) {
10
- const runner = new ChatCompletionStreamingRunner();
9
+ static runFunctions(client, params, options) {
10
+ const runner = new ChatCompletionStreamingRunner(null);
11
11
  const opts = {
12
12
  ...options,
13
13
  headers: { ...options?.headers, 'X-Stainless-Helper-Method': 'runFunctions' },
14
14
  };
15
- runner._run(() => runner._runFunctions(completions, params, opts));
15
+ runner._run(() => runner._runFunctions(client, params, opts));
16
16
  return runner;
17
17
  }
18
- static runTools(completions, params, options) {
19
- const runner = new ChatCompletionStreamingRunner();
18
+ static runTools(client, params, options) {
19
+ const runner = new ChatCompletionStreamingRunner(
20
+ // @ts-expect-error TODO these types are incompatible
21
+ params);
20
22
  const opts = {
21
23
  ...options,
22
24
  headers: { ...options?.headers, 'X-Stainless-Helper-Method': 'runTools' },
23
25
  };
24
- runner._run(() => runner._runTools(completions, params, opts));
26
+ runner._run(() => runner._runTools(client, params, opts));
25
27
  return runner;
26
28
  }
27
29
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ChatCompletionStreamingRunner.mjs","sourceRoot":"","sources":["../src/lib/ChatCompletionStreamingRunner.ts"],"names":[],"mappings":"OAQO,EAA0B,oBAAoB,EAAE;AAqBvD,MAAM,OAAO,6BACX,SAAQ,oBAAoB;IAG5B,MAAM,CAAU,kBAAkB,CAAC,MAAsB;QACvD,MAAM,MAAM,GAAG,IAAI,6BAA6B,EAAE,CAAC;QACnD,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC,CAAC;QACtD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,mDAAmD;IACnD,MAAM,CAAC,YAAY,CACjB,WAAwB,EACxB,MAAsD,EACtD,OAAuB;QAEvB,MAAM,MAAM,GAAG,IAAI,6BAA6B,EAAE,CAAC;QACnD,MAAM,IAAI,GAAG;YACX,GAAG,OAAO;YACV,OAAO,EAAE,EAAE,GAAG,OAAO,EAAE,OAAO,EAAE,2BAA2B,EAAE,cAAc,EAAE;SAC9E,CAAC;QACF,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,aAAa,CAAC,WAAW,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC;QACnE,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,MAAM,CAAC,QAAQ,CACb,WAAwB,EACxB,MAAkD,EAClD,OAAuB;QAEvB,MAAM,MAAM,GAAG,IAAI,6BAA6B,EAAE,CAAC;QACnD,MAAM,IAAI,GAAG;YACX,GAAG,OAAO;YACV,OAAO,EAAE,EAAE,GAAG,OAAO,EAAE,OAAO,EAAE,2BAA2B,EAAE,UAAU,EAAE;SAC1E,CAAC;QACF,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,WAAW,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC;QAC/D,OAAO,MAAM,CAAC;IAChB,CAAC;CACF"}
1
+ {"version":3,"file":"ChatCompletionStreamingRunner.mjs","sourceRoot":"","sources":["../src/lib/ChatCompletionStreamingRunner.ts"],"names":[],"mappings":"OAOO,EAA0B,oBAAoB,EAAE;AAuBvD,MAAM,OAAO,6BACX,SAAQ,oBAA6B;IAGrC,MAAM,CAAU,kBAAkB,CAAC,MAAsB;QACvD,MAAM,MAAM,GAAG,IAAI,6BAA6B,CAAC,IAAI,CAAC,CAAC;QACvD,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC,CAAC;QACtD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,mDAAmD;IACnD,MAAM,CAAC,YAAY,CACjB,MAAc,EACd,MAAsD,EACtD,OAAuB;QAEvB,MAAM,MAAM,GAAG,IAAI,6BAA6B,CAAC,IAAI,CAAC,CAAC;QACvD,MAAM,IAAI,GAAG;YACX,GAAG,OAAO;YACV,OAAO,EAAE,EAAE,GAAG,OAAO,EAAE,OAAO,EAAE,2BAA2B,EAAE,cAAc,EAAE;SAC9E,CAAC;QACF,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC;QAC9D,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,MAAM,CAAC,QAAQ,CACb,MAAc,EACd,MAAkD,EAClD,OAAuB;QAEvB,MAAM,MAAM,GAAG,IAAI,6BAA6B;QAC9C,qDAAqD;QACrD,MAAM,CACP,CAAC;QACF,MAAM,IAAI,GAAG;YACX,GAAG,OAAO;YACV,OAAO,EAAE,EAAE,GAAG,OAAO,EAAE,OAAO,EAAE,2BAA2B,EAAE,UAAU,EAAE;SAC1E,CAAC;QACF,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC;QAC1D,OAAO,MAAM,CAAC;IAChB,CAAC;CACF"}