ima2-gen 2.0.5 → 2.0.13

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 (1741) hide show
  1. package/CHANGELOG.md +3 -0
  2. package/bin/commands/edit.js +6 -6
  3. package/bin/commands/gen.js +6 -6
  4. package/bin/commands/multimode.js +4 -4
  5. package/bin/commands/node.js +2 -2
  6. package/bin/commands/prompt-sub/build.js +1 -1
  7. package/bin/lib/error-hints.js +1 -1
  8. package/config.js +2 -2
  9. package/docs/CLI.md +1 -1
  10. package/docs/FAQ.md +3 -0
  11. package/docs/migration/runtime-test-inventory.md +2 -1
  12. package/lib/agentSettings.js +1 -1
  13. package/lib/grokVideoAdapter.js +3 -3
  14. package/lib/grokVideoPlannerPrompt.js +94 -53
  15. package/lib/imageModels.js +4 -4
  16. package/lib/oauthProxy/runtime.js +1 -1
  17. package/lib/promptBuilder/constants.js +1 -1
  18. package/lib/promptBuilder/requestSchema.js +1 -1
  19. package/node_modules/@ai-sdk/gateway/CHANGELOG.md +1628 -0
  20. package/node_modules/@ai-sdk/gateway/LICENSE +13 -0
  21. package/node_modules/@ai-sdk/gateway/README.md +44 -0
  22. package/node_modules/@ai-sdk/gateway/dist/index.d.mts +602 -0
  23. package/node_modules/@ai-sdk/gateway/dist/index.d.ts +602 -0
  24. package/node_modules/@ai-sdk/gateway/dist/index.js +1520 -0
  25. package/node_modules/@ai-sdk/gateway/dist/index.js.map +1 -0
  26. package/node_modules/@ai-sdk/gateway/dist/index.mjs +1539 -0
  27. package/node_modules/@ai-sdk/gateway/dist/index.mjs.map +1 -0
  28. package/node_modules/@ai-sdk/gateway/docs/00-ai-gateway.mdx +742 -0
  29. package/node_modules/@ai-sdk/gateway/package.json +80 -0
  30. package/node_modules/@ai-sdk/gateway/src/errors/as-gateway-error.ts +74 -0
  31. package/node_modules/@ai-sdk/gateway/src/errors/create-gateway-error.ts +132 -0
  32. package/node_modules/@ai-sdk/gateway/src/errors/extract-api-call-response.ts +15 -0
  33. package/node_modules/@ai-sdk/gateway/src/errors/gateway-authentication-error.ts +84 -0
  34. package/node_modules/@ai-sdk/gateway/src/errors/gateway-error.ts +47 -0
  35. package/node_modules/@ai-sdk/gateway/src/errors/gateway-internal-server-error.ts +33 -0
  36. package/node_modules/@ai-sdk/gateway/src/errors/gateway-invalid-request-error.ts +33 -0
  37. package/node_modules/@ai-sdk/gateway/src/errors/gateway-model-not-found-error.ts +47 -0
  38. package/node_modules/@ai-sdk/gateway/src/errors/gateway-rate-limit-error.ts +33 -0
  39. package/node_modules/@ai-sdk/gateway/src/errors/gateway-response-error.ts +42 -0
  40. package/node_modules/@ai-sdk/gateway/src/errors/gateway-timeout-error.ts +59 -0
  41. package/node_modules/@ai-sdk/gateway/src/errors/index.ts +17 -0
  42. package/node_modules/@ai-sdk/gateway/src/errors/parse-auth-method.ts +23 -0
  43. package/node_modules/@ai-sdk/gateway/src/gateway-config.ts +7 -0
  44. package/node_modules/@ai-sdk/gateway/src/gateway-embedding-model-settings.ts +25 -0
  45. package/node_modules/@ai-sdk/gateway/src/gateway-embedding-model.ts +109 -0
  46. package/node_modules/@ai-sdk/gateway/src/gateway-fetch-metadata.ts +129 -0
  47. package/node_modules/@ai-sdk/gateway/src/gateway-image-model-settings.ts +19 -0
  48. package/node_modules/@ai-sdk/gateway/src/gateway-image-model.ts +169 -0
  49. package/node_modules/@ai-sdk/gateway/src/gateway-language-model-settings.ts +171 -0
  50. package/node_modules/@ai-sdk/gateway/src/gateway-language-model.ts +212 -0
  51. package/node_modules/@ai-sdk/gateway/src/gateway-model-entry.ts +58 -0
  52. package/node_modules/@ai-sdk/gateway/src/gateway-provider-options.ts +80 -0
  53. package/node_modules/@ai-sdk/gateway/src/gateway-provider.ts +329 -0
  54. package/node_modules/@ai-sdk/gateway/src/gateway-tools.ts +26 -0
  55. package/node_modules/@ai-sdk/gateway/src/gateway-video-model-settings.ts +25 -0
  56. package/node_modules/@ai-sdk/gateway/src/gateway-video-model.ts +259 -0
  57. package/node_modules/@ai-sdk/gateway/src/index.ts +32 -0
  58. package/node_modules/@ai-sdk/gateway/src/tool/parallel-search.ts +295 -0
  59. package/node_modules/@ai-sdk/gateway/src/tool/perplexity-search.ts +294 -0
  60. package/node_modules/@ai-sdk/gateway/src/vercel-environment.ts +6 -0
  61. package/node_modules/@ai-sdk/gateway/src/version.ts +6 -0
  62. package/node_modules/@ai-sdk/provider/CHANGELOG.md +979 -0
  63. package/node_modules/@ai-sdk/provider/LICENSE +13 -0
  64. package/node_modules/@ai-sdk/provider/README.md +1 -0
  65. package/node_modules/@ai-sdk/provider/dist/index.d.mts +4030 -0
  66. package/node_modules/@ai-sdk/provider/dist/index.d.ts +4030 -0
  67. package/node_modules/@ai-sdk/provider/dist/index.js +448 -0
  68. package/node_modules/@ai-sdk/provider/dist/index.js.map +1 -0
  69. package/node_modules/@ai-sdk/provider/dist/index.mjs +404 -0
  70. package/node_modules/@ai-sdk/provider/dist/index.mjs.map +1 -0
  71. package/node_modules/@ai-sdk/provider/package.json +63 -0
  72. package/node_modules/@ai-sdk/provider/src/embedding-model/index.ts +2 -0
  73. package/node_modules/@ai-sdk/provider/src/embedding-model/v2/embedding-model-v2-embedding.ts +5 -0
  74. package/node_modules/@ai-sdk/provider/src/embedding-model/v2/embedding-model-v2.ts +113 -0
  75. package/node_modules/@ai-sdk/provider/src/embedding-model/v2/index.ts +2 -0
  76. package/node_modules/@ai-sdk/provider/src/embedding-model/v3/embedding-model-v3-call-options.ts +26 -0
  77. package/node_modules/@ai-sdk/provider/src/embedding-model/v3/embedding-model-v3-embedding.ts +5 -0
  78. package/node_modules/@ai-sdk/provider/src/embedding-model/v3/embedding-model-v3-result.ts +48 -0
  79. package/node_modules/@ai-sdk/provider/src/embedding-model/v3/embedding-model-v3.ts +54 -0
  80. package/node_modules/@ai-sdk/provider/src/embedding-model/v3/index.ts +4 -0
  81. package/node_modules/@ai-sdk/provider/src/embedding-model-middleware/index.ts +1 -0
  82. package/node_modules/@ai-sdk/provider/src/embedding-model-middleware/v3/embedding-model-v3-middleware.ts +69 -0
  83. package/node_modules/@ai-sdk/provider/src/embedding-model-middleware/v3/index.ts +1 -0
  84. package/node_modules/@ai-sdk/provider/src/errors/ai-sdk-error.ts +62 -0
  85. package/node_modules/@ai-sdk/provider/src/errors/api-call-error.ts +59 -0
  86. package/node_modules/@ai-sdk/provider/src/errors/empty-response-body-error.ts +17 -0
  87. package/node_modules/@ai-sdk/provider/src/errors/get-error-message.ts +15 -0
  88. package/node_modules/@ai-sdk/provider/src/errors/index.ts +16 -0
  89. package/node_modules/@ai-sdk/provider/src/errors/invalid-argument-error.ts +32 -0
  90. package/node_modules/@ai-sdk/provider/src/errors/invalid-prompt-error.ts +33 -0
  91. package/node_modules/@ai-sdk/provider/src/errors/invalid-response-data-error.ts +31 -0
  92. package/node_modules/@ai-sdk/provider/src/errors/json-parse-error.ts +29 -0
  93. package/node_modules/@ai-sdk/provider/src/errors/load-api-key-error.ts +17 -0
  94. package/node_modules/@ai-sdk/provider/src/errors/load-setting-error.ts +17 -0
  95. package/node_modules/@ai-sdk/provider/src/errors/no-content-generated-error.ts +22 -0
  96. package/node_modules/@ai-sdk/provider/src/errors/no-such-model-error.ts +47 -0
  97. package/node_modules/@ai-sdk/provider/src/errors/too-many-embedding-values-for-call-error.ts +40 -0
  98. package/node_modules/@ai-sdk/provider/src/errors/type-validation-error.ts +108 -0
  99. package/node_modules/@ai-sdk/provider/src/errors/unsupported-functionality-error.ts +26 -0
  100. package/node_modules/@ai-sdk/provider/src/image-model/index.ts +2 -0
  101. package/node_modules/@ai-sdk/provider/src/image-model/v2/image-model-v2-call-options.ts +60 -0
  102. package/node_modules/@ai-sdk/provider/src/image-model/v2/image-model-v2-call-warning.ts +16 -0
  103. package/node_modules/@ai-sdk/provider/src/image-model/v2/image-model-v2.ts +104 -0
  104. package/node_modules/@ai-sdk/provider/src/image-model/v2/index.ts +6 -0
  105. package/node_modules/@ai-sdk/provider/src/image-model/v3/image-model-v3-call-options.ts +74 -0
  106. package/node_modules/@ai-sdk/provider/src/image-model/v3/image-model-v3-file.ts +44 -0
  107. package/node_modules/@ai-sdk/provider/src/image-model/v3/image-model-v3-usage.ts +19 -0
  108. package/node_modules/@ai-sdk/provider/src/image-model/v3/image-model-v3.ts +110 -0
  109. package/node_modules/@ai-sdk/provider/src/image-model/v3/index.ts +7 -0
  110. package/node_modules/@ai-sdk/provider/src/image-model-middleware/index.ts +1 -0
  111. package/node_modules/@ai-sdk/provider/src/image-model-middleware/v3/image-model-v3-middleware.ts +61 -0
  112. package/node_modules/@ai-sdk/provider/src/image-model-middleware/v3/index.ts +1 -0
  113. package/node_modules/@ai-sdk/provider/src/index.ts +16 -0
  114. package/node_modules/@ai-sdk/provider/src/json-value/index.ts +2 -0
  115. package/node_modules/@ai-sdk/provider/src/json-value/is-json.ts +40 -0
  116. package/node_modules/@ai-sdk/provider/src/json-value/json-value.ts +17 -0
  117. package/node_modules/@ai-sdk/provider/src/language-model/index.ts +2 -0
  118. package/node_modules/@ai-sdk/provider/src/language-model/v2/index.ts +18 -0
  119. package/node_modules/@ai-sdk/provider/src/language-model/v2/language-model-v2-call-options.ts +127 -0
  120. package/node_modules/@ai-sdk/provider/src/language-model/v2/language-model-v2-call-warning.ts +23 -0
  121. package/node_modules/@ai-sdk/provider/src/language-model/v2/language-model-v2-content.ts +14 -0
  122. package/node_modules/@ai-sdk/provider/src/language-model/v2/language-model-v2-data-content.ts +4 -0
  123. package/node_modules/@ai-sdk/provider/src/language-model/v2/language-model-v2-file.ts +25 -0
  124. package/node_modules/@ai-sdk/provider/src/language-model/v2/language-model-v2-finish-reason.ts +20 -0
  125. package/node_modules/@ai-sdk/provider/src/language-model/v2/language-model-v2-function-tool.ts +37 -0
  126. package/node_modules/@ai-sdk/provider/src/language-model/v2/language-model-v2-prompt.ts +218 -0
  127. package/node_modules/@ai-sdk/provider/src/language-model/v2/language-model-v2-provider-defined-tool.ts +24 -0
  128. package/node_modules/@ai-sdk/provider/src/language-model/v2/language-model-v2-reasoning.ts +14 -0
  129. package/node_modules/@ai-sdk/provider/src/language-model/v2/language-model-v2-response-metadata.ts +16 -0
  130. package/node_modules/@ai-sdk/provider/src/language-model/v2/language-model-v2-source.ts +67 -0
  131. package/node_modules/@ai-sdk/provider/src/language-model/v2/language-model-v2-stream-part.ts +102 -0
  132. package/node_modules/@ai-sdk/provider/src/language-model/v2/language-model-v2-text.ts +15 -0
  133. package/node_modules/@ai-sdk/provider/src/language-model/v2/language-model-v2-tool-call.ts +35 -0
  134. package/node_modules/@ai-sdk/provider/src/language-model/v2/language-model-v2-tool-choice.ts +5 -0
  135. package/node_modules/@ai-sdk/provider/src/language-model/v2/language-model-v2-tool-result.ts +40 -0
  136. package/node_modules/@ai-sdk/provider/src/language-model/v2/language-model-v2-usage.ts +34 -0
  137. package/node_modules/@ai-sdk/provider/src/language-model/v2/language-model-v2.ts +137 -0
  138. package/node_modules/@ai-sdk/provider/src/language-model/v3/index.ts +21 -0
  139. package/node_modules/@ai-sdk/provider/src/language-model/v3/language-model-v3-call-options.ts +125 -0
  140. package/node_modules/@ai-sdk/provider/src/language-model/v3/language-model-v3-content.ts +16 -0
  141. package/node_modules/@ai-sdk/provider/src/language-model/v3/language-model-v3-data-content.ts +4 -0
  142. package/node_modules/@ai-sdk/provider/src/language-model/v3/language-model-v3-file.ts +32 -0
  143. package/node_modules/@ai-sdk/provider/src/language-model/v3/language-model-v3-finish-reason.ts +33 -0
  144. package/node_modules/@ai-sdk/provider/src/language-model/v3/language-model-v3-function-tool.ts +53 -0
  145. package/node_modules/@ai-sdk/provider/src/language-model/v3/language-model-v3-generate-result.ts +63 -0
  146. package/node_modules/@ai-sdk/provider/src/language-model/v3/language-model-v3-prompt.ts +422 -0
  147. package/node_modules/@ai-sdk/provider/src/language-model/v3/language-model-v3-provider-tool.ts +28 -0
  148. package/node_modules/@ai-sdk/provider/src/language-model/v3/language-model-v3-reasoning.ts +14 -0
  149. package/node_modules/@ai-sdk/provider/src/language-model/v3/language-model-v3-response-metadata.ts +16 -0
  150. package/node_modules/@ai-sdk/provider/src/language-model/v3/language-model-v3-source.ts +67 -0
  151. package/node_modules/@ai-sdk/provider/src/language-model/v3/language-model-v3-stream-part.ts +106 -0
  152. package/node_modules/@ai-sdk/provider/src/language-model/v3/language-model-v3-stream-result.ts +32 -0
  153. package/node_modules/@ai-sdk/provider/src/language-model/v3/language-model-v3-text.ts +15 -0
  154. package/node_modules/@ai-sdk/provider/src/language-model/v3/language-model-v3-tool-approval-request.ts +27 -0
  155. package/node_modules/@ai-sdk/provider/src/language-model/v3/language-model-v3-tool-call.ts +41 -0
  156. package/node_modules/@ai-sdk/provider/src/language-model/v3/language-model-v3-tool-choice.ts +5 -0
  157. package/node_modules/@ai-sdk/provider/src/language-model/v3/language-model-v3-tool-result.ts +51 -0
  158. package/node_modules/@ai-sdk/provider/src/language-model/v3/language-model-v3-usage.ts +59 -0
  159. package/node_modules/@ai-sdk/provider/src/language-model/v3/language-model-v3.ts +61 -0
  160. package/node_modules/@ai-sdk/provider/src/language-model-middleware/index.ts +2 -0
  161. package/node_modules/@ai-sdk/provider/src/language-model-middleware/v2/index.ts +1 -0
  162. package/node_modules/@ai-sdk/provider/src/language-model-middleware/v2/language-model-v2-middleware.ts +82 -0
  163. package/node_modules/@ai-sdk/provider/src/language-model-middleware/v3/index.ts +1 -0
  164. package/node_modules/@ai-sdk/provider/src/language-model-middleware/v3/language-model-v3-middleware.ts +84 -0
  165. package/node_modules/@ai-sdk/provider/src/provider/index.ts +2 -0
  166. package/node_modules/@ai-sdk/provider/src/provider/v2/index.ts +1 -0
  167. package/node_modules/@ai-sdk/provider/src/provider/v2/provider-v2.ts +64 -0
  168. package/node_modules/@ai-sdk/provider/src/provider/v3/index.ts +1 -0
  169. package/node_modules/@ai-sdk/provider/src/provider/v3/provider-v3.ts +93 -0
  170. package/node_modules/@ai-sdk/provider/src/reranking-model/index.ts +1 -0
  171. package/node_modules/@ai-sdk/provider/src/reranking-model/v3/index.ts +2 -0
  172. package/node_modules/@ai-sdk/provider/src/reranking-model/v3/reranking-model-v3-call-options.ts +40 -0
  173. package/node_modules/@ai-sdk/provider/src/reranking-model/v3/reranking-model-v3.ts +90 -0
  174. package/node_modules/@ai-sdk/provider/src/shared/index.ts +2 -0
  175. package/node_modules/@ai-sdk/provider/src/shared/v2/index.ts +3 -0
  176. package/node_modules/@ai-sdk/provider/src/shared/v2/shared-v2-headers.ts +1 -0
  177. package/node_modules/@ai-sdk/provider/src/shared/v2/shared-v2-provider-metadata.ts +27 -0
  178. package/node_modules/@ai-sdk/provider/src/shared/v2/shared-v2-provider-options.ts +24 -0
  179. package/node_modules/@ai-sdk/provider/src/shared/v3/index.ts +4 -0
  180. package/node_modules/@ai-sdk/provider/src/shared/v3/shared-v3-headers.ts +1 -0
  181. package/node_modules/@ai-sdk/provider/src/shared/v3/shared-v3-provider-metadata.ts +24 -0
  182. package/node_modules/@ai-sdk/provider/src/shared/v3/shared-v3-provider-options.ts +24 -0
  183. package/node_modules/@ai-sdk/provider/src/shared/v3/shared-v3-warning.ts +50 -0
  184. package/node_modules/@ai-sdk/provider/src/speech-model/index.ts +2 -0
  185. package/node_modules/@ai-sdk/provider/src/speech-model/v2/index.ts +3 -0
  186. package/node_modules/@ai-sdk/provider/src/speech-model/v2/speech-model-v2-call-options.ts +62 -0
  187. package/node_modules/@ai-sdk/provider/src/speech-model/v2/speech-model-v2-call-warning.ts +16 -0
  188. package/node_modules/@ai-sdk/provider/src/speech-model/v2/speech-model-v2.ts +89 -0
  189. package/node_modules/@ai-sdk/provider/src/speech-model/v3/index.ts +2 -0
  190. package/node_modules/@ai-sdk/provider/src/speech-model/v3/speech-model-v3-call-options.ts +62 -0
  191. package/node_modules/@ai-sdk/provider/src/speech-model/v3/speech-model-v3.ts +89 -0
  192. package/node_modules/@ai-sdk/provider/src/transcription-model/index.ts +2 -0
  193. package/node_modules/@ai-sdk/provider/src/transcription-model/v2/index.ts +3 -0
  194. package/node_modules/@ai-sdk/provider/src/transcription-model/v2/transcription-model-v2-call-options.ts +48 -0
  195. package/node_modules/@ai-sdk/provider/src/transcription-model/v2/transcription-model-v2-call-warning.ts +16 -0
  196. package/node_modules/@ai-sdk/provider/src/transcription-model/v2/transcription-model-v2.ts +117 -0
  197. package/node_modules/@ai-sdk/provider/src/transcription-model/v3/index.ts +2 -0
  198. package/node_modules/@ai-sdk/provider/src/transcription-model/v3/transcription-model-v3-call-options.ts +45 -0
  199. package/node_modules/@ai-sdk/provider/src/transcription-model/v3/transcription-model-v3.ts +117 -0
  200. package/node_modules/@ai-sdk/provider/src/video-model/index.ts +1 -0
  201. package/node_modules/@ai-sdk/provider/src/video-model/v3/index.ts +6 -0
  202. package/node_modules/@ai-sdk/provider/src/video-model/v3/video-model-v3-call-options.ts +81 -0
  203. package/node_modules/@ai-sdk/provider/src/video-model/v3/video-model-v3-file.ts +40 -0
  204. package/node_modules/@ai-sdk/provider/src/video-model/v3/video-model-v3.ts +132 -0
  205. package/node_modules/@ai-sdk/provider-utils/CHANGELOG.md +1560 -0
  206. package/node_modules/@ai-sdk/provider-utils/README.md +1 -0
  207. package/node_modules/@ai-sdk/provider-utils/dist/index.d.mts +1433 -0
  208. package/node_modules/@ai-sdk/provider-utils/dist/index.d.ts +1433 -0
  209. package/node_modules/@ai-sdk/provider-utils/dist/index.js +2844 -0
  210. package/node_modules/@ai-sdk/provider-utils/dist/index.js.map +1 -0
  211. package/node_modules/@ai-sdk/provider-utils/dist/index.mjs +2756 -0
  212. package/node_modules/@ai-sdk/provider-utils/dist/index.mjs.map +1 -0
  213. package/node_modules/@ai-sdk/provider-utils/dist/test/index.d.mts +17 -0
  214. package/node_modules/@ai-sdk/provider-utils/dist/test/index.d.ts +17 -0
  215. package/node_modules/@ai-sdk/provider-utils/dist/test/index.js +110 -0
  216. package/node_modules/@ai-sdk/provider-utils/dist/test/index.js.map +1 -0
  217. package/node_modules/@ai-sdk/provider-utils/dist/test/index.mjs +77 -0
  218. package/node_modules/@ai-sdk/provider-utils/dist/test/index.mjs.map +1 -0
  219. package/node_modules/@ai-sdk/provider-utils/package.json +81 -0
  220. package/node_modules/@ai-sdk/provider-utils/src/add-additional-properties-to-json-schema.ts +53 -0
  221. package/node_modules/@ai-sdk/provider-utils/src/combine-headers.ts +11 -0
  222. package/node_modules/@ai-sdk/provider-utils/src/convert-async-iterator-to-readable-stream.ts +47 -0
  223. package/node_modules/@ai-sdk/provider-utils/src/convert-image-model-file-to-data-uri.ts +19 -0
  224. package/node_modules/@ai-sdk/provider-utils/src/convert-to-form-data.ts +61 -0
  225. package/node_modules/@ai-sdk/provider-utils/src/create-tool-name-mapping.ts +82 -0
  226. package/node_modules/@ai-sdk/provider-utils/src/delay.ts +47 -0
  227. package/node_modules/@ai-sdk/provider-utils/src/delayed-promise.ts +61 -0
  228. package/node_modules/@ai-sdk/provider-utils/src/download-blob.ts +52 -0
  229. package/node_modules/@ai-sdk/provider-utils/src/download-error.ts +39 -0
  230. package/node_modules/@ai-sdk/provider-utils/src/extract-response-headers.ts +9 -0
  231. package/node_modules/@ai-sdk/provider-utils/src/fetch-function.ts +4 -0
  232. package/node_modules/@ai-sdk/provider-utils/src/generate-id.ts +57 -0
  233. package/node_modules/@ai-sdk/provider-utils/src/get-error-message.ts +15 -0
  234. package/node_modules/@ai-sdk/provider-utils/src/get-from-api.ts +97 -0
  235. package/node_modules/@ai-sdk/provider-utils/src/get-runtime-environment-user-agent.ts +24 -0
  236. package/node_modules/@ai-sdk/provider-utils/src/handle-fetch-error.ts +72 -0
  237. package/node_modules/@ai-sdk/provider-utils/src/index.ts +73 -0
  238. package/node_modules/@ai-sdk/provider-utils/src/inject-json-instruction.ts +63 -0
  239. package/node_modules/@ai-sdk/provider-utils/src/is-abort-error.ts +8 -0
  240. package/node_modules/@ai-sdk/provider-utils/src/is-async-iterable.ts +3 -0
  241. package/node_modules/@ai-sdk/provider-utils/src/is-non-nullable.ts +12 -0
  242. package/node_modules/@ai-sdk/provider-utils/src/is-url-supported.ts +40 -0
  243. package/node_modules/@ai-sdk/provider-utils/src/load-api-key.ts +45 -0
  244. package/node_modules/@ai-sdk/provider-utils/src/load-optional-setting.ts +30 -0
  245. package/node_modules/@ai-sdk/provider-utils/src/load-setting.ts +62 -0
  246. package/node_modules/@ai-sdk/provider-utils/src/maybe-promise-like.ts +3 -0
  247. package/node_modules/@ai-sdk/provider-utils/src/media-type-to-extension.ts +22 -0
  248. package/node_modules/@ai-sdk/provider-utils/src/normalize-headers.ts +38 -0
  249. package/node_modules/@ai-sdk/provider-utils/src/parse-json-event-stream.ts +33 -0
  250. package/node_modules/@ai-sdk/provider-utils/src/parse-json.ts +122 -0
  251. package/node_modules/@ai-sdk/provider-utils/src/parse-provider-options.ts +32 -0
  252. package/node_modules/@ai-sdk/provider-utils/src/post-to-api.ts +166 -0
  253. package/node_modules/@ai-sdk/provider-utils/src/provider-tool-factory.ts +125 -0
  254. package/node_modules/@ai-sdk/provider-utils/src/read-response-with-size-limit.ts +97 -0
  255. package/node_modules/@ai-sdk/provider-utils/src/remove-undefined-entries.ts +12 -0
  256. package/node_modules/@ai-sdk/provider-utils/src/resolve.ts +17 -0
  257. package/node_modules/@ai-sdk/provider-utils/src/response-handler.ts +186 -0
  258. package/node_modules/@ai-sdk/provider-utils/src/schema.ts +267 -0
  259. package/node_modules/@ai-sdk/provider-utils/src/secure-json-parse.ts +96 -0
  260. package/node_modules/@ai-sdk/provider-utils/src/strip-file-extension.ts +13 -0
  261. package/node_modules/@ai-sdk/provider-utils/src/test/convert-array-to-async-iterable.ts +9 -0
  262. package/node_modules/@ai-sdk/provider-utils/src/test/convert-array-to-readable-stream.ts +15 -0
  263. package/node_modules/@ai-sdk/provider-utils/src/test/convert-async-iterable-to-array.ts +9 -0
  264. package/node_modules/@ai-sdk/provider-utils/src/test/convert-readable-stream-to-array.ts +14 -0
  265. package/node_modules/@ai-sdk/provider-utils/src/test/convert-response-stream-to-array.ts +9 -0
  266. package/node_modules/@ai-sdk/provider-utils/src/test/index.ts +7 -0
  267. package/node_modules/@ai-sdk/provider-utils/src/test/is-node-version.ts +4 -0
  268. package/node_modules/@ai-sdk/provider-utils/src/test/mock-id.ts +8 -0
  269. package/node_modules/@ai-sdk/provider-utils/src/to-json-schema/zod3-to-json-schema/LICENSE +16 -0
  270. package/node_modules/@ai-sdk/provider-utils/src/to-json-schema/zod3-to-json-schema/README.md +24 -0
  271. package/node_modules/@ai-sdk/provider-utils/src/to-json-schema/zod3-to-json-schema/get-relative-path.ts +7 -0
  272. package/node_modules/@ai-sdk/provider-utils/src/to-json-schema/zod3-to-json-schema/index.ts +1 -0
  273. package/node_modules/@ai-sdk/provider-utils/src/to-json-schema/zod3-to-json-schema/options.ts +98 -0
  274. package/node_modules/@ai-sdk/provider-utils/src/to-json-schema/zod3-to-json-schema/parse-def.ts +109 -0
  275. package/node_modules/@ai-sdk/provider-utils/src/to-json-schema/zod3-to-json-schema/parse-types.ts +57 -0
  276. package/node_modules/@ai-sdk/provider-utils/src/to-json-schema/zod3-to-json-schema/parsers/any.ts +5 -0
  277. package/node_modules/@ai-sdk/provider-utils/src/to-json-schema/zod3-to-json-schema/parsers/array.ts +38 -0
  278. package/node_modules/@ai-sdk/provider-utils/src/to-json-schema/zod3-to-json-schema/parsers/bigint.ts +44 -0
  279. package/node_modules/@ai-sdk/provider-utils/src/to-json-schema/zod3-to-json-schema/parsers/boolean.ts +7 -0
  280. package/node_modules/@ai-sdk/provider-utils/src/to-json-schema/zod3-to-json-schema/parsers/branded.ts +7 -0
  281. package/node_modules/@ai-sdk/provider-utils/src/to-json-schema/zod3-to-json-schema/parsers/catch.ts +7 -0
  282. package/node_modules/@ai-sdk/provider-utils/src/to-json-schema/zod3-to-json-schema/parsers/date.ts +64 -0
  283. package/node_modules/@ai-sdk/provider-utils/src/to-json-schema/zod3-to-json-schema/parsers/default.ts +14 -0
  284. package/node_modules/@ai-sdk/provider-utils/src/to-json-schema/zod3-to-json-schema/parsers/effects.ts +14 -0
  285. package/node_modules/@ai-sdk/provider-utils/src/to-json-schema/zod3-to-json-schema/parsers/enum.ts +13 -0
  286. package/node_modules/@ai-sdk/provider-utils/src/to-json-schema/zod3-to-json-schema/parsers/intersection.ts +52 -0
  287. package/node_modules/@ai-sdk/provider-utils/src/to-json-schema/zod3-to-json-schema/parsers/literal.ts +29 -0
  288. package/node_modules/@ai-sdk/provider-utils/src/to-json-schema/zod3-to-json-schema/parsers/map.ts +47 -0
  289. package/node_modules/@ai-sdk/provider-utils/src/to-json-schema/zod3-to-json-schema/parsers/native-enum.ts +31 -0
  290. package/node_modules/@ai-sdk/provider-utils/src/to-json-schema/zod3-to-json-schema/parsers/never.ts +9 -0
  291. package/node_modules/@ai-sdk/provider-utils/src/to-json-schema/zod3-to-json-schema/parsers/null.ts +9 -0
  292. package/node_modules/@ai-sdk/provider-utils/src/to-json-schema/zod3-to-json-schema/parsers/nullable.ts +42 -0
  293. package/node_modules/@ai-sdk/provider-utils/src/to-json-schema/zod3-to-json-schema/parsers/number.ts +44 -0
  294. package/node_modules/@ai-sdk/provider-utils/src/to-json-schema/zod3-to-json-schema/parsers/object.ts +88 -0
  295. package/node_modules/@ai-sdk/provider-utils/src/to-json-schema/zod3-to-json-schema/parsers/optional.ts +23 -0
  296. package/node_modules/@ai-sdk/provider-utils/src/to-json-schema/zod3-to-json-schema/parsers/pipeline.ts +29 -0
  297. package/node_modules/@ai-sdk/provider-utils/src/to-json-schema/zod3-to-json-schema/parsers/promise.ts +11 -0
  298. package/node_modules/@ai-sdk/provider-utils/src/to-json-schema/zod3-to-json-schema/parsers/readonly.ts +7 -0
  299. package/node_modules/@ai-sdk/provider-utils/src/to-json-schema/zod3-to-json-schema/parsers/record.ts +71 -0
  300. package/node_modules/@ai-sdk/provider-utils/src/to-json-schema/zod3-to-json-schema/parsers/set.ts +35 -0
  301. package/node_modules/@ai-sdk/provider-utils/src/to-json-schema/zod3-to-json-schema/parsers/string.ts +426 -0
  302. package/node_modules/@ai-sdk/provider-utils/src/to-json-schema/zod3-to-json-schema/parsers/tuple.ts +61 -0
  303. package/node_modules/@ai-sdk/provider-utils/src/to-json-schema/zod3-to-json-schema/parsers/undefined.ts +11 -0
  304. package/node_modules/@ai-sdk/provider-utils/src/to-json-schema/zod3-to-json-schema/parsers/union.ts +144 -0
  305. package/node_modules/@ai-sdk/provider-utils/src/to-json-schema/zod3-to-json-schema/parsers/unknown.ts +7 -0
  306. package/node_modules/@ai-sdk/provider-utils/src/to-json-schema/zod3-to-json-schema/refs.ts +39 -0
  307. package/node_modules/@ai-sdk/provider-utils/src/to-json-schema/zod3-to-json-schema/select-parser.ts +115 -0
  308. package/node_modules/@ai-sdk/provider-utils/src/to-json-schema/zod3-to-json-schema/zod3-to-json-schema.ts +93 -0
  309. package/node_modules/@ai-sdk/provider-utils/src/types/assistant-model-message.ts +39 -0
  310. package/node_modules/@ai-sdk/provider-utils/src/types/content-part.ts +379 -0
  311. package/node_modules/@ai-sdk/provider-utils/src/types/data-content.ts +4 -0
  312. package/node_modules/@ai-sdk/provider-utils/src/types/execute-tool.ts +27 -0
  313. package/node_modules/@ai-sdk/provider-utils/src/types/index.ts +40 -0
  314. package/node_modules/@ai-sdk/provider-utils/src/types/model-message.ts +14 -0
  315. package/node_modules/@ai-sdk/provider-utils/src/types/provider-options.ts +9 -0
  316. package/node_modules/@ai-sdk/provider-utils/src/types/system-model-message.ts +20 -0
  317. package/node_modules/@ai-sdk/provider-utils/src/types/tool-approval-request.ts +16 -0
  318. package/node_modules/@ai-sdk/provider-utils/src/types/tool-approval-response.ts +27 -0
  319. package/node_modules/@ai-sdk/provider-utils/src/types/tool-call.ts +31 -0
  320. package/node_modules/@ai-sdk/provider-utils/src/types/tool-model-message.ts +23 -0
  321. package/node_modules/@ai-sdk/provider-utils/src/types/tool-result.ts +35 -0
  322. package/node_modules/@ai-sdk/provider-utils/src/types/tool.ts +324 -0
  323. package/node_modules/@ai-sdk/provider-utils/src/types/user-model-message.ts +22 -0
  324. package/node_modules/@ai-sdk/provider-utils/src/uint8-utils.ts +26 -0
  325. package/node_modules/@ai-sdk/provider-utils/src/validate-download-url.ts +143 -0
  326. package/node_modules/@ai-sdk/provider-utils/src/validate-types.ts +87 -0
  327. package/node_modules/@ai-sdk/provider-utils/src/version.ts +6 -0
  328. package/node_modules/@ai-sdk/provider-utils/src/with-user-agent-suffix.ts +27 -0
  329. package/node_modules/@ai-sdk/provider-utils/src/without-trailing-slash.ts +3 -0
  330. package/node_modules/@ai-sdk/provider-utils/test.d.ts +1 -0
  331. package/node_modules/@opentelemetry/api/LICENSE +201 -0
  332. package/node_modules/@opentelemetry/api/README.md +116 -0
  333. package/node_modules/@opentelemetry/api/build/esm/api/context.d.ts +41 -0
  334. package/node_modules/@opentelemetry/api/build/esm/api/context.js +110 -0
  335. package/node_modules/@opentelemetry/api/build/esm/api/context.js.map +1 -0
  336. package/node_modules/@opentelemetry/api/build/esm/api/diag.d.ts +30 -0
  337. package/node_modules/@opentelemetry/api/build/esm/api/diag.js +121 -0
  338. package/node_modules/@opentelemetry/api/build/esm/api/diag.js.map +1 -0
  339. package/node_modules/@opentelemetry/api/build/esm/api/metrics.d.ts +28 -0
  340. package/node_modules/@opentelemetry/api/build/esm/api/metrics.js +60 -0
  341. package/node_modules/@opentelemetry/api/build/esm/api/metrics.js.map +1 -0
  342. package/node_modules/@opentelemetry/api/build/esm/api/propagation.d.ts +49 -0
  343. package/node_modules/@opentelemetry/api/build/esm/api/propagation.js +89 -0
  344. package/node_modules/@opentelemetry/api/build/esm/api/propagation.js.map +1 -0
  345. package/node_modules/@opentelemetry/api/build/esm/api/trace.d.ts +40 -0
  346. package/node_modules/@opentelemetry/api/build/esm/api/trace.js +77 -0
  347. package/node_modules/@opentelemetry/api/build/esm/api/trace.js.map +1 -0
  348. package/node_modules/@opentelemetry/api/build/esm/baggage/context-helpers.d.ts +29 -0
  349. package/node_modules/@opentelemetry/api/build/esm/baggage/context-helpers.js +56 -0
  350. package/node_modules/@opentelemetry/api/build/esm/baggage/context-helpers.js.map +1 -0
  351. package/node_modules/@opentelemetry/api/build/esm/baggage/internal/baggage-impl.d.ts +12 -0
  352. package/node_modules/@opentelemetry/api/build/esm/baggage/internal/baggage-impl.js +98 -0
  353. package/node_modules/@opentelemetry/api/build/esm/baggage/internal/baggage-impl.js.map +1 -0
  354. package/node_modules/@opentelemetry/api/build/esm/baggage/internal/symbol.d.ts +5 -0
  355. package/node_modules/@opentelemetry/api/build/esm/baggage/internal/symbol.js +20 -0
  356. package/node_modules/@opentelemetry/api/build/esm/baggage/internal/symbol.js.map +1 -0
  357. package/node_modules/@opentelemetry/api/build/esm/baggage/types.d.ts +60 -0
  358. package/node_modules/@opentelemetry/api/build/esm/baggage/types.js +17 -0
  359. package/node_modules/@opentelemetry/api/build/esm/baggage/types.js.map +1 -0
  360. package/node_modules/@opentelemetry/api/build/esm/baggage/utils.d.ts +15 -0
  361. package/node_modules/@opentelemetry/api/build/esm/baggage/utils.js +47 -0
  362. package/node_modules/@opentelemetry/api/build/esm/baggage/utils.js.map +1 -0
  363. package/node_modules/@opentelemetry/api/build/esm/common/Attributes.d.ts +15 -0
  364. package/node_modules/@opentelemetry/api/build/esm/common/Attributes.js +17 -0
  365. package/node_modules/@opentelemetry/api/build/esm/common/Attributes.js.map +1 -0
  366. package/node_modules/@opentelemetry/api/build/esm/common/Exception.d.ts +26 -0
  367. package/node_modules/@opentelemetry/api/build/esm/common/Exception.js +17 -0
  368. package/node_modules/@opentelemetry/api/build/esm/common/Exception.js.map +1 -0
  369. package/node_modules/@opentelemetry/api/build/esm/common/Time.d.ts +20 -0
  370. package/node_modules/@opentelemetry/api/build/esm/common/Time.js +2 -0
  371. package/node_modules/@opentelemetry/api/build/esm/common/Time.js.map +1 -0
  372. package/node_modules/@opentelemetry/api/build/esm/context/NoopContextManager.d.ts +9 -0
  373. package/node_modules/@opentelemetry/api/build/esm/context/NoopContextManager.js +67 -0
  374. package/node_modules/@opentelemetry/api/build/esm/context/NoopContextManager.js.map +1 -0
  375. package/node_modules/@opentelemetry/api/build/esm/context/context.d.ts +6 -0
  376. package/node_modules/@opentelemetry/api/build/esm/context/context.js +52 -0
  377. package/node_modules/@opentelemetry/api/build/esm/context/context.js.map +1 -0
  378. package/node_modules/@opentelemetry/api/build/esm/context/types.d.ts +52 -0
  379. package/node_modules/@opentelemetry/api/build/esm/context/types.js +17 -0
  380. package/node_modules/@opentelemetry/api/build/esm/context/types.js.map +1 -0
  381. package/node_modules/@opentelemetry/api/build/esm/context-api.d.ts +4 -0
  382. package/node_modules/@opentelemetry/api/build/esm/context-api.js +21 -0
  383. package/node_modules/@opentelemetry/api/build/esm/context-api.js.map +1 -0
  384. package/node_modules/@opentelemetry/api/build/esm/diag/ComponentLogger.d.ts +20 -0
  385. package/node_modules/@opentelemetry/api/build/esm/diag/ComponentLogger.js +102 -0
  386. package/node_modules/@opentelemetry/api/build/esm/diag/ComponentLogger.js.map +1 -0
  387. package/node_modules/@opentelemetry/api/build/esm/diag/consoleLogger.d.ts +38 -0
  388. package/node_modules/@opentelemetry/api/build/esm/diag/consoleLogger.js +59 -0
  389. package/node_modules/@opentelemetry/api/build/esm/diag/consoleLogger.js.map +1 -0
  390. package/node_modules/@opentelemetry/api/build/esm/diag/internal/logLevelLogger.d.ts +3 -0
  391. package/node_modules/@opentelemetry/api/build/esm/diag/internal/logLevelLogger.js +41 -0
  392. package/node_modules/@opentelemetry/api/build/esm/diag/internal/logLevelLogger.js.map +1 -0
  393. package/node_modules/@opentelemetry/api/build/esm/diag/internal/noopLogger.d.ts +8 -0
  394. package/node_modules/@opentelemetry/api/build/esm/diag/internal/noopLogger.js +31 -0
  395. package/node_modules/@opentelemetry/api/build/esm/diag/internal/noopLogger.js.map +1 -0
  396. package/node_modules/@opentelemetry/api/build/esm/diag/types.d.ts +100 -0
  397. package/node_modules/@opentelemetry/api/build/esm/diag/types.js +41 -0
  398. package/node_modules/@opentelemetry/api/build/esm/diag/types.js.map +1 -0
  399. package/node_modules/@opentelemetry/api/build/esm/diag-api.d.ts +9 -0
  400. package/node_modules/@opentelemetry/api/build/esm/diag-api.js +26 -0
  401. package/node_modules/@opentelemetry/api/build/esm/diag-api.js.map +1 -0
  402. package/node_modules/@opentelemetry/api/build/esm/experimental/index.d.ts +3 -0
  403. package/node_modules/@opentelemetry/api/build/esm/experimental/index.js +17 -0
  404. package/node_modules/@opentelemetry/api/build/esm/experimental/index.js.map +1 -0
  405. package/node_modules/@opentelemetry/api/build/esm/experimental/trace/SugaredOptions.d.ts +13 -0
  406. package/node_modules/@opentelemetry/api/build/esm/experimental/trace/SugaredOptions.js +17 -0
  407. package/node_modules/@opentelemetry/api/build/esm/experimental/trace/SugaredOptions.js.map +1 -0
  408. package/node_modules/@opentelemetry/api/build/esm/experimental/trace/SugaredTracer.d.ts +64 -0
  409. package/node_modules/@opentelemetry/api/build/esm/experimental/trace/SugaredTracer.js +92 -0
  410. package/node_modules/@opentelemetry/api/build/esm/experimental/trace/SugaredTracer.js.map +1 -0
  411. package/node_modules/@opentelemetry/api/build/esm/index.d.ts +54 -0
  412. package/node_modules/@opentelemetry/api/build/esm/index.js +53 -0
  413. package/node_modules/@opentelemetry/api/build/esm/index.js.map +1 -0
  414. package/node_modules/@opentelemetry/api/build/esm/internal/global-utils.d.ts +18 -0
  415. package/node_modules/@opentelemetry/api/build/esm/internal/global-utils.js +59 -0
  416. package/node_modules/@opentelemetry/api/build/esm/internal/global-utils.js.map +1 -0
  417. package/node_modules/@opentelemetry/api/build/esm/internal/semver.d.ts +34 -0
  418. package/node_modules/@opentelemetry/api/build/esm/internal/semver.js +118 -0
  419. package/node_modules/@opentelemetry/api/build/esm/internal/semver.js.map +1 -0
  420. package/node_modules/@opentelemetry/api/build/esm/metrics/Meter.d.ts +110 -0
  421. package/node_modules/@opentelemetry/api/build/esm/metrics/Meter.js +17 -0
  422. package/node_modules/@opentelemetry/api/build/esm/metrics/Meter.js.map +1 -0
  423. package/node_modules/@opentelemetry/api/build/esm/metrics/MeterProvider.d.ts +17 -0
  424. package/node_modules/@opentelemetry/api/build/esm/metrics/MeterProvider.js +17 -0
  425. package/node_modules/@opentelemetry/api/build/esm/metrics/MeterProvider.js.map +1 -0
  426. package/node_modules/@opentelemetry/api/build/esm/metrics/Metric.d.ts +115 -0
  427. package/node_modules/@opentelemetry/api/build/esm/metrics/Metric.js +22 -0
  428. package/node_modules/@opentelemetry/api/build/esm/metrics/Metric.js.map +1 -0
  429. package/node_modules/@opentelemetry/api/build/esm/metrics/NoopMeter.d.ts +82 -0
  430. package/node_modules/@opentelemetry/api/build/esm/metrics/NoopMeter.js +181 -0
  431. package/node_modules/@opentelemetry/api/build/esm/metrics/NoopMeter.js.map +1 -0
  432. package/node_modules/@opentelemetry/api/build/esm/metrics/NoopMeterProvider.d.ts +11 -0
  433. package/node_modules/@opentelemetry/api/build/esm/metrics/NoopMeterProvider.js +31 -0
  434. package/node_modules/@opentelemetry/api/build/esm/metrics/NoopMeterProvider.js.map +1 -0
  435. package/node_modules/@opentelemetry/api/build/esm/metrics/ObservableResult.d.ts +31 -0
  436. package/node_modules/@opentelemetry/api/build/esm/metrics/ObservableResult.js +17 -0
  437. package/node_modules/@opentelemetry/api/build/esm/metrics/ObservableResult.js.map +1 -0
  438. package/node_modules/@opentelemetry/api/build/esm/metrics-api.d.ts +4 -0
  439. package/node_modules/@opentelemetry/api/build/esm/metrics-api.js +21 -0
  440. package/node_modules/@opentelemetry/api/build/esm/metrics-api.js.map +1 -0
  441. package/node_modules/@opentelemetry/api/build/esm/platform/browser/globalThis.d.ts +10 -0
  442. package/node_modules/@opentelemetry/api/build/esm/platform/browser/globalThis.js +35 -0
  443. package/node_modules/@opentelemetry/api/build/esm/platform/browser/globalThis.js.map +1 -0
  444. package/node_modules/@opentelemetry/api/build/esm/platform/browser/index.d.ts +2 -0
  445. package/node_modules/@opentelemetry/api/build/esm/platform/browser/index.js +17 -0
  446. package/node_modules/@opentelemetry/api/build/esm/platform/browser/index.js.map +1 -0
  447. package/node_modules/@opentelemetry/api/build/esm/platform/index.d.ts +2 -0
  448. package/node_modules/@opentelemetry/api/build/esm/platform/index.js +17 -0
  449. package/node_modules/@opentelemetry/api/build/esm/platform/index.js.map +1 -0
  450. package/node_modules/@opentelemetry/api/build/esm/platform/node/globalThis.d.ts +3 -0
  451. package/node_modules/@opentelemetry/api/build/esm/platform/node/globalThis.js +19 -0
  452. package/node_modules/@opentelemetry/api/build/esm/platform/node/globalThis.js.map +1 -0
  453. package/node_modules/@opentelemetry/api/build/esm/platform/node/index.d.ts +2 -0
  454. package/node_modules/@opentelemetry/api/build/esm/platform/node/index.js +17 -0
  455. package/node_modules/@opentelemetry/api/build/esm/platform/node/index.js.map +1 -0
  456. package/node_modules/@opentelemetry/api/build/esm/propagation/NoopTextMapPropagator.d.ts +13 -0
  457. package/node_modules/@opentelemetry/api/build/esm/propagation/NoopTextMapPropagator.js +34 -0
  458. package/node_modules/@opentelemetry/api/build/esm/propagation/NoopTextMapPropagator.js.map +1 -0
  459. package/node_modules/@opentelemetry/api/build/esm/propagation/TextMapPropagator.d.ts +84 -0
  460. package/node_modules/@opentelemetry/api/build/esm/propagation/TextMapPropagator.js +38 -0
  461. package/node_modules/@opentelemetry/api/build/esm/propagation/TextMapPropagator.js.map +1 -0
  462. package/node_modules/@opentelemetry/api/build/esm/propagation-api.d.ts +4 -0
  463. package/node_modules/@opentelemetry/api/build/esm/propagation-api.js +21 -0
  464. package/node_modules/@opentelemetry/api/build/esm/propagation-api.js.map +1 -0
  465. package/node_modules/@opentelemetry/api/build/esm/trace/NonRecordingSpan.d.ts +28 -0
  466. package/node_modules/@opentelemetry/api/build/esm/trace/NonRecordingSpan.js +68 -0
  467. package/node_modules/@opentelemetry/api/build/esm/trace/NonRecordingSpan.js.map +1 -0
  468. package/node_modules/@opentelemetry/api/build/esm/trace/NoopTracer.d.ts +14 -0
  469. package/node_modules/@opentelemetry/api/build/esm/trace/NoopTracer.js +76 -0
  470. package/node_modules/@opentelemetry/api/build/esm/trace/NoopTracer.js.map +1 -0
  471. package/node_modules/@opentelemetry/api/build/esm/trace/NoopTracerProvider.d.ts +13 -0
  472. package/node_modules/@opentelemetry/api/build/esm/trace/NoopTracerProvider.js +32 -0
  473. package/node_modules/@opentelemetry/api/build/esm/trace/NoopTracerProvider.js.map +1 -0
  474. package/node_modules/@opentelemetry/api/build/esm/trace/ProxyTracer.d.ts +27 -0
  475. package/node_modules/@opentelemetry/api/build/esm/trace/ProxyTracer.js +53 -0
  476. package/node_modules/@opentelemetry/api/build/esm/trace/ProxyTracer.js.map +1 -0
  477. package/node_modules/@opentelemetry/api/build/esm/trace/ProxyTracerProvider.d.ts +25 -0
  478. package/node_modules/@opentelemetry/api/build/esm/trace/ProxyTracerProvider.js +54 -0
  479. package/node_modules/@opentelemetry/api/build/esm/trace/ProxyTracerProvider.js.map +1 -0
  480. package/node_modules/@opentelemetry/api/build/esm/trace/Sampler.d.ts +31 -0
  481. package/node_modules/@opentelemetry/api/build/esm/trace/Sampler.js +17 -0
  482. package/node_modules/@opentelemetry/api/build/esm/trace/Sampler.js.map +1 -0
  483. package/node_modules/@opentelemetry/api/build/esm/trace/SamplingResult.d.ts +49 -0
  484. package/node_modules/@opentelemetry/api/build/esm/trace/SamplingResult.js +39 -0
  485. package/node_modules/@opentelemetry/api/build/esm/trace/SamplingResult.js.map +1 -0
  486. package/node_modules/@opentelemetry/api/build/esm/trace/SpanOptions.d.ts +23 -0
  487. package/node_modules/@opentelemetry/api/build/esm/trace/SpanOptions.js +17 -0
  488. package/node_modules/@opentelemetry/api/build/esm/trace/SpanOptions.js.map +1 -0
  489. package/node_modules/@opentelemetry/api/build/esm/trace/attributes.d.ts +10 -0
  490. package/node_modules/@opentelemetry/api/build/esm/trace/attributes.js +17 -0
  491. package/node_modules/@opentelemetry/api/build/esm/trace/attributes.js.map +1 -0
  492. package/node_modules/@opentelemetry/api/build/esm/trace/context-utils.d.ts +41 -0
  493. package/node_modules/@opentelemetry/api/build/esm/trace/context-utils.js +73 -0
  494. package/node_modules/@opentelemetry/api/build/esm/trace/context-utils.js.map +1 -0
  495. package/node_modules/@opentelemetry/api/build/esm/trace/internal/tracestate-impl.d.ts +22 -0
  496. package/node_modules/@opentelemetry/api/build/esm/trace/internal/tracestate-impl.js +102 -0
  497. package/node_modules/@opentelemetry/api/build/esm/trace/internal/tracestate-impl.js.map +1 -0
  498. package/node_modules/@opentelemetry/api/build/esm/trace/internal/tracestate-validators.d.ts +15 -0
  499. package/node_modules/@opentelemetry/api/build/esm/trace/internal/tracestate-validators.js +41 -0
  500. package/node_modules/@opentelemetry/api/build/esm/trace/internal/tracestate-validators.js.map +1 -0
  501. package/node_modules/@opentelemetry/api/build/esm/trace/internal/utils.d.ts +3 -0
  502. package/node_modules/@opentelemetry/api/build/esm/trace/internal/utils.js +20 -0
  503. package/node_modules/@opentelemetry/api/build/esm/trace/internal/utils.js.map +1 -0
  504. package/node_modules/@opentelemetry/api/build/esm/trace/invalid-span-constants.d.ts +5 -0
  505. package/node_modules/@opentelemetry/api/build/esm/trace/invalid-span-constants.js +24 -0
  506. package/node_modules/@opentelemetry/api/build/esm/trace/invalid-span-constants.js.map +1 -0
  507. package/node_modules/@opentelemetry/api/build/esm/trace/link.d.ts +26 -0
  508. package/node_modules/@opentelemetry/api/build/esm/trace/link.js +17 -0
  509. package/node_modules/@opentelemetry/api/build/esm/trace/link.js.map +1 -0
  510. package/node_modules/@opentelemetry/api/build/esm/trace/span.d.ts +120 -0
  511. package/node_modules/@opentelemetry/api/build/esm/trace/span.js +17 -0
  512. package/node_modules/@opentelemetry/api/build/esm/trace/span.js.map +1 -0
  513. package/node_modules/@opentelemetry/api/build/esm/trace/span_context.d.ts +53 -0
  514. package/node_modules/@opentelemetry/api/build/esm/trace/span_context.js +17 -0
  515. package/node_modules/@opentelemetry/api/build/esm/trace/span_context.js.map +1 -0
  516. package/node_modules/@opentelemetry/api/build/esm/trace/span_kind.d.ts +27 -0
  517. package/node_modules/@opentelemetry/api/build/esm/trace/span_kind.js +43 -0
  518. package/node_modules/@opentelemetry/api/build/esm/trace/span_kind.js.map +1 -0
  519. package/node_modules/@opentelemetry/api/build/esm/trace/spancontext-utils.d.ts +17 -0
  520. package/node_modules/@opentelemetry/api/build/esm/trace/spancontext-utils.js +42 -0
  521. package/node_modules/@opentelemetry/api/build/esm/trace/spancontext-utils.js.map +1 -0
  522. package/node_modules/@opentelemetry/api/build/esm/trace/status.d.ts +25 -0
  523. package/node_modules/@opentelemetry/api/build/esm/trace/status.js +20 -0
  524. package/node_modules/@opentelemetry/api/build/esm/trace/status.js.map +1 -0
  525. package/node_modules/@opentelemetry/api/build/esm/trace/trace_flags.d.ts +7 -0
  526. package/node_modules/@opentelemetry/api/build/esm/trace/trace_flags.js +23 -0
  527. package/node_modules/@opentelemetry/api/build/esm/trace/trace_flags.js.map +1 -0
  528. package/node_modules/@opentelemetry/api/build/esm/trace/trace_state.d.ts +38 -0
  529. package/node_modules/@opentelemetry/api/build/esm/trace/trace_state.js +17 -0
  530. package/node_modules/@opentelemetry/api/build/esm/trace/trace_state.js.map +1 -0
  531. package/node_modules/@opentelemetry/api/build/esm/trace/tracer.d.ts +71 -0
  532. package/node_modules/@opentelemetry/api/build/esm/trace/tracer.js +17 -0
  533. package/node_modules/@opentelemetry/api/build/esm/trace/tracer.js.map +1 -0
  534. package/node_modules/@opentelemetry/api/build/esm/trace/tracer_options.d.ts +10 -0
  535. package/node_modules/@opentelemetry/api/build/esm/trace/tracer_options.js +17 -0
  536. package/node_modules/@opentelemetry/api/build/esm/trace/tracer_options.js.map +1 -0
  537. package/node_modules/@opentelemetry/api/build/esm/trace/tracer_provider.d.ts +21 -0
  538. package/node_modules/@opentelemetry/api/build/esm/trace/tracer_provider.js +17 -0
  539. package/node_modules/@opentelemetry/api/build/esm/trace/tracer_provider.js.map +1 -0
  540. package/node_modules/@opentelemetry/api/build/esm/trace-api.d.ts +4 -0
  541. package/node_modules/@opentelemetry/api/build/esm/trace-api.js +21 -0
  542. package/node_modules/@opentelemetry/api/build/esm/trace-api.js.map +1 -0
  543. package/node_modules/@opentelemetry/api/build/esm/version.d.ts +2 -0
  544. package/node_modules/@opentelemetry/api/build/esm/version.js +18 -0
  545. package/node_modules/@opentelemetry/api/build/esm/version.js.map +1 -0
  546. package/node_modules/@opentelemetry/api/build/esnext/api/context.d.ts +41 -0
  547. package/node_modules/@opentelemetry/api/build/esnext/api/context.js +77 -0
  548. package/node_modules/@opentelemetry/api/build/esnext/api/context.js.map +1 -0
  549. package/node_modules/@opentelemetry/api/build/esnext/api/diag.d.ts +30 -0
  550. package/node_modules/@opentelemetry/api/build/esnext/api/diag.js +89 -0
  551. package/node_modules/@opentelemetry/api/build/esnext/api/diag.js.map +1 -0
  552. package/node_modules/@opentelemetry/api/build/esnext/api/metrics.d.ts +28 -0
  553. package/node_modules/@opentelemetry/api/build/esnext/api/metrics.js +57 -0
  554. package/node_modules/@opentelemetry/api/build/esnext/api/metrics.js.map +1 -0
  555. package/node_modules/@opentelemetry/api/build/esnext/api/propagation.d.ts +49 -0
  556. package/node_modules/@opentelemetry/api/build/esnext/api/propagation.js +85 -0
  557. package/node_modules/@opentelemetry/api/build/esnext/api/propagation.js.map +1 -0
  558. package/node_modules/@opentelemetry/api/build/esnext/api/trace.d.ts +40 -0
  559. package/node_modules/@opentelemetry/api/build/esnext/api/trace.js +75 -0
  560. package/node_modules/@opentelemetry/api/build/esnext/api/trace.js.map +1 -0
  561. package/node_modules/@opentelemetry/api/build/esnext/baggage/context-helpers.d.ts +29 -0
  562. package/node_modules/@opentelemetry/api/build/esnext/baggage/context-helpers.js +56 -0
  563. package/node_modules/@opentelemetry/api/build/esnext/baggage/context-helpers.js.map +1 -0
  564. package/node_modules/@opentelemetry/api/build/esnext/baggage/internal/baggage-impl.d.ts +12 -0
  565. package/node_modules/@opentelemetry/api/build/esnext/baggage/internal/baggage-impl.js +51 -0
  566. package/node_modules/@opentelemetry/api/build/esnext/baggage/internal/baggage-impl.js.map +1 -0
  567. package/node_modules/@opentelemetry/api/build/esnext/baggage/internal/symbol.d.ts +5 -0
  568. package/node_modules/@opentelemetry/api/build/esnext/baggage/internal/symbol.js +20 -0
  569. package/node_modules/@opentelemetry/api/build/esnext/baggage/internal/symbol.js.map +1 -0
  570. package/node_modules/@opentelemetry/api/build/esnext/baggage/types.d.ts +60 -0
  571. package/node_modules/@opentelemetry/api/build/esnext/baggage/types.js +17 -0
  572. package/node_modules/@opentelemetry/api/build/esnext/baggage/types.js.map +1 -0
  573. package/node_modules/@opentelemetry/api/build/esnext/baggage/utils.d.ts +15 -0
  574. package/node_modules/@opentelemetry/api/build/esnext/baggage/utils.js +46 -0
  575. package/node_modules/@opentelemetry/api/build/esnext/baggage/utils.js.map +1 -0
  576. package/node_modules/@opentelemetry/api/build/esnext/common/Attributes.d.ts +15 -0
  577. package/node_modules/@opentelemetry/api/build/esnext/common/Attributes.js +17 -0
  578. package/node_modules/@opentelemetry/api/build/esnext/common/Attributes.js.map +1 -0
  579. package/node_modules/@opentelemetry/api/build/esnext/common/Exception.d.ts +26 -0
  580. package/node_modules/@opentelemetry/api/build/esnext/common/Exception.js +17 -0
  581. package/node_modules/@opentelemetry/api/build/esnext/common/Exception.js.map +1 -0
  582. package/node_modules/@opentelemetry/api/build/esnext/common/Time.d.ts +20 -0
  583. package/node_modules/@opentelemetry/api/build/esnext/common/Time.js +2 -0
  584. package/node_modules/@opentelemetry/api/build/esnext/common/Time.js.map +1 -0
  585. package/node_modules/@opentelemetry/api/build/esnext/context/NoopContextManager.d.ts +9 -0
  586. package/node_modules/@opentelemetry/api/build/esnext/context/NoopContextManager.js +34 -0
  587. package/node_modules/@opentelemetry/api/build/esnext/context/NoopContextManager.js.map +1 -0
  588. package/node_modules/@opentelemetry/api/build/esnext/context/context.d.ts +6 -0
  589. package/node_modules/@opentelemetry/api/build/esnext/context/context.js +51 -0
  590. package/node_modules/@opentelemetry/api/build/esnext/context/context.js.map +1 -0
  591. package/node_modules/@opentelemetry/api/build/esnext/context/types.d.ts +52 -0
  592. package/node_modules/@opentelemetry/api/build/esnext/context/types.js +17 -0
  593. package/node_modules/@opentelemetry/api/build/esnext/context/types.js.map +1 -0
  594. package/node_modules/@opentelemetry/api/build/esnext/context-api.d.ts +4 -0
  595. package/node_modules/@opentelemetry/api/build/esnext/context-api.js +21 -0
  596. package/node_modules/@opentelemetry/api/build/esnext/context-api.js.map +1 -0
  597. package/node_modules/@opentelemetry/api/build/esnext/diag/ComponentLogger.d.ts +20 -0
  598. package/node_modules/@opentelemetry/api/build/esnext/diag/ComponentLogger.js +55 -0
  599. package/node_modules/@opentelemetry/api/build/esnext/diag/ComponentLogger.js.map +1 -0
  600. package/node_modules/@opentelemetry/api/build/esnext/diag/consoleLogger.d.ts +38 -0
  601. package/node_modules/@opentelemetry/api/build/esnext/diag/consoleLogger.js +53 -0
  602. package/node_modules/@opentelemetry/api/build/esnext/diag/consoleLogger.js.map +1 -0
  603. package/node_modules/@opentelemetry/api/build/esnext/diag/internal/logLevelLogger.d.ts +3 -0
  604. package/node_modules/@opentelemetry/api/build/esnext/diag/internal/logLevelLogger.js +41 -0
  605. package/node_modules/@opentelemetry/api/build/esnext/diag/internal/logLevelLogger.js.map +1 -0
  606. package/node_modules/@opentelemetry/api/build/esnext/diag/internal/noopLogger.d.ts +8 -0
  607. package/node_modules/@opentelemetry/api/build/esnext/diag/internal/noopLogger.js +31 -0
  608. package/node_modules/@opentelemetry/api/build/esnext/diag/internal/noopLogger.js.map +1 -0
  609. package/node_modules/@opentelemetry/api/build/esnext/diag/types.d.ts +100 -0
  610. package/node_modules/@opentelemetry/api/build/esnext/diag/types.js +41 -0
  611. package/node_modules/@opentelemetry/api/build/esnext/diag/types.js.map +1 -0
  612. package/node_modules/@opentelemetry/api/build/esnext/diag-api.d.ts +9 -0
  613. package/node_modules/@opentelemetry/api/build/esnext/diag-api.js +26 -0
  614. package/node_modules/@opentelemetry/api/build/esnext/diag-api.js.map +1 -0
  615. package/node_modules/@opentelemetry/api/build/esnext/experimental/index.d.ts +3 -0
  616. package/node_modules/@opentelemetry/api/build/esnext/experimental/index.js +17 -0
  617. package/node_modules/@opentelemetry/api/build/esnext/experimental/index.js.map +1 -0
  618. package/node_modules/@opentelemetry/api/build/esnext/experimental/trace/SugaredOptions.d.ts +13 -0
  619. package/node_modules/@opentelemetry/api/build/esnext/experimental/trace/SugaredOptions.js +17 -0
  620. package/node_modules/@opentelemetry/api/build/esnext/experimental/trace/SugaredOptions.js.map +1 -0
  621. package/node_modules/@opentelemetry/api/build/esnext/experimental/trace/SugaredTracer.d.ts +64 -0
  622. package/node_modules/@opentelemetry/api/build/esnext/experimental/trace/SugaredTracer.js +88 -0
  623. package/node_modules/@opentelemetry/api/build/esnext/experimental/trace/SugaredTracer.js.map +1 -0
  624. package/node_modules/@opentelemetry/api/build/esnext/index.d.ts +54 -0
  625. package/node_modules/@opentelemetry/api/build/esnext/index.js +53 -0
  626. package/node_modules/@opentelemetry/api/build/esnext/index.js.map +1 -0
  627. package/node_modules/@opentelemetry/api/build/esnext/internal/global-utils.d.ts +18 -0
  628. package/node_modules/@opentelemetry/api/build/esnext/internal/global-utils.js +58 -0
  629. package/node_modules/@opentelemetry/api/build/esnext/internal/global-utils.js.map +1 -0
  630. package/node_modules/@opentelemetry/api/build/esnext/internal/semver.d.ts +34 -0
  631. package/node_modules/@opentelemetry/api/build/esnext/internal/semver.js +118 -0
  632. package/node_modules/@opentelemetry/api/build/esnext/internal/semver.js.map +1 -0
  633. package/node_modules/@opentelemetry/api/build/esnext/metrics/Meter.d.ts +110 -0
  634. package/node_modules/@opentelemetry/api/build/esnext/metrics/Meter.js +17 -0
  635. package/node_modules/@opentelemetry/api/build/esnext/metrics/Meter.js.map +1 -0
  636. package/node_modules/@opentelemetry/api/build/esnext/metrics/MeterProvider.d.ts +17 -0
  637. package/node_modules/@opentelemetry/api/build/esnext/metrics/MeterProvider.js +17 -0
  638. package/node_modules/@opentelemetry/api/build/esnext/metrics/MeterProvider.js.map +1 -0
  639. package/node_modules/@opentelemetry/api/build/esnext/metrics/Metric.d.ts +115 -0
  640. package/node_modules/@opentelemetry/api/build/esnext/metrics/Metric.js +22 -0
  641. package/node_modules/@opentelemetry/api/build/esnext/metrics/Metric.js.map +1 -0
  642. package/node_modules/@opentelemetry/api/build/esnext/metrics/NoopMeter.d.ts +82 -0
  643. package/node_modules/@opentelemetry/api/build/esnext/metrics/NoopMeter.js +113 -0
  644. package/node_modules/@opentelemetry/api/build/esnext/metrics/NoopMeter.js.map +1 -0
  645. package/node_modules/@opentelemetry/api/build/esnext/metrics/NoopMeterProvider.d.ts +11 -0
  646. package/node_modules/@opentelemetry/api/build/esnext/metrics/NoopMeterProvider.js +27 -0
  647. package/node_modules/@opentelemetry/api/build/esnext/metrics/NoopMeterProvider.js.map +1 -0
  648. package/node_modules/@opentelemetry/api/build/esnext/metrics/ObservableResult.d.ts +31 -0
  649. package/node_modules/@opentelemetry/api/build/esnext/metrics/ObservableResult.js +17 -0
  650. package/node_modules/@opentelemetry/api/build/esnext/metrics/ObservableResult.js.map +1 -0
  651. package/node_modules/@opentelemetry/api/build/esnext/metrics-api.d.ts +4 -0
  652. package/node_modules/@opentelemetry/api/build/esnext/metrics-api.js +21 -0
  653. package/node_modules/@opentelemetry/api/build/esnext/metrics-api.js.map +1 -0
  654. package/node_modules/@opentelemetry/api/build/esnext/platform/browser/globalThis.d.ts +10 -0
  655. package/node_modules/@opentelemetry/api/build/esnext/platform/browser/globalThis.js +35 -0
  656. package/node_modules/@opentelemetry/api/build/esnext/platform/browser/globalThis.js.map +1 -0
  657. package/node_modules/@opentelemetry/api/build/esnext/platform/browser/index.d.ts +2 -0
  658. package/node_modules/@opentelemetry/api/build/esnext/platform/browser/index.js +17 -0
  659. package/node_modules/@opentelemetry/api/build/esnext/platform/browser/index.js.map +1 -0
  660. package/node_modules/@opentelemetry/api/build/esnext/platform/index.d.ts +2 -0
  661. package/node_modules/@opentelemetry/api/build/esnext/platform/index.js +17 -0
  662. package/node_modules/@opentelemetry/api/build/esnext/platform/index.js.map +1 -0
  663. package/node_modules/@opentelemetry/api/build/esnext/platform/node/globalThis.d.ts +3 -0
  664. package/node_modules/@opentelemetry/api/build/esnext/platform/node/globalThis.js +19 -0
  665. package/node_modules/@opentelemetry/api/build/esnext/platform/node/globalThis.js.map +1 -0
  666. package/node_modules/@opentelemetry/api/build/esnext/platform/node/index.d.ts +2 -0
  667. package/node_modules/@opentelemetry/api/build/esnext/platform/node/index.js +17 -0
  668. package/node_modules/@opentelemetry/api/build/esnext/platform/node/index.js.map +1 -0
  669. package/node_modules/@opentelemetry/api/build/esnext/propagation/NoopTextMapPropagator.d.ts +13 -0
  670. package/node_modules/@opentelemetry/api/build/esnext/propagation/NoopTextMapPropagator.js +30 -0
  671. package/node_modules/@opentelemetry/api/build/esnext/propagation/NoopTextMapPropagator.js.map +1 -0
  672. package/node_modules/@opentelemetry/api/build/esnext/propagation/TextMapPropagator.d.ts +84 -0
  673. package/node_modules/@opentelemetry/api/build/esnext/propagation/TextMapPropagator.js +38 -0
  674. package/node_modules/@opentelemetry/api/build/esnext/propagation/TextMapPropagator.js.map +1 -0
  675. package/node_modules/@opentelemetry/api/build/esnext/propagation-api.d.ts +4 -0
  676. package/node_modules/@opentelemetry/api/build/esnext/propagation-api.js +21 -0
  677. package/node_modules/@opentelemetry/api/build/esnext/propagation-api.js.map +1 -0
  678. package/node_modules/@opentelemetry/api/build/esnext/trace/NonRecordingSpan.d.ts +28 -0
  679. package/node_modules/@opentelemetry/api/build/esnext/trace/NonRecordingSpan.js +65 -0
  680. package/node_modules/@opentelemetry/api/build/esnext/trace/NonRecordingSpan.js.map +1 -0
  681. package/node_modules/@opentelemetry/api/build/esnext/trace/NoopTracer.d.ts +14 -0
  682. package/node_modules/@opentelemetry/api/build/esnext/trace/NoopTracer.js +71 -0
  683. package/node_modules/@opentelemetry/api/build/esnext/trace/NoopTracer.js.map +1 -0
  684. package/node_modules/@opentelemetry/api/build/esnext/trace/NoopTracerProvider.d.ts +13 -0
  685. package/node_modules/@opentelemetry/api/build/esnext/trace/NoopTracerProvider.js +28 -0
  686. package/node_modules/@opentelemetry/api/build/esnext/trace/NoopTracerProvider.js.map +1 -0
  687. package/node_modules/@opentelemetry/api/build/esnext/trace/ProxyTracer.d.ts +27 -0
  688. package/node_modules/@opentelemetry/api/build/esnext/trace/ProxyTracer.js +51 -0
  689. package/node_modules/@opentelemetry/api/build/esnext/trace/ProxyTracer.js.map +1 -0
  690. package/node_modules/@opentelemetry/api/build/esnext/trace/ProxyTracerProvider.d.ts +25 -0
  691. package/node_modules/@opentelemetry/api/build/esnext/trace/ProxyTracerProvider.js +50 -0
  692. package/node_modules/@opentelemetry/api/build/esnext/trace/ProxyTracerProvider.js.map +1 -0
  693. package/node_modules/@opentelemetry/api/build/esnext/trace/Sampler.d.ts +31 -0
  694. package/node_modules/@opentelemetry/api/build/esnext/trace/Sampler.js +17 -0
  695. package/node_modules/@opentelemetry/api/build/esnext/trace/Sampler.js.map +1 -0
  696. package/node_modules/@opentelemetry/api/build/esnext/trace/SamplingResult.d.ts +49 -0
  697. package/node_modules/@opentelemetry/api/build/esnext/trace/SamplingResult.js +39 -0
  698. package/node_modules/@opentelemetry/api/build/esnext/trace/SamplingResult.js.map +1 -0
  699. package/node_modules/@opentelemetry/api/build/esnext/trace/SpanOptions.d.ts +23 -0
  700. package/node_modules/@opentelemetry/api/build/esnext/trace/SpanOptions.js +17 -0
  701. package/node_modules/@opentelemetry/api/build/esnext/trace/SpanOptions.js.map +1 -0
  702. package/node_modules/@opentelemetry/api/build/esnext/trace/attributes.d.ts +10 -0
  703. package/node_modules/@opentelemetry/api/build/esnext/trace/attributes.js +17 -0
  704. package/node_modules/@opentelemetry/api/build/esnext/trace/attributes.js.map +1 -0
  705. package/node_modules/@opentelemetry/api/build/esnext/trace/context-utils.d.ts +41 -0
  706. package/node_modules/@opentelemetry/api/build/esnext/trace/context-utils.js +73 -0
  707. package/node_modules/@opentelemetry/api/build/esnext/trace/context-utils.js.map +1 -0
  708. package/node_modules/@opentelemetry/api/build/esnext/trace/internal/tracestate-impl.d.ts +22 -0
  709. package/node_modules/@opentelemetry/api/build/esnext/trace/internal/tracestate-impl.js +99 -0
  710. package/node_modules/@opentelemetry/api/build/esnext/trace/internal/tracestate-impl.js.map +1 -0
  711. package/node_modules/@opentelemetry/api/build/esnext/trace/internal/tracestate-validators.d.ts +15 -0
  712. package/node_modules/@opentelemetry/api/build/esnext/trace/internal/tracestate-validators.js +41 -0
  713. package/node_modules/@opentelemetry/api/build/esnext/trace/internal/tracestate-validators.js.map +1 -0
  714. package/node_modules/@opentelemetry/api/build/esnext/trace/internal/utils.d.ts +3 -0
  715. package/node_modules/@opentelemetry/api/build/esnext/trace/internal/utils.js +20 -0
  716. package/node_modules/@opentelemetry/api/build/esnext/trace/internal/utils.js.map +1 -0
  717. package/node_modules/@opentelemetry/api/build/esnext/trace/invalid-span-constants.d.ts +5 -0
  718. package/node_modules/@opentelemetry/api/build/esnext/trace/invalid-span-constants.js +24 -0
  719. package/node_modules/@opentelemetry/api/build/esnext/trace/invalid-span-constants.js.map +1 -0
  720. package/node_modules/@opentelemetry/api/build/esnext/trace/link.d.ts +26 -0
  721. package/node_modules/@opentelemetry/api/build/esnext/trace/link.js +17 -0
  722. package/node_modules/@opentelemetry/api/build/esnext/trace/link.js.map +1 -0
  723. package/node_modules/@opentelemetry/api/build/esnext/trace/span.d.ts +120 -0
  724. package/node_modules/@opentelemetry/api/build/esnext/trace/span.js +17 -0
  725. package/node_modules/@opentelemetry/api/build/esnext/trace/span.js.map +1 -0
  726. package/node_modules/@opentelemetry/api/build/esnext/trace/span_context.d.ts +53 -0
  727. package/node_modules/@opentelemetry/api/build/esnext/trace/span_context.js +17 -0
  728. package/node_modules/@opentelemetry/api/build/esnext/trace/span_context.js.map +1 -0
  729. package/node_modules/@opentelemetry/api/build/esnext/trace/span_kind.d.ts +27 -0
  730. package/node_modules/@opentelemetry/api/build/esnext/trace/span_kind.js +43 -0
  731. package/node_modules/@opentelemetry/api/build/esnext/trace/span_kind.js.map +1 -0
  732. package/node_modules/@opentelemetry/api/build/esnext/trace/spancontext-utils.d.ts +17 -0
  733. package/node_modules/@opentelemetry/api/build/esnext/trace/spancontext-utils.js +42 -0
  734. package/node_modules/@opentelemetry/api/build/esnext/trace/spancontext-utils.js.map +1 -0
  735. package/node_modules/@opentelemetry/api/build/esnext/trace/status.d.ts +25 -0
  736. package/node_modules/@opentelemetry/api/build/esnext/trace/status.js +20 -0
  737. package/node_modules/@opentelemetry/api/build/esnext/trace/status.js.map +1 -0
  738. package/node_modules/@opentelemetry/api/build/esnext/trace/trace_flags.d.ts +7 -0
  739. package/node_modules/@opentelemetry/api/build/esnext/trace/trace_flags.js +23 -0
  740. package/node_modules/@opentelemetry/api/build/esnext/trace/trace_flags.js.map +1 -0
  741. package/node_modules/@opentelemetry/api/build/esnext/trace/trace_state.d.ts +38 -0
  742. package/node_modules/@opentelemetry/api/build/esnext/trace/trace_state.js +17 -0
  743. package/node_modules/@opentelemetry/api/build/esnext/trace/trace_state.js.map +1 -0
  744. package/node_modules/@opentelemetry/api/build/esnext/trace/tracer.d.ts +71 -0
  745. package/node_modules/@opentelemetry/api/build/esnext/trace/tracer.js +17 -0
  746. package/node_modules/@opentelemetry/api/build/esnext/trace/tracer.js.map +1 -0
  747. package/node_modules/@opentelemetry/api/build/esnext/trace/tracer_options.d.ts +10 -0
  748. package/node_modules/@opentelemetry/api/build/esnext/trace/tracer_options.js +17 -0
  749. package/node_modules/@opentelemetry/api/build/esnext/trace/tracer_options.js.map +1 -0
  750. package/node_modules/@opentelemetry/api/build/esnext/trace/tracer_provider.d.ts +21 -0
  751. package/node_modules/@opentelemetry/api/build/esnext/trace/tracer_provider.js +17 -0
  752. package/node_modules/@opentelemetry/api/build/esnext/trace/tracer_provider.js.map +1 -0
  753. package/node_modules/@opentelemetry/api/build/esnext/trace-api.d.ts +4 -0
  754. package/node_modules/@opentelemetry/api/build/esnext/trace-api.js +21 -0
  755. package/node_modules/@opentelemetry/api/build/esnext/trace-api.js.map +1 -0
  756. package/node_modules/@opentelemetry/api/build/esnext/version.d.ts +2 -0
  757. package/node_modules/@opentelemetry/api/build/esnext/version.js +18 -0
  758. package/node_modules/@opentelemetry/api/build/esnext/version.js.map +1 -0
  759. package/node_modules/@opentelemetry/api/build/src/api/context.d.ts +41 -0
  760. package/node_modules/@opentelemetry/api/build/src/api/context.js +81 -0
  761. package/node_modules/@opentelemetry/api/build/src/api/context.js.map +1 -0
  762. package/node_modules/@opentelemetry/api/build/src/api/diag.d.ts +30 -0
  763. package/node_modules/@opentelemetry/api/build/src/api/diag.js +93 -0
  764. package/node_modules/@opentelemetry/api/build/src/api/diag.js.map +1 -0
  765. package/node_modules/@opentelemetry/api/build/src/api/metrics.d.ts +28 -0
  766. package/node_modules/@opentelemetry/api/build/src/api/metrics.js +61 -0
  767. package/node_modules/@opentelemetry/api/build/src/api/metrics.js.map +1 -0
  768. package/node_modules/@opentelemetry/api/build/src/api/propagation.d.ts +49 -0
  769. package/node_modules/@opentelemetry/api/build/src/api/propagation.js +89 -0
  770. package/node_modules/@opentelemetry/api/build/src/api/propagation.js.map +1 -0
  771. package/node_modules/@opentelemetry/api/build/src/api/trace.d.ts +40 -0
  772. package/node_modules/@opentelemetry/api/build/src/api/trace.js +79 -0
  773. package/node_modules/@opentelemetry/api/build/src/api/trace.js.map +1 -0
  774. package/node_modules/@opentelemetry/api/build/src/baggage/context-helpers.d.ts +29 -0
  775. package/node_modules/@opentelemetry/api/build/src/baggage/context-helpers.js +63 -0
  776. package/node_modules/@opentelemetry/api/build/src/baggage/context-helpers.js.map +1 -0
  777. package/node_modules/@opentelemetry/api/build/src/baggage/internal/baggage-impl.d.ts +12 -0
  778. package/node_modules/@opentelemetry/api/build/src/baggage/internal/baggage-impl.js +55 -0
  779. package/node_modules/@opentelemetry/api/build/src/baggage/internal/baggage-impl.js.map +1 -0
  780. package/node_modules/@opentelemetry/api/build/src/baggage/internal/symbol.d.ts +5 -0
  781. package/node_modules/@opentelemetry/api/build/src/baggage/internal/symbol.js +23 -0
  782. package/node_modules/@opentelemetry/api/build/src/baggage/internal/symbol.js.map +1 -0
  783. package/node_modules/@opentelemetry/api/build/src/baggage/types.d.ts +60 -0
  784. package/node_modules/@opentelemetry/api/build/src/baggage/types.js +18 -0
  785. package/node_modules/@opentelemetry/api/build/src/baggage/types.js.map +1 -0
  786. package/node_modules/@opentelemetry/api/build/src/baggage/utils.d.ts +15 -0
  787. package/node_modules/@opentelemetry/api/build/src/baggage/utils.js +51 -0
  788. package/node_modules/@opentelemetry/api/build/src/baggage/utils.js.map +1 -0
  789. package/node_modules/@opentelemetry/api/build/src/common/Attributes.d.ts +15 -0
  790. package/node_modules/@opentelemetry/api/build/src/common/Attributes.js +18 -0
  791. package/node_modules/@opentelemetry/api/build/src/common/Attributes.js.map +1 -0
  792. package/node_modules/@opentelemetry/api/build/src/common/Exception.d.ts +26 -0
  793. package/node_modules/@opentelemetry/api/build/src/common/Exception.js +18 -0
  794. package/node_modules/@opentelemetry/api/build/src/common/Exception.js.map +1 -0
  795. package/node_modules/@opentelemetry/api/build/src/common/Time.d.ts +20 -0
  796. package/node_modules/@opentelemetry/api/build/src/common/Time.js +3 -0
  797. package/node_modules/@opentelemetry/api/build/src/common/Time.js.map +1 -0
  798. package/node_modules/@opentelemetry/api/build/src/context/NoopContextManager.d.ts +9 -0
  799. package/node_modules/@opentelemetry/api/build/src/context/NoopContextManager.js +38 -0
  800. package/node_modules/@opentelemetry/api/build/src/context/NoopContextManager.js.map +1 -0
  801. package/node_modules/@opentelemetry/api/build/src/context/context.d.ts +6 -0
  802. package/node_modules/@opentelemetry/api/build/src/context/context.js +55 -0
  803. package/node_modules/@opentelemetry/api/build/src/context/context.js.map +1 -0
  804. package/node_modules/@opentelemetry/api/build/src/context/types.d.ts +52 -0
  805. package/node_modules/@opentelemetry/api/build/src/context/types.js +18 -0
  806. package/node_modules/@opentelemetry/api/build/src/context/types.js.map +1 -0
  807. package/node_modules/@opentelemetry/api/build/src/context-api.d.ts +4 -0
  808. package/node_modules/@opentelemetry/api/build/src/context-api.js +24 -0
  809. package/node_modules/@opentelemetry/api/build/src/context-api.js.map +1 -0
  810. package/node_modules/@opentelemetry/api/build/src/diag/ComponentLogger.d.ts +20 -0
  811. package/node_modules/@opentelemetry/api/build/src/diag/ComponentLogger.js +59 -0
  812. package/node_modules/@opentelemetry/api/build/src/diag/ComponentLogger.js.map +1 -0
  813. package/node_modules/@opentelemetry/api/build/src/diag/consoleLogger.d.ts +38 -0
  814. package/node_modules/@opentelemetry/api/build/src/diag/consoleLogger.js +57 -0
  815. package/node_modules/@opentelemetry/api/build/src/diag/consoleLogger.js.map +1 -0
  816. package/node_modules/@opentelemetry/api/build/src/diag/internal/logLevelLogger.d.ts +3 -0
  817. package/node_modules/@opentelemetry/api/build/src/diag/internal/logLevelLogger.js +45 -0
  818. package/node_modules/@opentelemetry/api/build/src/diag/internal/logLevelLogger.js.map +1 -0
  819. package/node_modules/@opentelemetry/api/build/src/diag/internal/noopLogger.d.ts +8 -0
  820. package/node_modules/@opentelemetry/api/build/src/diag/internal/noopLogger.js +35 -0
  821. package/node_modules/@opentelemetry/api/build/src/diag/internal/noopLogger.js.map +1 -0
  822. package/node_modules/@opentelemetry/api/build/src/diag/types.d.ts +100 -0
  823. package/node_modules/@opentelemetry/api/build/src/diag/types.js +44 -0
  824. package/node_modules/@opentelemetry/api/build/src/diag/types.js.map +1 -0
  825. package/node_modules/@opentelemetry/api/build/src/diag-api.d.ts +9 -0
  826. package/node_modules/@opentelemetry/api/build/src/diag-api.js +29 -0
  827. package/node_modules/@opentelemetry/api/build/src/diag-api.js.map +1 -0
  828. package/node_modules/@opentelemetry/api/build/src/experimental/index.d.ts +3 -0
  829. package/node_modules/@opentelemetry/api/build/src/experimental/index.js +22 -0
  830. package/node_modules/@opentelemetry/api/build/src/experimental/index.js.map +1 -0
  831. package/node_modules/@opentelemetry/api/build/src/experimental/trace/SugaredOptions.d.ts +13 -0
  832. package/node_modules/@opentelemetry/api/build/src/experimental/trace/SugaredOptions.js +18 -0
  833. package/node_modules/@opentelemetry/api/build/src/experimental/trace/SugaredOptions.js.map +1 -0
  834. package/node_modules/@opentelemetry/api/build/src/experimental/trace/SugaredTracer.d.ts +64 -0
  835. package/node_modules/@opentelemetry/api/build/src/experimental/trace/SugaredTracer.js +93 -0
  836. package/node_modules/@opentelemetry/api/build/src/experimental/trace/SugaredTracer.js.map +1 -0
  837. package/node_modules/@opentelemetry/api/build/src/index.d.ts +54 -0
  838. package/node_modules/@opentelemetry/api/build/src/index.js +81 -0
  839. package/node_modules/@opentelemetry/api/build/src/index.js.map +1 -0
  840. package/node_modules/@opentelemetry/api/build/src/internal/global-utils.d.ts +18 -0
  841. package/node_modules/@opentelemetry/api/build/src/internal/global-utils.js +64 -0
  842. package/node_modules/@opentelemetry/api/build/src/internal/global-utils.js.map +1 -0
  843. package/node_modules/@opentelemetry/api/build/src/internal/semver.d.ts +34 -0
  844. package/node_modules/@opentelemetry/api/build/src/internal/semver.js +122 -0
  845. package/node_modules/@opentelemetry/api/build/src/internal/semver.js.map +1 -0
  846. package/node_modules/@opentelemetry/api/build/src/metrics/Meter.d.ts +110 -0
  847. package/node_modules/@opentelemetry/api/build/src/metrics/Meter.js +18 -0
  848. package/node_modules/@opentelemetry/api/build/src/metrics/Meter.js.map +1 -0
  849. package/node_modules/@opentelemetry/api/build/src/metrics/MeterProvider.d.ts +17 -0
  850. package/node_modules/@opentelemetry/api/build/src/metrics/MeterProvider.js +18 -0
  851. package/node_modules/@opentelemetry/api/build/src/metrics/MeterProvider.js.map +1 -0
  852. package/node_modules/@opentelemetry/api/build/src/metrics/Metric.d.ts +115 -0
  853. package/node_modules/@opentelemetry/api/build/src/metrics/Metric.js +25 -0
  854. package/node_modules/@opentelemetry/api/build/src/metrics/Metric.js.map +1 -0
  855. package/node_modules/@opentelemetry/api/build/src/metrics/NoopMeter.d.ts +82 -0
  856. package/node_modules/@opentelemetry/api/build/src/metrics/NoopMeter.js +127 -0
  857. package/node_modules/@opentelemetry/api/build/src/metrics/NoopMeter.js.map +1 -0
  858. package/node_modules/@opentelemetry/api/build/src/metrics/NoopMeterProvider.d.ts +11 -0
  859. package/node_modules/@opentelemetry/api/build/src/metrics/NoopMeterProvider.js +31 -0
  860. package/node_modules/@opentelemetry/api/build/src/metrics/NoopMeterProvider.js.map +1 -0
  861. package/node_modules/@opentelemetry/api/build/src/metrics/ObservableResult.d.ts +31 -0
  862. package/node_modules/@opentelemetry/api/build/src/metrics/ObservableResult.js +18 -0
  863. package/node_modules/@opentelemetry/api/build/src/metrics/ObservableResult.js.map +1 -0
  864. package/node_modules/@opentelemetry/api/build/src/metrics-api.d.ts +4 -0
  865. package/node_modules/@opentelemetry/api/build/src/metrics-api.js +24 -0
  866. package/node_modules/@opentelemetry/api/build/src/metrics-api.js.map +1 -0
  867. package/node_modules/@opentelemetry/api/build/src/platform/browser/globalThis.d.ts +10 -0
  868. package/node_modules/@opentelemetry/api/build/src/platform/browser/globalThis.js +38 -0
  869. package/node_modules/@opentelemetry/api/build/src/platform/browser/globalThis.js.map +1 -0
  870. package/node_modules/@opentelemetry/api/build/src/platform/browser/index.d.ts +2 -0
  871. package/node_modules/@opentelemetry/api/build/src/platform/browser/index.js +29 -0
  872. package/node_modules/@opentelemetry/api/build/src/platform/browser/index.js.map +1 -0
  873. package/node_modules/@opentelemetry/api/build/src/platform/index.d.ts +2 -0
  874. package/node_modules/@opentelemetry/api/build/src/platform/index.js +29 -0
  875. package/node_modules/@opentelemetry/api/build/src/platform/index.js.map +1 -0
  876. package/node_modules/@opentelemetry/api/build/src/platform/node/globalThis.d.ts +3 -0
  877. package/node_modules/@opentelemetry/api/build/src/platform/node/globalThis.js +22 -0
  878. package/node_modules/@opentelemetry/api/build/src/platform/node/globalThis.js.map +1 -0
  879. package/node_modules/@opentelemetry/api/build/src/platform/node/index.d.ts +2 -0
  880. package/node_modules/@opentelemetry/api/build/src/platform/node/index.js +29 -0
  881. package/node_modules/@opentelemetry/api/build/src/platform/node/index.js.map +1 -0
  882. package/node_modules/@opentelemetry/api/build/src/propagation/NoopTextMapPropagator.d.ts +13 -0
  883. package/node_modules/@opentelemetry/api/build/src/propagation/NoopTextMapPropagator.js +34 -0
  884. package/node_modules/@opentelemetry/api/build/src/propagation/NoopTextMapPropagator.js.map +1 -0
  885. package/node_modules/@opentelemetry/api/build/src/propagation/TextMapPropagator.d.ts +84 -0
  886. package/node_modules/@opentelemetry/api/build/src/propagation/TextMapPropagator.js +41 -0
  887. package/node_modules/@opentelemetry/api/build/src/propagation/TextMapPropagator.js.map +1 -0
  888. package/node_modules/@opentelemetry/api/build/src/propagation-api.d.ts +4 -0
  889. package/node_modules/@opentelemetry/api/build/src/propagation-api.js +24 -0
  890. package/node_modules/@opentelemetry/api/build/src/propagation-api.js.map +1 -0
  891. package/node_modules/@opentelemetry/api/build/src/trace/NonRecordingSpan.d.ts +28 -0
  892. package/node_modules/@opentelemetry/api/build/src/trace/NonRecordingSpan.js +69 -0
  893. package/node_modules/@opentelemetry/api/build/src/trace/NonRecordingSpan.js.map +1 -0
  894. package/node_modules/@opentelemetry/api/build/src/trace/NoopTracer.d.ts +14 -0
  895. package/node_modules/@opentelemetry/api/build/src/trace/NoopTracer.js +75 -0
  896. package/node_modules/@opentelemetry/api/build/src/trace/NoopTracer.js.map +1 -0
  897. package/node_modules/@opentelemetry/api/build/src/trace/NoopTracerProvider.d.ts +13 -0
  898. package/node_modules/@opentelemetry/api/build/src/trace/NoopTracerProvider.js +32 -0
  899. package/node_modules/@opentelemetry/api/build/src/trace/NoopTracerProvider.js.map +1 -0
  900. package/node_modules/@opentelemetry/api/build/src/trace/ProxyTracer.d.ts +27 -0
  901. package/node_modules/@opentelemetry/api/build/src/trace/ProxyTracer.js +55 -0
  902. package/node_modules/@opentelemetry/api/build/src/trace/ProxyTracer.js.map +1 -0
  903. package/node_modules/@opentelemetry/api/build/src/trace/ProxyTracerProvider.d.ts +25 -0
  904. package/node_modules/@opentelemetry/api/build/src/trace/ProxyTracerProvider.js +54 -0
  905. package/node_modules/@opentelemetry/api/build/src/trace/ProxyTracerProvider.js.map +1 -0
  906. package/node_modules/@opentelemetry/api/build/src/trace/Sampler.d.ts +31 -0
  907. package/node_modules/@opentelemetry/api/build/src/trace/Sampler.js +18 -0
  908. package/node_modules/@opentelemetry/api/build/src/trace/Sampler.js.map +1 -0
  909. package/node_modules/@opentelemetry/api/build/src/trace/SamplingResult.d.ts +49 -0
  910. package/node_modules/@opentelemetry/api/build/src/trace/SamplingResult.js +42 -0
  911. package/node_modules/@opentelemetry/api/build/src/trace/SamplingResult.js.map +1 -0
  912. package/node_modules/@opentelemetry/api/build/src/trace/SpanOptions.d.ts +23 -0
  913. package/node_modules/@opentelemetry/api/build/src/trace/SpanOptions.js +18 -0
  914. package/node_modules/@opentelemetry/api/build/src/trace/SpanOptions.js.map +1 -0
  915. package/node_modules/@opentelemetry/api/build/src/trace/attributes.d.ts +10 -0
  916. package/node_modules/@opentelemetry/api/build/src/trace/attributes.js +18 -0
  917. package/node_modules/@opentelemetry/api/build/src/trace/attributes.js.map +1 -0
  918. package/node_modules/@opentelemetry/api/build/src/trace/context-utils.d.ts +41 -0
  919. package/node_modules/@opentelemetry/api/build/src/trace/context-utils.js +82 -0
  920. package/node_modules/@opentelemetry/api/build/src/trace/context-utils.js.map +1 -0
  921. package/node_modules/@opentelemetry/api/build/src/trace/internal/tracestate-impl.d.ts +22 -0
  922. package/node_modules/@opentelemetry/api/build/src/trace/internal/tracestate-impl.js +103 -0
  923. package/node_modules/@opentelemetry/api/build/src/trace/internal/tracestate-impl.js.map +1 -0
  924. package/node_modules/@opentelemetry/api/build/src/trace/internal/tracestate-validators.d.ts +15 -0
  925. package/node_modules/@opentelemetry/api/build/src/trace/internal/tracestate-validators.js +46 -0
  926. package/node_modules/@opentelemetry/api/build/src/trace/internal/tracestate-validators.js.map +1 -0
  927. package/node_modules/@opentelemetry/api/build/src/trace/internal/utils.d.ts +3 -0
  928. package/node_modules/@opentelemetry/api/build/src/trace/internal/utils.js +24 -0
  929. package/node_modules/@opentelemetry/api/build/src/trace/internal/utils.js.map +1 -0
  930. package/node_modules/@opentelemetry/api/build/src/trace/invalid-span-constants.d.ts +5 -0
  931. package/node_modules/@opentelemetry/api/build/src/trace/invalid-span-constants.js +27 -0
  932. package/node_modules/@opentelemetry/api/build/src/trace/invalid-span-constants.js.map +1 -0
  933. package/node_modules/@opentelemetry/api/build/src/trace/link.d.ts +26 -0
  934. package/node_modules/@opentelemetry/api/build/src/trace/link.js +18 -0
  935. package/node_modules/@opentelemetry/api/build/src/trace/link.js.map +1 -0
  936. package/node_modules/@opentelemetry/api/build/src/trace/span.d.ts +120 -0
  937. package/node_modules/@opentelemetry/api/build/src/trace/span.js +18 -0
  938. package/node_modules/@opentelemetry/api/build/src/trace/span.js.map +1 -0
  939. package/node_modules/@opentelemetry/api/build/src/trace/span_context.d.ts +53 -0
  940. package/node_modules/@opentelemetry/api/build/src/trace/span_context.js +18 -0
  941. package/node_modules/@opentelemetry/api/build/src/trace/span_context.js.map +1 -0
  942. package/node_modules/@opentelemetry/api/build/src/trace/span_kind.d.ts +27 -0
  943. package/node_modules/@opentelemetry/api/build/src/trace/span_kind.js +46 -0
  944. package/node_modules/@opentelemetry/api/build/src/trace/span_kind.js.map +1 -0
  945. package/node_modules/@opentelemetry/api/build/src/trace/spancontext-utils.d.ts +17 -0
  946. package/node_modules/@opentelemetry/api/build/src/trace/spancontext-utils.js +49 -0
  947. package/node_modules/@opentelemetry/api/build/src/trace/spancontext-utils.js.map +1 -0
  948. package/node_modules/@opentelemetry/api/build/src/trace/status.d.ts +25 -0
  949. package/node_modules/@opentelemetry/api/build/src/trace/status.js +23 -0
  950. package/node_modules/@opentelemetry/api/build/src/trace/status.js.map +1 -0
  951. package/node_modules/@opentelemetry/api/build/src/trace/trace_flags.d.ts +7 -0
  952. package/node_modules/@opentelemetry/api/build/src/trace/trace_flags.js +26 -0
  953. package/node_modules/@opentelemetry/api/build/src/trace/trace_flags.js.map +1 -0
  954. package/node_modules/@opentelemetry/api/build/src/trace/trace_state.d.ts +38 -0
  955. package/node_modules/@opentelemetry/api/build/src/trace/trace_state.js +18 -0
  956. package/node_modules/@opentelemetry/api/build/src/trace/trace_state.js.map +1 -0
  957. package/node_modules/@opentelemetry/api/build/src/trace/tracer.d.ts +71 -0
  958. package/node_modules/@opentelemetry/api/build/src/trace/tracer.js +18 -0
  959. package/node_modules/@opentelemetry/api/build/src/trace/tracer.js.map +1 -0
  960. package/node_modules/@opentelemetry/api/build/src/trace/tracer_options.d.ts +10 -0
  961. package/node_modules/@opentelemetry/api/build/src/trace/tracer_options.js +18 -0
  962. package/node_modules/@opentelemetry/api/build/src/trace/tracer_options.js.map +1 -0
  963. package/node_modules/@opentelemetry/api/build/src/trace/tracer_provider.d.ts +21 -0
  964. package/node_modules/@opentelemetry/api/build/src/trace/tracer_provider.js +18 -0
  965. package/node_modules/@opentelemetry/api/build/src/trace/tracer_provider.js.map +1 -0
  966. package/node_modules/@opentelemetry/api/build/src/trace-api.d.ts +4 -0
  967. package/node_modules/@opentelemetry/api/build/src/trace-api.js +24 -0
  968. package/node_modules/@opentelemetry/api/build/src/trace-api.js.map +1 -0
  969. package/node_modules/@opentelemetry/api/build/src/version.d.ts +2 -0
  970. package/node_modules/@opentelemetry/api/build/src/version.js +21 -0
  971. package/node_modules/@opentelemetry/api/build/src/version.js.map +1 -0
  972. package/node_modules/@opentelemetry/api/package.json +113 -0
  973. package/node_modules/@standard-schema/spec/LICENSE +21 -0
  974. package/node_modules/@standard-schema/spec/README.md +198 -0
  975. package/node_modules/@standard-schema/spec/dist/index.cjs +18 -0
  976. package/node_modules/@standard-schema/spec/dist/index.d.cts +119 -0
  977. package/node_modules/@standard-schema/spec/dist/index.d.ts +119 -0
  978. package/node_modules/@standard-schema/spec/dist/index.js +0 -0
  979. package/node_modules/@standard-schema/spec/package.json +52 -0
  980. package/node_modules/@vercel/oidc/CHANGELOG.md +83 -0
  981. package/node_modules/@vercel/oidc/LICENSE +202 -0
  982. package/node_modules/@vercel/oidc/README.md +3 -0
  983. package/node_modules/@vercel/oidc/dist/auth-config.d.ts +30 -0
  984. package/node_modules/@vercel/oidc/dist/auth-config.js +84 -0
  985. package/node_modules/@vercel/oidc/dist/get-context.d.ts +6 -0
  986. package/node_modules/@vercel/oidc/dist/get-context.js +34 -0
  987. package/node_modules/@vercel/oidc/dist/get-vercel-oidc-token.d.ts +49 -0
  988. package/node_modules/@vercel/oidc/dist/get-vercel-oidc-token.js +80 -0
  989. package/node_modules/@vercel/oidc/dist/get-vercel-oidc-token.test.d.ts +1 -0
  990. package/node_modules/@vercel/oidc/dist/get-vercel-oidc-token.test.js +245 -0
  991. package/node_modules/@vercel/oidc/dist/index-browser.d.ts +3 -0
  992. package/node_modules/@vercel/oidc/dist/index-browser.js +38 -0
  993. package/node_modules/@vercel/oidc/dist/index-browser.test.d.ts +1 -0
  994. package/node_modules/@vercel/oidc/dist/index-browser.test.js +33 -0
  995. package/node_modules/@vercel/oidc/dist/index.d.ts +2 -0
  996. package/node_modules/@vercel/oidc/dist/index.js +33 -0
  997. package/node_modules/@vercel/oidc/dist/oauth.d.ts +17 -0
  998. package/node_modules/@vercel/oidc/dist/oauth.js +88 -0
  999. package/node_modules/@vercel/oidc/dist/token-error.d.ts +5 -0
  1000. package/node_modules/@vercel/oidc/dist/token-error.js +40 -0
  1001. package/node_modules/@vercel/oidc/dist/token-io.d.ts +2 -0
  1002. package/node_modules/@vercel/oidc/dist/token-io.js +78 -0
  1003. package/node_modules/@vercel/oidc/dist/token-util.d.ts +21 -0
  1004. package/node_modules/@vercel/oidc/dist/token-util.js +198 -0
  1005. package/node_modules/@vercel/oidc/dist/token-util.test.d.ts +1 -0
  1006. package/node_modules/@vercel/oidc/dist/token-util.test.js +229 -0
  1007. package/node_modules/@vercel/oidc/dist/token.d.ts +1 -0
  1008. package/node_modules/@vercel/oidc/dist/token.js +53 -0
  1009. package/node_modules/@vercel/oidc/dist/token.test.d.ts +1 -0
  1010. package/node_modules/@vercel/oidc/dist/token.test.js +84 -0
  1011. package/node_modules/@vercel/oidc/docs/README.md +104 -0
  1012. package/node_modules/@vercel/oidc/package.json +52 -0
  1013. package/node_modules/ai/CHANGELOG.md +7350 -0
  1014. package/node_modules/ai/LICENSE +13 -0
  1015. package/node_modules/ai/README.md +248 -0
  1016. package/node_modules/ai/dist/index.d.mts +6429 -0
  1017. package/node_modules/ai/dist/index.d.ts +6429 -0
  1018. package/node_modules/ai/dist/index.js +13548 -0
  1019. package/node_modules/ai/dist/index.js.map +1 -0
  1020. package/node_modules/ai/dist/index.mjs +13514 -0
  1021. package/node_modules/ai/dist/index.mjs.map +1 -0
  1022. package/node_modules/ai/dist/internal/index.d.mts +314 -0
  1023. package/node_modules/ai/dist/internal/index.d.ts +314 -0
  1024. package/node_modules/ai/dist/internal/index.js +1316 -0
  1025. package/node_modules/ai/dist/internal/index.js.map +1 -0
  1026. package/node_modules/ai/dist/internal/index.mjs +1300 -0
  1027. package/node_modules/ai/dist/internal/index.mjs.map +1 -0
  1028. package/node_modules/ai/dist/test/index.d.mts +133 -0
  1029. package/node_modules/ai/dist/test/index.d.ts +133 -0
  1030. package/node_modules/ai/dist/test/index.js +275 -0
  1031. package/node_modules/ai/dist/test/index.js.map +1 -0
  1032. package/node_modules/ai/dist/test/index.mjs +245 -0
  1033. package/node_modules/ai/dist/test/index.mjs.map +1 -0
  1034. package/node_modules/ai/docs/00-introduction/index.mdx +76 -0
  1035. package/node_modules/ai/docs/02-foundations/01-overview.mdx +43 -0
  1036. package/node_modules/ai/docs/02-foundations/02-providers-and-models.mdx +156 -0
  1037. package/node_modules/ai/docs/02-foundations/03-prompts.mdx +616 -0
  1038. package/node_modules/ai/docs/02-foundations/04-tools.mdx +251 -0
  1039. package/node_modules/ai/docs/02-foundations/05-streaming.mdx +62 -0
  1040. package/node_modules/ai/docs/02-foundations/06-provider-options.mdx +337 -0
  1041. package/node_modules/ai/docs/02-foundations/index.mdx +49 -0
  1042. package/node_modules/ai/docs/02-getting-started/00-choosing-a-provider.mdx +110 -0
  1043. package/node_modules/ai/docs/02-getting-started/01-navigating-the-library.mdx +85 -0
  1044. package/node_modules/ai/docs/02-getting-started/02-nextjs-app-router.mdx +559 -0
  1045. package/node_modules/ai/docs/02-getting-started/03-nextjs-pages-router.mdx +542 -0
  1046. package/node_modules/ai/docs/02-getting-started/04-svelte.mdx +627 -0
  1047. package/node_modules/ai/docs/02-getting-started/05-nuxt.mdx +566 -0
  1048. package/node_modules/ai/docs/02-getting-started/06-nodejs.mdx +512 -0
  1049. package/node_modules/ai/docs/02-getting-started/07-expo.mdx +766 -0
  1050. package/node_modules/ai/docs/02-getting-started/08-tanstack-start.mdx +583 -0
  1051. package/node_modules/ai/docs/02-getting-started/09-coding-agents.mdx +179 -0
  1052. package/node_modules/ai/docs/02-getting-started/index.mdx +44 -0
  1053. package/node_modules/ai/docs/03-agents/01-overview.mdx +96 -0
  1054. package/node_modules/ai/docs/03-agents/02-building-agents.mdx +449 -0
  1055. package/node_modules/ai/docs/03-agents/03-workflows.mdx +386 -0
  1056. package/node_modules/ai/docs/03-agents/04-loop-control.mdx +394 -0
  1057. package/node_modules/ai/docs/03-agents/05-configuring-call-options.mdx +286 -0
  1058. package/node_modules/ai/docs/03-agents/06-memory.mdx +222 -0
  1059. package/node_modules/ai/docs/03-agents/06-subagents.mdx +362 -0
  1060. package/node_modules/ai/docs/03-agents/index.mdx +46 -0
  1061. package/node_modules/ai/docs/03-ai-sdk-core/01-overview.mdx +31 -0
  1062. package/node_modules/ai/docs/03-ai-sdk-core/05-generating-text.mdx +707 -0
  1063. package/node_modules/ai/docs/03-ai-sdk-core/10-generating-structured-data.mdx +498 -0
  1064. package/node_modules/ai/docs/03-ai-sdk-core/15-tools-and-tool-calling.mdx +1144 -0
  1065. package/node_modules/ai/docs/03-ai-sdk-core/16-mcp-tools.mdx +377 -0
  1066. package/node_modules/ai/docs/03-ai-sdk-core/20-prompt-engineering.mdx +146 -0
  1067. package/node_modules/ai/docs/03-ai-sdk-core/25-settings.mdx +198 -0
  1068. package/node_modules/ai/docs/03-ai-sdk-core/30-embeddings.mdx +245 -0
  1069. package/node_modules/ai/docs/03-ai-sdk-core/31-reranking.mdx +218 -0
  1070. package/node_modules/ai/docs/03-ai-sdk-core/35-image-generation.mdx +342 -0
  1071. package/node_modules/ai/docs/03-ai-sdk-core/36-transcription.mdx +227 -0
  1072. package/node_modules/ai/docs/03-ai-sdk-core/37-speech.mdx +169 -0
  1073. package/node_modules/ai/docs/03-ai-sdk-core/38-video-generation.mdx +366 -0
  1074. package/node_modules/ai/docs/03-ai-sdk-core/40-middleware.mdx +485 -0
  1075. package/node_modules/ai/docs/03-ai-sdk-core/45-provider-management.mdx +349 -0
  1076. package/node_modules/ai/docs/03-ai-sdk-core/50-error-handling.mdx +149 -0
  1077. package/node_modules/ai/docs/03-ai-sdk-core/55-testing.mdx +219 -0
  1078. package/node_modules/ai/docs/03-ai-sdk-core/60-telemetry.mdx +391 -0
  1079. package/node_modules/ai/docs/03-ai-sdk-core/65-devtools.mdx +107 -0
  1080. package/node_modules/ai/docs/03-ai-sdk-core/65-event-listeners.mdx +915 -0
  1081. package/node_modules/ai/docs/03-ai-sdk-core/index.mdx +93 -0
  1082. package/node_modules/ai/docs/04-ai-sdk-ui/01-overview.mdx +44 -0
  1083. package/node_modules/ai/docs/04-ai-sdk-ui/02-chatbot.mdx +1313 -0
  1084. package/node_modules/ai/docs/04-ai-sdk-ui/03-chatbot-message-persistence.mdx +535 -0
  1085. package/node_modules/ai/docs/04-ai-sdk-ui/03-chatbot-resume-streams.mdx +263 -0
  1086. package/node_modules/ai/docs/04-ai-sdk-ui/03-chatbot-tool-usage.mdx +682 -0
  1087. package/node_modules/ai/docs/04-ai-sdk-ui/04-generative-user-interfaces.mdx +389 -0
  1088. package/node_modules/ai/docs/04-ai-sdk-ui/05-completion.mdx +181 -0
  1089. package/node_modules/ai/docs/04-ai-sdk-ui/08-object-generation.mdx +344 -0
  1090. package/node_modules/ai/docs/04-ai-sdk-ui/20-streaming-data.mdx +397 -0
  1091. package/node_modules/ai/docs/04-ai-sdk-ui/21-error-handling.mdx +190 -0
  1092. package/node_modules/ai/docs/04-ai-sdk-ui/21-transport.mdx +174 -0
  1093. package/node_modules/ai/docs/04-ai-sdk-ui/24-reading-ui-message-streams.mdx +104 -0
  1094. package/node_modules/ai/docs/04-ai-sdk-ui/25-message-metadata.mdx +152 -0
  1095. package/node_modules/ai/docs/04-ai-sdk-ui/50-stream-protocol.mdx +477 -0
  1096. package/node_modules/ai/docs/04-ai-sdk-ui/index.mdx +64 -0
  1097. package/node_modules/ai/docs/05-ai-sdk-rsc/01-overview.mdx +45 -0
  1098. package/node_modules/ai/docs/05-ai-sdk-rsc/02-streaming-react-components.mdx +209 -0
  1099. package/node_modules/ai/docs/05-ai-sdk-rsc/03-generative-ui-state.mdx +279 -0
  1100. package/node_modules/ai/docs/05-ai-sdk-rsc/03-saving-and-restoring-states.mdx +105 -0
  1101. package/node_modules/ai/docs/05-ai-sdk-rsc/04-multistep-interfaces.mdx +282 -0
  1102. package/node_modules/ai/docs/05-ai-sdk-rsc/05-streaming-values.mdx +157 -0
  1103. package/node_modules/ai/docs/05-ai-sdk-rsc/06-loading-state.mdx +273 -0
  1104. package/node_modules/ai/docs/05-ai-sdk-rsc/08-error-handling.mdx +94 -0
  1105. package/node_modules/ai/docs/05-ai-sdk-rsc/09-authentication.mdx +42 -0
  1106. package/node_modules/ai/docs/05-ai-sdk-rsc/10-migrating-to-ui.mdx +722 -0
  1107. package/node_modules/ai/docs/05-ai-sdk-rsc/index.mdx +63 -0
  1108. package/node_modules/ai/docs/06-advanced/01-prompt-engineering.mdx +96 -0
  1109. package/node_modules/ai/docs/06-advanced/02-stopping-streams.mdx +184 -0
  1110. package/node_modules/ai/docs/06-advanced/03-backpressure.mdx +173 -0
  1111. package/node_modules/ai/docs/06-advanced/04-caching.mdx +169 -0
  1112. package/node_modules/ai/docs/06-advanced/05-multiple-streamables.mdx +68 -0
  1113. package/node_modules/ai/docs/06-advanced/06-rate-limiting.mdx +60 -0
  1114. package/node_modules/ai/docs/06-advanced/07-rendering-ui-with-language-models.mdx +225 -0
  1115. package/node_modules/ai/docs/06-advanced/08-model-as-router.mdx +120 -0
  1116. package/node_modules/ai/docs/06-advanced/09-multistep-interfaces.mdx +115 -0
  1117. package/node_modules/ai/docs/06-advanced/09-sequential-generations.mdx +55 -0
  1118. package/node_modules/ai/docs/06-advanced/10-vercel-deployment-guide.mdx +117 -0
  1119. package/node_modules/ai/docs/06-advanced/index.mdx +11 -0
  1120. package/node_modules/ai/docs/07-reference/01-ai-sdk-core/01-generate-text.mdx +2715 -0
  1121. package/node_modules/ai/docs/07-reference/01-ai-sdk-core/02-stream-text.mdx +3656 -0
  1122. package/node_modules/ai/docs/07-reference/01-ai-sdk-core/05-embed.mdx +197 -0
  1123. package/node_modules/ai/docs/07-reference/01-ai-sdk-core/06-embed-many.mdx +191 -0
  1124. package/node_modules/ai/docs/07-reference/01-ai-sdk-core/06-rerank.mdx +309 -0
  1125. package/node_modules/ai/docs/07-reference/01-ai-sdk-core/10-generate-image.mdx +251 -0
  1126. package/node_modules/ai/docs/07-reference/01-ai-sdk-core/11-transcribe.mdx +152 -0
  1127. package/node_modules/ai/docs/07-reference/01-ai-sdk-core/12-generate-speech.mdx +221 -0
  1128. package/node_modules/ai/docs/07-reference/01-ai-sdk-core/13-generate-video.mdx +264 -0
  1129. package/node_modules/ai/docs/07-reference/01-ai-sdk-core/15-agent.mdx +235 -0
  1130. package/node_modules/ai/docs/07-reference/01-ai-sdk-core/16-tool-loop-agent.mdx +973 -0
  1131. package/node_modules/ai/docs/07-reference/01-ai-sdk-core/17-create-agent-ui-stream.mdx +154 -0
  1132. package/node_modules/ai/docs/07-reference/01-ai-sdk-core/18-create-agent-ui-stream-response.mdx +173 -0
  1133. package/node_modules/ai/docs/07-reference/01-ai-sdk-core/18-pipe-agent-ui-stream-to-response.mdx +150 -0
  1134. package/node_modules/ai/docs/07-reference/01-ai-sdk-core/20-tool.mdx +209 -0
  1135. package/node_modules/ai/docs/07-reference/01-ai-sdk-core/22-dynamic-tool.mdx +223 -0
  1136. package/node_modules/ai/docs/07-reference/01-ai-sdk-core/23-create-mcp-client.mdx +416 -0
  1137. package/node_modules/ai/docs/07-reference/01-ai-sdk-core/24-mcp-stdio-transport.mdx +68 -0
  1138. package/node_modules/ai/docs/07-reference/01-ai-sdk-core/25-json-schema.mdx +94 -0
  1139. package/node_modules/ai/docs/07-reference/01-ai-sdk-core/26-zod-schema.mdx +109 -0
  1140. package/node_modules/ai/docs/07-reference/01-ai-sdk-core/27-valibot-schema.mdx +58 -0
  1141. package/node_modules/ai/docs/07-reference/01-ai-sdk-core/28-output.mdx +342 -0
  1142. package/node_modules/ai/docs/07-reference/01-ai-sdk-core/30-model-message.mdx +415 -0
  1143. package/node_modules/ai/docs/07-reference/01-ai-sdk-core/31-ui-message.mdx +246 -0
  1144. package/node_modules/ai/docs/07-reference/01-ai-sdk-core/32-validate-ui-messages.mdx +101 -0
  1145. package/node_modules/ai/docs/07-reference/01-ai-sdk-core/33-safe-validate-ui-messages.mdx +113 -0
  1146. package/node_modules/ai/docs/07-reference/01-ai-sdk-core/40-provider-registry.mdx +198 -0
  1147. package/node_modules/ai/docs/07-reference/01-ai-sdk-core/42-custom-provider.mdx +157 -0
  1148. package/node_modules/ai/docs/07-reference/01-ai-sdk-core/50-cosine-similarity.mdx +52 -0
  1149. package/node_modules/ai/docs/07-reference/01-ai-sdk-core/60-wrap-language-model.mdx +59 -0
  1150. package/node_modules/ai/docs/07-reference/01-ai-sdk-core/61-wrap-image-model.mdx +64 -0
  1151. package/node_modules/ai/docs/07-reference/01-ai-sdk-core/65-language-model-v2-middleware.mdx +74 -0
  1152. package/node_modules/ai/docs/07-reference/01-ai-sdk-core/66-extract-reasoning-middleware.mdx +68 -0
  1153. package/node_modules/ai/docs/07-reference/01-ai-sdk-core/67-simulate-streaming-middleware.mdx +71 -0
  1154. package/node_modules/ai/docs/07-reference/01-ai-sdk-core/68-default-settings-middleware.mdx +80 -0
  1155. package/node_modules/ai/docs/07-reference/01-ai-sdk-core/69-add-tool-input-examples-middleware.mdx +155 -0
  1156. package/node_modules/ai/docs/07-reference/01-ai-sdk-core/70-extract-json-middleware.mdx +147 -0
  1157. package/node_modules/ai/docs/07-reference/01-ai-sdk-core/70-step-count-is.mdx +84 -0
  1158. package/node_modules/ai/docs/07-reference/01-ai-sdk-core/71-has-tool-call.mdx +120 -0
  1159. package/node_modules/ai/docs/07-reference/01-ai-sdk-core/75-simulate-readable-stream.mdx +94 -0
  1160. package/node_modules/ai/docs/07-reference/01-ai-sdk-core/80-smooth-stream.mdx +145 -0
  1161. package/node_modules/ai/docs/07-reference/01-ai-sdk-core/90-generate-id.mdx +30 -0
  1162. package/node_modules/ai/docs/07-reference/01-ai-sdk-core/91-create-id-generator.mdx +89 -0
  1163. package/node_modules/ai/docs/07-reference/01-ai-sdk-core/92-default-generated-file.mdx +68 -0
  1164. package/node_modules/ai/docs/07-reference/01-ai-sdk-core/index.mdx +160 -0
  1165. package/node_modules/ai/docs/07-reference/02-ai-sdk-ui/01-use-chat.mdx +493 -0
  1166. package/node_modules/ai/docs/07-reference/02-ai-sdk-ui/02-use-completion.mdx +185 -0
  1167. package/node_modules/ai/docs/07-reference/02-ai-sdk-ui/03-use-object.mdx +196 -0
  1168. package/node_modules/ai/docs/07-reference/02-ai-sdk-ui/31-convert-to-model-messages.mdx +231 -0
  1169. package/node_modules/ai/docs/07-reference/02-ai-sdk-ui/32-prune-messages.mdx +108 -0
  1170. package/node_modules/ai/docs/07-reference/02-ai-sdk-ui/40-create-ui-message-stream.mdx +162 -0
  1171. package/node_modules/ai/docs/07-reference/02-ai-sdk-ui/41-create-ui-message-stream-response.mdx +119 -0
  1172. package/node_modules/ai/docs/07-reference/02-ai-sdk-ui/42-pipe-ui-message-stream-to-response.mdx +77 -0
  1173. package/node_modules/ai/docs/07-reference/02-ai-sdk-ui/43-read-ui-message-stream.mdx +57 -0
  1174. package/node_modules/ai/docs/07-reference/02-ai-sdk-ui/46-infer-ui-tools.mdx +99 -0
  1175. package/node_modules/ai/docs/07-reference/02-ai-sdk-ui/47-infer-ui-tool.mdx +75 -0
  1176. package/node_modules/ai/docs/07-reference/02-ai-sdk-ui/50-direct-chat-transport.mdx +333 -0
  1177. package/node_modules/ai/docs/07-reference/02-ai-sdk-ui/index.mdx +89 -0
  1178. package/node_modules/ai/docs/07-reference/03-ai-sdk-rsc/01-stream-ui.mdx +767 -0
  1179. package/node_modules/ai/docs/07-reference/03-ai-sdk-rsc/02-create-ai.mdx +90 -0
  1180. package/node_modules/ai/docs/07-reference/03-ai-sdk-rsc/03-create-streamable-ui.mdx +91 -0
  1181. package/node_modules/ai/docs/07-reference/03-ai-sdk-rsc/04-create-streamable-value.mdx +78 -0
  1182. package/node_modules/ai/docs/07-reference/03-ai-sdk-rsc/05-read-streamable-value.mdx +79 -0
  1183. package/node_modules/ai/docs/07-reference/03-ai-sdk-rsc/06-get-ai-state.mdx +50 -0
  1184. package/node_modules/ai/docs/07-reference/03-ai-sdk-rsc/07-get-mutable-ai-state.mdx +70 -0
  1185. package/node_modules/ai/docs/07-reference/03-ai-sdk-rsc/08-use-ai-state.mdx +26 -0
  1186. package/node_modules/ai/docs/07-reference/03-ai-sdk-rsc/09-use-actions.mdx +42 -0
  1187. package/node_modules/ai/docs/07-reference/03-ai-sdk-rsc/10-use-ui-state.mdx +35 -0
  1188. package/node_modules/ai/docs/07-reference/03-ai-sdk-rsc/11-use-streamable-value.mdx +46 -0
  1189. package/node_modules/ai/docs/07-reference/03-ai-sdk-rsc/20-render.mdx +266 -0
  1190. package/node_modules/ai/docs/07-reference/03-ai-sdk-rsc/index.mdx +67 -0
  1191. package/node_modules/ai/docs/07-reference/05-ai-sdk-errors/ai-api-call-error.mdx +31 -0
  1192. package/node_modules/ai/docs/07-reference/05-ai-sdk-errors/ai-download-error.mdx +28 -0
  1193. package/node_modules/ai/docs/07-reference/05-ai-sdk-errors/ai-empty-response-body-error.mdx +24 -0
  1194. package/node_modules/ai/docs/07-reference/05-ai-sdk-errors/ai-invalid-argument-error.mdx +26 -0
  1195. package/node_modules/ai/docs/07-reference/05-ai-sdk-errors/ai-invalid-data-content-error.mdx +26 -0
  1196. package/node_modules/ai/docs/07-reference/05-ai-sdk-errors/ai-invalid-message-role-error.mdx +25 -0
  1197. package/node_modules/ai/docs/07-reference/05-ai-sdk-errors/ai-invalid-prompt-error.mdx +47 -0
  1198. package/node_modules/ai/docs/07-reference/05-ai-sdk-errors/ai-invalid-response-data-error.mdx +25 -0
  1199. package/node_modules/ai/docs/07-reference/05-ai-sdk-errors/ai-invalid-tool-approval-error.mdx +24 -0
  1200. package/node_modules/ai/docs/07-reference/05-ai-sdk-errors/ai-invalid-tool-input-error.mdx +27 -0
  1201. package/node_modules/ai/docs/07-reference/05-ai-sdk-errors/ai-json-parse-error.mdx +25 -0
  1202. package/node_modules/ai/docs/07-reference/05-ai-sdk-errors/ai-load-api-key-error.mdx +24 -0
  1203. package/node_modules/ai/docs/07-reference/05-ai-sdk-errors/ai-load-setting-error.mdx +24 -0
  1204. package/node_modules/ai/docs/07-reference/05-ai-sdk-errors/ai-message-conversion-error.mdx +25 -0
  1205. package/node_modules/ai/docs/07-reference/05-ai-sdk-errors/ai-no-content-generated-error.mdx +24 -0
  1206. package/node_modules/ai/docs/07-reference/05-ai-sdk-errors/ai-no-image-generated-error.mdx +36 -0
  1207. package/node_modules/ai/docs/07-reference/05-ai-sdk-errors/ai-no-object-generated-error.mdx +43 -0
  1208. package/node_modules/ai/docs/07-reference/05-ai-sdk-errors/ai-no-output-generated-error.mdx +25 -0
  1209. package/node_modules/ai/docs/07-reference/05-ai-sdk-errors/ai-no-speech-generated-error.mdx +24 -0
  1210. package/node_modules/ai/docs/07-reference/05-ai-sdk-errors/ai-no-such-model-error.mdx +26 -0
  1211. package/node_modules/ai/docs/07-reference/05-ai-sdk-errors/ai-no-such-provider-error.mdx +28 -0
  1212. package/node_modules/ai/docs/07-reference/05-ai-sdk-errors/ai-no-such-tool-error.mdx +26 -0
  1213. package/node_modules/ai/docs/07-reference/05-ai-sdk-errors/ai-no-transcript-generated-error.mdx +24 -0
  1214. package/node_modules/ai/docs/07-reference/05-ai-sdk-errors/ai-no-video-generated-error.mdx +39 -0
  1215. package/node_modules/ai/docs/07-reference/05-ai-sdk-errors/ai-retry-error.mdx +27 -0
  1216. package/node_modules/ai/docs/07-reference/05-ai-sdk-errors/ai-too-many-embedding-values-for-call-error.mdx +27 -0
  1217. package/node_modules/ai/docs/07-reference/05-ai-sdk-errors/ai-tool-call-not-found-for-approval-error.mdx +25 -0
  1218. package/node_modules/ai/docs/07-reference/05-ai-sdk-errors/ai-tool-call-repair-error.mdx +28 -0
  1219. package/node_modules/ai/docs/07-reference/05-ai-sdk-errors/ai-type-validation-error.mdx +25 -0
  1220. package/node_modules/ai/docs/07-reference/05-ai-sdk-errors/ai-ui-message-stream-error.mdx +67 -0
  1221. package/node_modules/ai/docs/07-reference/05-ai-sdk-errors/ai-unsupported-functionality-error.mdx +25 -0
  1222. package/node_modules/ai/docs/07-reference/05-ai-sdk-errors/index.mdx +39 -0
  1223. package/node_modules/ai/docs/07-reference/index.mdx +28 -0
  1224. package/node_modules/ai/docs/08-migration-guides/00-versioning.mdx +46 -0
  1225. package/node_modules/ai/docs/08-migration-guides/24-migration-guide-6-0.mdx +823 -0
  1226. package/node_modules/ai/docs/08-migration-guides/25-migration-guide-5-0-data.mdx +882 -0
  1227. package/node_modules/ai/docs/08-migration-guides/26-migration-guide-5-0.mdx +3427 -0
  1228. package/node_modules/ai/docs/08-migration-guides/27-migration-guide-4-2.mdx +99 -0
  1229. package/node_modules/ai/docs/08-migration-guides/28-migration-guide-4-1.mdx +14 -0
  1230. package/node_modules/ai/docs/08-migration-guides/29-migration-guide-4-0.mdx +1157 -0
  1231. package/node_modules/ai/docs/08-migration-guides/36-migration-guide-3-4.mdx +14 -0
  1232. package/node_modules/ai/docs/08-migration-guides/37-migration-guide-3-3.mdx +64 -0
  1233. package/node_modules/ai/docs/08-migration-guides/38-migration-guide-3-2.mdx +46 -0
  1234. package/node_modules/ai/docs/08-migration-guides/39-migration-guide-3-1.mdx +168 -0
  1235. package/node_modules/ai/docs/08-migration-guides/index.mdx +22 -0
  1236. package/node_modules/ai/docs/09-troubleshooting/01-azure-stream-slow.mdx +33 -0
  1237. package/node_modules/ai/docs/09-troubleshooting/03-server-actions-in-client-components.mdx +40 -0
  1238. package/node_modules/ai/docs/09-troubleshooting/04-strange-stream-output.mdx +36 -0
  1239. package/node_modules/ai/docs/09-troubleshooting/05-streamable-ui-errors.mdx +16 -0
  1240. package/node_modules/ai/docs/09-troubleshooting/05-tool-invocation-missing-result.mdx +106 -0
  1241. package/node_modules/ai/docs/09-troubleshooting/06-streaming-not-working-when-deployed.mdx +31 -0
  1242. package/node_modules/ai/docs/09-troubleshooting/06-streaming-not-working-when-proxied.mdx +31 -0
  1243. package/node_modules/ai/docs/09-troubleshooting/06-timeout-on-vercel.mdx +60 -0
  1244. package/node_modules/ai/docs/09-troubleshooting/07-unclosed-streams.mdx +34 -0
  1245. package/node_modules/ai/docs/09-troubleshooting/08-use-chat-failed-to-parse-stream.mdx +26 -0
  1246. package/node_modules/ai/docs/09-troubleshooting/09-client-stream-error.mdx +25 -0
  1247. package/node_modules/ai/docs/09-troubleshooting/10-use-chat-tools-no-response.mdx +32 -0
  1248. package/node_modules/ai/docs/09-troubleshooting/11-use-chat-custom-request-options.mdx +149 -0
  1249. package/node_modules/ai/docs/09-troubleshooting/12-typescript-performance-zod.mdx +46 -0
  1250. package/node_modules/ai/docs/09-troubleshooting/12-use-chat-an-error-occurred.mdx +59 -0
  1251. package/node_modules/ai/docs/09-troubleshooting/13-repeated-assistant-messages.mdx +73 -0
  1252. package/node_modules/ai/docs/09-troubleshooting/14-stream-abort-handling.mdx +73 -0
  1253. package/node_modules/ai/docs/09-troubleshooting/14-tool-calling-with-structured-outputs.mdx +48 -0
  1254. package/node_modules/ai/docs/09-troubleshooting/15-abort-breaks-resumable-streams.mdx +55 -0
  1255. package/node_modules/ai/docs/09-troubleshooting/15-stream-text-not-working.mdx +33 -0
  1256. package/node_modules/ai/docs/09-troubleshooting/16-streaming-status-delay.mdx +63 -0
  1257. package/node_modules/ai/docs/09-troubleshooting/17-use-chat-stale-body-data.mdx +141 -0
  1258. package/node_modules/ai/docs/09-troubleshooting/18-ontoolcall-type-narrowing.mdx +66 -0
  1259. package/node_modules/ai/docs/09-troubleshooting/19-unsupported-model-version.mdx +50 -0
  1260. package/node_modules/ai/docs/09-troubleshooting/20-no-object-generated-content-filter.mdx +76 -0
  1261. package/node_modules/ai/docs/09-troubleshooting/21-missing-tool-results-error.mdx +82 -0
  1262. package/node_modules/ai/docs/09-troubleshooting/30-model-is-not-assignable-to-type.mdx +21 -0
  1263. package/node_modules/ai/docs/09-troubleshooting/40-typescript-cannot-find-namespace-jsx.mdx +24 -0
  1264. package/node_modules/ai/docs/09-troubleshooting/50-react-maximum-update-depth-exceeded.mdx +39 -0
  1265. package/node_modules/ai/docs/09-troubleshooting/60-jest-cannot-find-module-ai-rsc.mdx +22 -0
  1266. package/node_modules/ai/docs/09-troubleshooting/70-high-memory-usage-with-images.mdx +108 -0
  1267. package/node_modules/ai/docs/09-troubleshooting/index.mdx +11 -0
  1268. package/node_modules/ai/internal.d.ts +1 -0
  1269. package/node_modules/ai/package.json +115 -0
  1270. package/node_modules/ai/src/agent/agent.ts +156 -0
  1271. package/node_modules/ai/src/agent/create-agent-ui-stream-response.ts +61 -0
  1272. package/node_modules/ai/src/agent/create-agent-ui-stream.ts +84 -0
  1273. package/node_modules/ai/src/agent/index.ts +37 -0
  1274. package/node_modules/ai/src/agent/infer-agent-tools.ts +7 -0
  1275. package/node_modules/ai/src/agent/infer-agent-ui-message.ts +11 -0
  1276. package/node_modules/ai/src/agent/pipe-agent-ui-stream-to-response.ts +64 -0
  1277. package/node_modules/ai/src/agent/tool-loop-agent-settings.ts +244 -0
  1278. package/node_modules/ai/src/agent/tool-loop-agent.ts +206 -0
  1279. package/node_modules/ai/src/embed/embed-many-result.ts +53 -0
  1280. package/node_modules/ai/src/embed/embed-many.ts +386 -0
  1281. package/node_modules/ai/src/embed/embed-result.ts +50 -0
  1282. package/node_modules/ai/src/embed/embed.ts +217 -0
  1283. package/node_modules/ai/src/embed/index.ts +4 -0
  1284. package/node_modules/ai/src/error/index.ts +37 -0
  1285. package/node_modules/ai/src/error/invalid-argument-error.ts +34 -0
  1286. package/node_modules/ai/src/error/invalid-stream-part-error.ts +28 -0
  1287. package/node_modules/ai/src/error/invalid-tool-approval-error.ts +26 -0
  1288. package/node_modules/ai/src/error/invalid-tool-input-error.ts +33 -0
  1289. package/node_modules/ai/src/error/missing-tool-result-error.ts +28 -0
  1290. package/node_modules/ai/src/error/no-image-generated-error.ts +39 -0
  1291. package/node_modules/ai/src/error/no-object-generated-error.ts +70 -0
  1292. package/node_modules/ai/src/error/no-output-generated-error.ts +26 -0
  1293. package/node_modules/ai/src/error/no-speech-generated-error.ts +28 -0
  1294. package/node_modules/ai/src/error/no-such-tool-error.ts +35 -0
  1295. package/node_modules/ai/src/error/no-transcript-generated-error.ts +30 -0
  1296. package/node_modules/ai/src/error/no-video-generated-error.ts +57 -0
  1297. package/node_modules/ai/src/error/tool-call-not-found-for-approval-error.ts +32 -0
  1298. package/node_modules/ai/src/error/tool-call-repair-error.ts +30 -0
  1299. package/node_modules/ai/src/error/ui-message-stream-error.ts +48 -0
  1300. package/node_modules/ai/src/error/unsupported-model-version-error.ts +23 -0
  1301. package/node_modules/ai/src/error/verify-no-object-generated-error.ts +27 -0
  1302. package/node_modules/ai/src/generate-image/generate-image-result.ts +42 -0
  1303. package/node_modules/ai/src/generate-image/generate-image.ts +361 -0
  1304. package/node_modules/ai/src/generate-image/index.ts +18 -0
  1305. package/node_modules/ai/src/generate-object/generate-object-result.ts +67 -0
  1306. package/node_modules/ai/src/generate-object/generate-object.ts +517 -0
  1307. package/node_modules/ai/src/generate-object/index.ts +9 -0
  1308. package/node_modules/ai/src/generate-object/inject-json-instruction.ts +30 -0
  1309. package/node_modules/ai/src/generate-object/output-strategy.ts +415 -0
  1310. package/node_modules/ai/src/generate-object/parse-and-validate-object-result.ts +111 -0
  1311. package/node_modules/ai/src/generate-object/repair-text.ts +12 -0
  1312. package/node_modules/ai/src/generate-object/stream-object-result.ts +120 -0
  1313. package/node_modules/ai/src/generate-object/stream-object.ts +985 -0
  1314. package/node_modules/ai/src/generate-object/validate-object-generation-input.ts +144 -0
  1315. package/node_modules/ai/src/generate-speech/generate-speech-result.ts +30 -0
  1316. package/node_modules/ai/src/generate-speech/generate-speech.ts +191 -0
  1317. package/node_modules/ai/src/generate-speech/generated-audio-file.ts +65 -0
  1318. package/node_modules/ai/src/generate-speech/index.ts +3 -0
  1319. package/node_modules/ai/src/generate-text/callback-events.ts +332 -0
  1320. package/node_modules/ai/src/generate-text/collect-tool-approvals.ts +116 -0
  1321. package/node_modules/ai/src/generate-text/content-part.ts +25 -0
  1322. package/node_modules/ai/src/generate-text/execute-tool-call.ts +197 -0
  1323. package/node_modules/ai/src/generate-text/extract-reasoning-content.ts +17 -0
  1324. package/node_modules/ai/src/generate-text/extract-text-content.ts +15 -0
  1325. package/node_modules/ai/src/generate-text/generate-text-result.ts +168 -0
  1326. package/node_modules/ai/src/generate-text/generate-text.ts +1535 -0
  1327. package/node_modules/ai/src/generate-text/generated-file.ts +70 -0
  1328. package/node_modules/ai/src/generate-text/index.ts +74 -0
  1329. package/node_modules/ai/src/generate-text/is-approval-needed.ts +29 -0
  1330. package/node_modules/ai/src/generate-text/output-utils.ts +23 -0
  1331. package/node_modules/ai/src/generate-text/output.ts +590 -0
  1332. package/node_modules/ai/src/generate-text/parse-tool-call.ts +188 -0
  1333. package/node_modules/ai/src/generate-text/prepare-step.ts +103 -0
  1334. package/node_modules/ai/src/generate-text/prune-messages.ts +167 -0
  1335. package/node_modules/ai/src/generate-text/reasoning-output.ts +20 -0
  1336. package/node_modules/ai/src/generate-text/reasoning.ts +8 -0
  1337. package/node_modules/ai/src/generate-text/response-message.ts +10 -0
  1338. package/node_modules/ai/src/generate-text/run-tools-transformation.ts +442 -0
  1339. package/node_modules/ai/src/generate-text/smooth-stream.ts +162 -0
  1340. package/node_modules/ai/src/generate-text/step-result.ts +290 -0
  1341. package/node_modules/ai/src/generate-text/stop-condition.ts +29 -0
  1342. package/node_modules/ai/src/generate-text/stream-text-result.ts +463 -0
  1343. package/node_modules/ai/src/generate-text/stream-text.ts +2807 -0
  1344. package/node_modules/ai/src/generate-text/to-response-messages.ts +163 -0
  1345. package/node_modules/ai/src/generate-text/tool-approval-request-output.ts +21 -0
  1346. package/node_modules/ai/src/generate-text/tool-call-repair-function.ts +27 -0
  1347. package/node_modules/ai/src/generate-text/tool-call.ts +47 -0
  1348. package/node_modules/ai/src/generate-text/tool-error.ts +34 -0
  1349. package/node_modules/ai/src/generate-text/tool-output-denied.ts +21 -0
  1350. package/node_modules/ai/src/generate-text/tool-output.ts +7 -0
  1351. package/node_modules/ai/src/generate-text/tool-result.ts +36 -0
  1352. package/node_modules/ai/src/generate-text/tool-set.ts +14 -0
  1353. package/node_modules/ai/src/generate-video/generate-video-result.ts +36 -0
  1354. package/node_modules/ai/src/generate-video/generate-video.ts +402 -0
  1355. package/node_modules/ai/src/generate-video/index.ts +3 -0
  1356. package/node_modules/ai/src/global.ts +36 -0
  1357. package/node_modules/ai/src/index.ts +49 -0
  1358. package/node_modules/ai/src/logger/index.ts +6 -0
  1359. package/node_modules/ai/src/logger/log-warnings.ts +140 -0
  1360. package/node_modules/ai/src/middleware/add-tool-input-examples-middleware.ts +90 -0
  1361. package/node_modules/ai/src/middleware/default-embedding-settings-middleware.ts +22 -0
  1362. package/node_modules/ai/src/middleware/default-settings-middleware.ts +33 -0
  1363. package/node_modules/ai/src/middleware/extract-json-middleware.ts +197 -0
  1364. package/node_modules/ai/src/middleware/extract-reasoning-middleware.ts +249 -0
  1365. package/node_modules/ai/src/middleware/index.ts +10 -0
  1366. package/node_modules/ai/src/middleware/simulate-streaming-middleware.ts +79 -0
  1367. package/node_modules/ai/src/middleware/wrap-embedding-model.ts +86 -0
  1368. package/node_modules/ai/src/middleware/wrap-image-model.ts +85 -0
  1369. package/node_modules/ai/src/middleware/wrap-language-model.ts +104 -0
  1370. package/node_modules/ai/src/middleware/wrap-provider.ts +51 -0
  1371. package/node_modules/ai/src/model/as-embedding-model-v3.ts +24 -0
  1372. package/node_modules/ai/src/model/as-image-model-v3.ts +24 -0
  1373. package/node_modules/ai/src/model/as-language-model-v3.ts +103 -0
  1374. package/node_modules/ai/src/model/as-provider-v3.ts +36 -0
  1375. package/node_modules/ai/src/model/as-speech-model-v3.ts +24 -0
  1376. package/node_modules/ai/src/model/as-transcription-model-v3.ts +24 -0
  1377. package/node_modules/ai/src/model/resolve-model.ts +159 -0
  1378. package/node_modules/ai/src/prompt/call-settings.ts +148 -0
  1379. package/node_modules/ai/src/prompt/content-part.ts +215 -0
  1380. package/node_modules/ai/src/prompt/convert-to-language-model-prompt.ts +526 -0
  1381. package/node_modules/ai/src/prompt/create-tool-model-output.ts +34 -0
  1382. package/node_modules/ai/src/prompt/data-content.ts +134 -0
  1383. package/node_modules/ai/src/prompt/index.ts +27 -0
  1384. package/node_modules/ai/src/prompt/invalid-data-content-error.ts +29 -0
  1385. package/node_modules/ai/src/prompt/invalid-message-role-error.ts +27 -0
  1386. package/node_modules/ai/src/prompt/message-conversion-error.ts +28 -0
  1387. package/node_modules/ai/src/prompt/message.ts +68 -0
  1388. package/node_modules/ai/src/prompt/prepare-call-settings.ts +108 -0
  1389. package/node_modules/ai/src/prompt/prepare-tools-and-tool-choice.ts +86 -0
  1390. package/node_modules/ai/src/prompt/prompt.ts +43 -0
  1391. package/node_modules/ai/src/prompt/split-data-url.ts +17 -0
  1392. package/node_modules/ai/src/prompt/standardize-prompt.ts +99 -0
  1393. package/node_modules/ai/src/prompt/wrap-gateway-error.ts +29 -0
  1394. package/node_modules/ai/src/registry/custom-provider.ts +176 -0
  1395. package/node_modules/ai/src/registry/index.ts +7 -0
  1396. package/node_modules/ai/src/registry/no-such-provider-error.ts +41 -0
  1397. package/node_modules/ai/src/registry/provider-registry.ts +328 -0
  1398. package/node_modules/ai/src/rerank/index.ts +2 -0
  1399. package/node_modules/ai/src/rerank/rerank-result.ts +70 -0
  1400. package/node_modules/ai/src/rerank/rerank.ts +239 -0
  1401. package/node_modules/ai/src/telemetry/assemble-operation-name.ts +21 -0
  1402. package/node_modules/ai/src/telemetry/get-base-telemetry-attributes.ts +53 -0
  1403. package/node_modules/ai/src/telemetry/get-global-telemetry-integration.ts +85 -0
  1404. package/node_modules/ai/src/telemetry/get-tracer.ts +20 -0
  1405. package/node_modules/ai/src/telemetry/index.ts +4 -0
  1406. package/node_modules/ai/src/telemetry/noop-tracer.ts +69 -0
  1407. package/node_modules/ai/src/telemetry/record-span.ts +75 -0
  1408. package/node_modules/ai/src/telemetry/select-telemetry-attributes.ts +78 -0
  1409. package/node_modules/ai/src/telemetry/stringify-for-telemetry.ts +33 -0
  1410. package/node_modules/ai/src/telemetry/telemetry-integration-registry.ts +17 -0
  1411. package/node_modules/ai/src/telemetry/telemetry-integration.ts +24 -0
  1412. package/node_modules/ai/src/telemetry/telemetry-settings.ts +53 -0
  1413. package/node_modules/ai/src/test/mock-embedding-model-v2.ts +35 -0
  1414. package/node_modules/ai/src/test/mock-embedding-model-v3.ts +48 -0
  1415. package/node_modules/ai/src/test/mock-image-model-v2.ts +28 -0
  1416. package/node_modules/ai/src/test/mock-image-model-v3.ts +28 -0
  1417. package/node_modules/ai/src/test/mock-language-model-v2.ts +72 -0
  1418. package/node_modules/ai/src/test/mock-language-model-v3.ts +77 -0
  1419. package/node_modules/ai/src/test/mock-provider-v2.ts +68 -0
  1420. package/node_modules/ai/src/test/mock-provider-v3.ts +80 -0
  1421. package/node_modules/ai/src/test/mock-reranking-model-v3.ts +25 -0
  1422. package/node_modules/ai/src/test/mock-server-response.ts +69 -0
  1423. package/node_modules/ai/src/test/mock-speech-model-v2.ts +24 -0
  1424. package/node_modules/ai/src/test/mock-speech-model-v3.ts +24 -0
  1425. package/node_modules/ai/src/test/mock-tracer.ts +156 -0
  1426. package/node_modules/ai/src/test/mock-transcription-model-v2.ts +24 -0
  1427. package/node_modules/ai/src/test/mock-transcription-model-v3.ts +24 -0
  1428. package/node_modules/ai/src/test/mock-values.ts +4 -0
  1429. package/node_modules/ai/src/test/mock-video-model-v3.ts +28 -0
  1430. package/node_modules/ai/src/test/not-implemented.ts +3 -0
  1431. package/node_modules/ai/src/text-stream/create-text-stream-response.ts +30 -0
  1432. package/node_modules/ai/src/text-stream/index.ts +2 -0
  1433. package/node_modules/ai/src/text-stream/pipe-text-stream-to-response.ts +38 -0
  1434. package/node_modules/ai/src/transcribe/index.ts +2 -0
  1435. package/node_modules/ai/src/transcribe/transcribe-result.ts +60 -0
  1436. package/node_modules/ai/src/transcribe/transcribe.ts +187 -0
  1437. package/node_modules/ai/src/types/embedding-model-middleware.ts +3 -0
  1438. package/node_modules/ai/src/types/embedding-model.ts +18 -0
  1439. package/node_modules/ai/src/types/image-model-middleware.ts +3 -0
  1440. package/node_modules/ai/src/types/image-model-response-metadata.ts +16 -0
  1441. package/node_modules/ai/src/types/image-model.ts +19 -0
  1442. package/node_modules/ai/src/types/index.ts +29 -0
  1443. package/node_modules/ai/src/types/json-value.ts +15 -0
  1444. package/node_modules/ai/src/types/language-model-middleware.ts +3 -0
  1445. package/node_modules/ai/src/types/language-model-request-metadata.ts +6 -0
  1446. package/node_modules/ai/src/types/language-model-response-metadata.ts +21 -0
  1447. package/node_modules/ai/src/types/language-model.ts +104 -0
  1448. package/node_modules/ai/src/types/provider-metadata.ts +16 -0
  1449. package/node_modules/ai/src/types/provider.ts +55 -0
  1450. package/node_modules/ai/src/types/reranking-model.ts +6 -0
  1451. package/node_modules/ai/src/types/speech-model-response-metadata.ts +21 -0
  1452. package/node_modules/ai/src/types/speech-model.ts +6 -0
  1453. package/node_modules/ai/src/types/transcription-model-response-metadata.ts +16 -0
  1454. package/node_modules/ai/src/types/transcription-model.ts +9 -0
  1455. package/node_modules/ai/src/types/usage.ts +200 -0
  1456. package/node_modules/ai/src/types/video-model-response-metadata.ts +28 -0
  1457. package/node_modules/ai/src/types/video-model.ts +11 -0
  1458. package/node_modules/ai/src/types/warning.ts +7 -0
  1459. package/node_modules/ai/src/ui/call-completion-api.ts +157 -0
  1460. package/node_modules/ai/src/ui/chat-transport.ts +83 -0
  1461. package/node_modules/ai/src/ui/chat.ts +751 -0
  1462. package/node_modules/ai/src/ui/convert-file-list-to-file-ui-parts.ts +36 -0
  1463. package/node_modules/ai/src/ui/convert-to-model-messages.ts +376 -0
  1464. package/node_modules/ai/src/ui/default-chat-transport.ts +36 -0
  1465. package/node_modules/ai/src/ui/direct-chat-transport.ts +118 -0
  1466. package/node_modules/ai/src/ui/http-chat-transport.ts +284 -0
  1467. package/node_modules/ai/src/ui/index.ts +71 -0
  1468. package/node_modules/ai/src/ui/last-assistant-message-is-complete-with-approval-responses.ts +44 -0
  1469. package/node_modules/ai/src/ui/last-assistant-message-is-complete-with-tool-calls.ts +39 -0
  1470. package/node_modules/ai/src/ui/process-text-stream.ts +16 -0
  1471. package/node_modules/ai/src/ui/process-ui-message-stream.ts +793 -0
  1472. package/node_modules/ai/src/ui/text-stream-chat-transport.ts +23 -0
  1473. package/node_modules/ai/src/ui/transform-text-to-ui-message-stream.ts +27 -0
  1474. package/node_modules/ai/src/ui/ui-messages.ts +536 -0
  1475. package/node_modules/ai/src/ui/use-completion.ts +84 -0
  1476. package/node_modules/ai/src/ui/validate-ui-messages.ts +506 -0
  1477. package/node_modules/ai/src/ui-message-stream/create-ui-message-stream-response.ts +44 -0
  1478. package/node_modules/ai/src/ui-message-stream/create-ui-message-stream.ts +145 -0
  1479. package/node_modules/ai/src/ui-message-stream/get-response-ui-message-id.ts +35 -0
  1480. package/node_modules/ai/src/ui-message-stream/handle-ui-message-stream-finish.ts +170 -0
  1481. package/node_modules/ai/src/ui-message-stream/index.ts +14 -0
  1482. package/node_modules/ai/src/ui-message-stream/json-to-sse-transform-stream.ts +17 -0
  1483. package/node_modules/ai/src/ui-message-stream/pipe-ui-message-stream-to-response.ts +51 -0
  1484. package/node_modules/ai/src/ui-message-stream/read-ui-message-stream.ts +87 -0
  1485. package/node_modules/ai/src/ui-message-stream/ui-message-chunks.ts +346 -0
  1486. package/node_modules/ai/src/ui-message-stream/ui-message-stream-headers.ts +7 -0
  1487. package/node_modules/ai/src/ui-message-stream/ui-message-stream-on-finish-callback.ts +32 -0
  1488. package/node_modules/ai/src/ui-message-stream/ui-message-stream-on-step-finish-callback.ts +25 -0
  1489. package/node_modules/ai/src/ui-message-stream/ui-message-stream-response-init.ts +14 -0
  1490. package/node_modules/ai/src/ui-message-stream/ui-message-stream-writer.ts +24 -0
  1491. package/node_modules/ai/src/util/as-array.ts +3 -0
  1492. package/node_modules/ai/src/util/async-iterable-stream.ts +94 -0
  1493. package/node_modules/ai/src/util/consume-stream.ts +31 -0
  1494. package/node_modules/ai/src/util/cosine-similarity.ts +46 -0
  1495. package/node_modules/ai/src/util/create-resolvable-promise.ts +30 -0
  1496. package/node_modules/ai/src/util/create-stitchable-stream.ts +112 -0
  1497. package/node_modules/ai/src/util/data-url.ts +17 -0
  1498. package/node_modules/ai/src/util/deep-partial.ts +84 -0
  1499. package/node_modules/ai/src/util/detect-media-type.ts +226 -0
  1500. package/node_modules/ai/src/util/download/create-download.ts +13 -0
  1501. package/node_modules/ai/src/util/download/download-function.ts +45 -0
  1502. package/node_modules/ai/src/util/download/download.ts +69 -0
  1503. package/node_modules/ai/src/util/error-handler.ts +1 -0
  1504. package/node_modules/ai/src/util/fix-json.ts +401 -0
  1505. package/node_modules/ai/src/util/get-potential-start-index.ts +39 -0
  1506. package/node_modules/ai/src/util/index.ts +12 -0
  1507. package/node_modules/ai/src/util/is-deep-equal-data.ts +48 -0
  1508. package/node_modules/ai/src/util/is-non-empty-object.ts +5 -0
  1509. package/node_modules/ai/src/util/job.ts +1 -0
  1510. package/node_modules/ai/src/util/log-v2-compatibility-warning.ts +21 -0
  1511. package/node_modules/ai/src/util/merge-abort-signals.ts +43 -0
  1512. package/node_modules/ai/src/util/merge-objects.ts +79 -0
  1513. package/node_modules/ai/src/util/notify.ts +22 -0
  1514. package/node_modules/ai/src/util/now.ts +4 -0
  1515. package/node_modules/ai/src/util/parse-partial-json.ts +30 -0
  1516. package/node_modules/ai/src/util/prepare-headers.ts +14 -0
  1517. package/node_modules/ai/src/util/prepare-retries.ts +47 -0
  1518. package/node_modules/ai/src/util/retry-error.ts +41 -0
  1519. package/node_modules/ai/src/util/retry-with-exponential-backoff.ts +154 -0
  1520. package/node_modules/ai/src/util/serial-job-executor.ts +36 -0
  1521. package/node_modules/ai/src/util/simulate-readable-stream.ts +39 -0
  1522. package/node_modules/ai/src/util/split-array.ts +20 -0
  1523. package/node_modules/ai/src/util/value-of.ts +65 -0
  1524. package/node_modules/ai/src/util/write-to-server-response.ts +49 -0
  1525. package/node_modules/ai/src/version.ts +5 -0
  1526. package/node_modules/ai/test.d.ts +1 -0
  1527. package/node_modules/ansi-regex/index.d.ts +37 -0
  1528. package/node_modules/ansi-regex/index.js +10 -0
  1529. package/node_modules/ansi-regex/license +9 -0
  1530. package/node_modules/ansi-regex/package.json +55 -0
  1531. package/node_modules/ansi-regex/readme.md +78 -0
  1532. package/node_modules/ansi-styles/index.d.ts +345 -0
  1533. package/node_modules/ansi-styles/index.js +163 -0
  1534. package/node_modules/ansi-styles/license +9 -0
  1535. package/node_modules/ansi-styles/package.json +56 -0
  1536. package/node_modules/ansi-styles/readme.md +152 -0
  1537. package/node_modules/cliui/CHANGELOG.md +139 -0
  1538. package/node_modules/cliui/LICENSE.txt +14 -0
  1539. package/node_modules/cliui/README.md +141 -0
  1540. package/node_modules/cliui/build/index.cjs +302 -0
  1541. package/node_modules/cliui/build/index.d.cts +43 -0
  1542. package/node_modules/cliui/build/lib/index.js +287 -0
  1543. package/node_modules/cliui/build/lib/string-utils.js +27 -0
  1544. package/node_modules/cliui/index.mjs +13 -0
  1545. package/node_modules/cliui/package.json +83 -0
  1546. package/node_modules/color-convert/CHANGELOG.md +54 -0
  1547. package/node_modules/color-convert/LICENSE +21 -0
  1548. package/node_modules/color-convert/README.md +68 -0
  1549. package/node_modules/color-convert/conversions.js +839 -0
  1550. package/node_modules/color-convert/index.js +81 -0
  1551. package/node_modules/color-convert/package.json +48 -0
  1552. package/node_modules/color-convert/route.js +97 -0
  1553. package/node_modules/color-name/LICENSE +8 -0
  1554. package/node_modules/color-name/README.md +11 -0
  1555. package/node_modules/color-name/index.js +152 -0
  1556. package/node_modules/color-name/package.json +28 -0
  1557. package/node_modules/emoji-regex/LICENSE-MIT.txt +20 -0
  1558. package/node_modules/emoji-regex/README.md +73 -0
  1559. package/node_modules/emoji-regex/es2015/index.js +6 -0
  1560. package/node_modules/emoji-regex/es2015/text.js +6 -0
  1561. package/node_modules/emoji-regex/index.d.ts +23 -0
  1562. package/node_modules/emoji-regex/index.js +6 -0
  1563. package/node_modules/emoji-regex/package.json +50 -0
  1564. package/node_modules/emoji-regex/text.js +6 -0
  1565. package/node_modules/escalade/dist/index.js +22 -0
  1566. package/node_modules/escalade/dist/index.mjs +22 -0
  1567. package/node_modules/escalade/index.d.mts +11 -0
  1568. package/node_modules/escalade/index.d.ts +15 -0
  1569. package/node_modules/escalade/license +9 -0
  1570. package/node_modules/escalade/package.json +74 -0
  1571. package/node_modules/escalade/readme.md +211 -0
  1572. package/node_modules/escalade/sync/index.d.mts +9 -0
  1573. package/node_modules/escalade/sync/index.d.ts +13 -0
  1574. package/node_modules/escalade/sync/index.js +18 -0
  1575. package/node_modules/escalade/sync/index.mjs +18 -0
  1576. package/node_modules/eventsource-parser/LICENSE +21 -0
  1577. package/node_modules/eventsource-parser/README.md +126 -0
  1578. package/node_modules/eventsource-parser/dist/index.cjs +166 -0
  1579. package/node_modules/eventsource-parser/dist/index.cjs.map +1 -0
  1580. package/node_modules/eventsource-parser/dist/index.d.cts +146 -0
  1581. package/node_modules/eventsource-parser/dist/index.d.ts +146 -0
  1582. package/node_modules/eventsource-parser/dist/index.js +166 -0
  1583. package/node_modules/eventsource-parser/dist/index.js.map +1 -0
  1584. package/node_modules/eventsource-parser/dist/stream.cjs +28 -0
  1585. package/node_modules/eventsource-parser/dist/stream.cjs.map +1 -0
  1586. package/node_modules/eventsource-parser/dist/stream.d.cts +121 -0
  1587. package/node_modules/eventsource-parser/dist/stream.d.ts +121 -0
  1588. package/node_modules/eventsource-parser/dist/stream.js +29 -0
  1589. package/node_modules/eventsource-parser/dist/stream.js.map +1 -0
  1590. package/node_modules/eventsource-parser/package.json +92 -0
  1591. package/node_modules/eventsource-parser/src/errors.ts +44 -0
  1592. package/node_modules/eventsource-parser/src/index.ts +3 -0
  1593. package/node_modules/eventsource-parser/src/parse.ts +395 -0
  1594. package/node_modules/eventsource-parser/src/stream.ts +88 -0
  1595. package/node_modules/eventsource-parser/src/types.ts +97 -0
  1596. package/node_modules/eventsource-parser/stream.js +2 -0
  1597. package/node_modules/get-caller-file/LICENSE.md +6 -0
  1598. package/node_modules/get-caller-file/README.md +41 -0
  1599. package/node_modules/get-caller-file/index.d.ts +2 -0
  1600. package/node_modules/get-caller-file/index.js +22 -0
  1601. package/node_modules/get-caller-file/index.js.map +1 -0
  1602. package/node_modules/get-caller-file/package.json +42 -0
  1603. package/node_modules/is-fullwidth-code-point/index.d.ts +17 -0
  1604. package/node_modules/is-fullwidth-code-point/index.js +50 -0
  1605. package/node_modules/is-fullwidth-code-point/license +9 -0
  1606. package/node_modules/is-fullwidth-code-point/package.json +42 -0
  1607. package/node_modules/is-fullwidth-code-point/readme.md +39 -0
  1608. package/node_modules/json-schema/LICENSE +195 -0
  1609. package/node_modules/json-schema/README.md +3 -0
  1610. package/node_modules/json-schema/lib/links.js +65 -0
  1611. package/node_modules/json-schema/lib/validate.js +271 -0
  1612. package/node_modules/json-schema/package.json +24 -0
  1613. package/node_modules/openai-oauth/LICENSE +661 -0
  1614. package/node_modules/openai-oauth/README.md +76 -0
  1615. package/node_modules/openai-oauth/dist/chunk-2AENSHRT.js +22847 -0
  1616. package/node_modules/openai-oauth/dist/cli.d.ts +1 -0
  1617. package/node_modules/openai-oauth/dist/cli.js +361 -0
  1618. package/node_modules/openai-oauth/dist/index.d.ts +155 -0
  1619. package/node_modules/openai-oauth/dist/index.js +10 -0
  1620. package/node_modules/openai-oauth/package.json +47 -0
  1621. package/node_modules/require-directory/.jshintrc +67 -0
  1622. package/node_modules/require-directory/.npmignore +1 -0
  1623. package/node_modules/require-directory/.travis.yml +3 -0
  1624. package/node_modules/require-directory/LICENSE +22 -0
  1625. package/node_modules/require-directory/README.markdown +184 -0
  1626. package/node_modules/require-directory/index.js +86 -0
  1627. package/node_modules/require-directory/package.json +40 -0
  1628. package/node_modules/string-width/index.d.ts +29 -0
  1629. package/node_modules/string-width/index.js +47 -0
  1630. package/node_modules/string-width/license +9 -0
  1631. package/node_modules/string-width/package.json +56 -0
  1632. package/node_modules/string-width/readme.md +50 -0
  1633. package/node_modules/strip-ansi/index.d.ts +17 -0
  1634. package/node_modules/strip-ansi/index.js +4 -0
  1635. package/node_modules/strip-ansi/license +9 -0
  1636. package/node_modules/strip-ansi/package.json +54 -0
  1637. package/node_modules/strip-ansi/readme.md +46 -0
  1638. package/node_modules/wrap-ansi/index.js +216 -0
  1639. package/node_modules/wrap-ansi/license +9 -0
  1640. package/node_modules/wrap-ansi/package.json +62 -0
  1641. package/node_modules/wrap-ansi/readme.md +91 -0
  1642. package/node_modules/y18n/CHANGELOG.md +100 -0
  1643. package/node_modules/y18n/LICENSE +13 -0
  1644. package/node_modules/y18n/README.md +127 -0
  1645. package/node_modules/y18n/build/index.cjs +203 -0
  1646. package/node_modules/y18n/build/lib/cjs.js +6 -0
  1647. package/node_modules/y18n/build/lib/index.js +174 -0
  1648. package/node_modules/y18n/build/lib/platform-shims/node.js +19 -0
  1649. package/node_modules/y18n/index.mjs +8 -0
  1650. package/node_modules/y18n/package.json +70 -0
  1651. package/node_modules/yargs/LICENSE +21 -0
  1652. package/node_modules/yargs/README.md +204 -0
  1653. package/node_modules/yargs/browser.d.ts +5 -0
  1654. package/node_modules/yargs/browser.mjs +7 -0
  1655. package/node_modules/yargs/build/index.cjs +1 -0
  1656. package/node_modules/yargs/build/lib/argsert.js +62 -0
  1657. package/node_modules/yargs/build/lib/command.js +449 -0
  1658. package/node_modules/yargs/build/lib/completion-templates.js +48 -0
  1659. package/node_modules/yargs/build/lib/completion.js +243 -0
  1660. package/node_modules/yargs/build/lib/middleware.js +88 -0
  1661. package/node_modules/yargs/build/lib/parse-command.js +32 -0
  1662. package/node_modules/yargs/build/lib/typings/common-types.js +9 -0
  1663. package/node_modules/yargs/build/lib/typings/yargs-parser-types.js +1 -0
  1664. package/node_modules/yargs/build/lib/usage.js +584 -0
  1665. package/node_modules/yargs/build/lib/utils/apply-extends.js +59 -0
  1666. package/node_modules/yargs/build/lib/utils/is-promise.js +5 -0
  1667. package/node_modules/yargs/build/lib/utils/levenshtein.js +34 -0
  1668. package/node_modules/yargs/build/lib/utils/maybe-async-result.js +17 -0
  1669. package/node_modules/yargs/build/lib/utils/obj-filter.js +10 -0
  1670. package/node_modules/yargs/build/lib/utils/process-argv.js +17 -0
  1671. package/node_modules/yargs/build/lib/utils/set-blocking.js +12 -0
  1672. package/node_modules/yargs/build/lib/utils/which-module.js +10 -0
  1673. package/node_modules/yargs/build/lib/validation.js +305 -0
  1674. package/node_modules/yargs/build/lib/yargs-factory.js +1512 -0
  1675. package/node_modules/yargs/build/lib/yerror.js +9 -0
  1676. package/node_modules/yargs/helpers/helpers.mjs +10 -0
  1677. package/node_modules/yargs/helpers/index.js +14 -0
  1678. package/node_modules/yargs/helpers/package.json +3 -0
  1679. package/node_modules/yargs/index.cjs +53 -0
  1680. package/node_modules/yargs/index.mjs +8 -0
  1681. package/node_modules/yargs/lib/platform-shims/browser.mjs +95 -0
  1682. package/node_modules/yargs/lib/platform-shims/esm.mjs +73 -0
  1683. package/node_modules/yargs/locales/be.json +46 -0
  1684. package/node_modules/yargs/locales/cs.json +51 -0
  1685. package/node_modules/yargs/locales/de.json +46 -0
  1686. package/node_modules/yargs/locales/en.json +55 -0
  1687. package/node_modules/yargs/locales/es.json +46 -0
  1688. package/node_modules/yargs/locales/fi.json +49 -0
  1689. package/node_modules/yargs/locales/fr.json +53 -0
  1690. package/node_modules/yargs/locales/hi.json +49 -0
  1691. package/node_modules/yargs/locales/hu.json +46 -0
  1692. package/node_modules/yargs/locales/id.json +50 -0
  1693. package/node_modules/yargs/locales/it.json +46 -0
  1694. package/node_modules/yargs/locales/ja.json +51 -0
  1695. package/node_modules/yargs/locales/ko.json +49 -0
  1696. package/node_modules/yargs/locales/nb.json +44 -0
  1697. package/node_modules/yargs/locales/nl.json +49 -0
  1698. package/node_modules/yargs/locales/nn.json +44 -0
  1699. package/node_modules/yargs/locales/pirate.json +13 -0
  1700. package/node_modules/yargs/locales/pl.json +49 -0
  1701. package/node_modules/yargs/locales/pt.json +45 -0
  1702. package/node_modules/yargs/locales/pt_BR.json +48 -0
  1703. package/node_modules/yargs/locales/ru.json +51 -0
  1704. package/node_modules/yargs/locales/th.json +46 -0
  1705. package/node_modules/yargs/locales/tr.json +48 -0
  1706. package/node_modules/yargs/locales/uk_UA.json +51 -0
  1707. package/node_modules/yargs/locales/uz.json +52 -0
  1708. package/node_modules/yargs/locales/zh_CN.json +48 -0
  1709. package/node_modules/yargs/locales/zh_TW.json +51 -0
  1710. package/node_modules/yargs/package.json +123 -0
  1711. package/node_modules/yargs/yargs +9 -0
  1712. package/node_modules/yargs/yargs.mjs +10 -0
  1713. package/node_modules/yargs-parser/CHANGELOG.md +308 -0
  1714. package/node_modules/yargs-parser/LICENSE.txt +14 -0
  1715. package/node_modules/yargs-parser/README.md +518 -0
  1716. package/node_modules/yargs-parser/browser.js +29 -0
  1717. package/node_modules/yargs-parser/build/index.cjs +1050 -0
  1718. package/node_modules/yargs-parser/build/lib/index.js +62 -0
  1719. package/node_modules/yargs-parser/build/lib/string-utils.js +65 -0
  1720. package/node_modules/yargs-parser/build/lib/tokenize-arg-string.js +40 -0
  1721. package/node_modules/yargs-parser/build/lib/yargs-parser-types.js +12 -0
  1722. package/node_modules/yargs-parser/build/lib/yargs-parser.js +1045 -0
  1723. package/node_modules/yargs-parser/package.json +92 -0
  1724. package/package.json +7 -6
  1725. package/routes/capabilities.js +1 -1
  1726. package/skills/ima2/SKILL.md +199 -30
  1727. package/ui/dist/.vite/manifest.json +12 -12
  1728. package/ui/dist/assets/{AgentWorkspace-CKjpho46.js → AgentWorkspace-DAg_7zpY.js} +1 -1
  1729. package/ui/dist/assets/{CardNewsWorkspace-BW52bztP.js → CardNewsWorkspace-Cdxn1ohU.js} +1 -1
  1730. package/ui/dist/assets/{GenerationRequestLogPanel-BPc4gDcY.js → GenerationRequestLogPanel-C_qvEUi2.js} +1 -1
  1731. package/ui/dist/assets/{NodeCanvas-d7dH6h99.js → NodeCanvas-C67sLboA.js} +1 -1
  1732. package/ui/dist/assets/{PromptBuilderPanel-CWbdfzpF.js → PromptBuilderPanel-DjvVdAie.js} +1 -1
  1733. package/ui/dist/assets/{PromptImportDialog-DORdifOt.js → PromptImportDialog-DeQXsEEv.js} +2 -2
  1734. package/ui/dist/assets/{PromptImportDiscoverySection-XA3ZzwAo.js → PromptImportDiscoverySection-CrwyUKYI.js} +1 -1
  1735. package/ui/dist/assets/{PromptImportFolderSection-BjALahD0.js → PromptImportFolderSection-CToGMqYE.js} +1 -1
  1736. package/ui/dist/assets/{PromptLibraryPanel-Co9xIawD.js → PromptLibraryPanel-Db3xEPM_.js} +2 -2
  1737. package/ui/dist/assets/{SettingsWorkspace-BS_gSTTl.js → SettingsWorkspace-BDk_1W-V.js} +1 -1
  1738. package/ui/dist/assets/{index-TRRNueAb.js → index-CoxMOXAU.js} +10 -10
  1739. package/ui/dist/assets/{index-bMxZBOnc.js → index-p8egnGHk.js} +1 -1
  1740. package/ui/dist/index.html +1 -1
  1741. package/vendor/openai-oauth-1.0.2-ima2.1.tgz +0 -0
@@ -0,0 +1,2807 @@
1
+ import {
2
+ getErrorMessage,
3
+ LanguageModelV3,
4
+ LanguageModelV3ToolChoice,
5
+ SharedV3Warning,
6
+ UnsupportedFunctionalityError,
7
+ } from '@ai-sdk/provider';
8
+ import {
9
+ createIdGenerator,
10
+ DelayedPromise,
11
+ IdGenerator,
12
+ isAbortError,
13
+ ModelMessage,
14
+ ProviderOptions,
15
+ SystemModelMessage,
16
+ ToolApprovalResponse,
17
+ ToolContent,
18
+ } from '@ai-sdk/provider-utils';
19
+ import { Span } from '@opentelemetry/api';
20
+ import { ServerResponse } from 'node:http';
21
+ import { NoOutputGeneratedError } from '../error';
22
+ import { Listener, notify } from '../util/notify';
23
+ import { logWarnings } from '../logger/log-warnings';
24
+ import { resolveLanguageModel } from '../model/resolve-model';
25
+ import {
26
+ CallSettings,
27
+ getChunkTimeoutMs,
28
+ getStepTimeoutMs,
29
+ getTotalTimeoutMs,
30
+ TimeoutConfiguration,
31
+ } from '../prompt/call-settings';
32
+ import { convertToLanguageModelPrompt } from '../prompt/convert-to-language-model-prompt';
33
+ import { createToolModelOutput } from '../prompt/create-tool-model-output';
34
+ import { prepareCallSettings } from '../prompt/prepare-call-settings';
35
+ import { prepareToolsAndToolChoice } from '../prompt/prepare-tools-and-tool-choice';
36
+ import { Prompt } from '../prompt/prompt';
37
+ import { standardizePrompt } from '../prompt/standardize-prompt';
38
+ import { wrapGatewayError } from '../prompt/wrap-gateway-error';
39
+ import { assembleOperationName } from '../telemetry/assemble-operation-name';
40
+ import { getBaseTelemetryAttributes } from '../telemetry/get-base-telemetry-attributes';
41
+ import { getTracer } from '../telemetry/get-tracer';
42
+ import { recordSpan } from '../telemetry/record-span';
43
+ import { selectTelemetryAttributes } from '../telemetry/select-telemetry-attributes';
44
+ import { stringifyForTelemetry } from '../telemetry/stringify-for-telemetry';
45
+ import { getGlobalTelemetryIntegration } from '../telemetry/get-global-telemetry-integration';
46
+ import { TelemetrySettings } from '../telemetry/telemetry-settings';
47
+ import { createTextStreamResponse } from '../text-stream/create-text-stream-response';
48
+ import { pipeTextStreamToResponse } from '../text-stream/pipe-text-stream-to-response';
49
+ import { LanguageModelRequestMetadata } from '../types';
50
+ import {
51
+ CallWarning,
52
+ FinishReason,
53
+ LanguageModel,
54
+ ToolChoice,
55
+ } from '../types/language-model';
56
+ import { ProviderMetadata } from '../types/provider-metadata';
57
+ import {
58
+ addLanguageModelUsage,
59
+ createNullLanguageModelUsage,
60
+ LanguageModelUsage,
61
+ } from '../types/usage';
62
+ import { UIMessage } from '../ui';
63
+ import { createUIMessageStreamResponse } from '../ui-message-stream/create-ui-message-stream-response';
64
+ import { getResponseUIMessageId } from '../ui-message-stream/get-response-ui-message-id';
65
+ import { handleUIMessageStreamFinish } from '../ui-message-stream/handle-ui-message-stream-finish';
66
+ import { pipeUIMessageStreamToResponse } from '../ui-message-stream/pipe-ui-message-stream-to-response';
67
+ import {
68
+ InferUIMessageChunk,
69
+ UIMessageChunk,
70
+ } from '../ui-message-stream/ui-message-chunks';
71
+ import { UIMessageStreamResponseInit } from '../ui-message-stream/ui-message-stream-response-init';
72
+ import { InferUIMessageData, InferUIMessageMetadata } from '../ui/ui-messages';
73
+ import { asArray } from '../util/as-array';
74
+ import {
75
+ AsyncIterableStream,
76
+ createAsyncIterableStream,
77
+ } from '../util/async-iterable-stream';
78
+ import { consumeStream } from '../util/consume-stream';
79
+ import { createStitchableStream } from '../util/create-stitchable-stream';
80
+ import { DownloadFunction } from '../util/download/download-function';
81
+ import { mergeAbortSignals } from '../util/merge-abort-signals';
82
+ import { mergeObjects } from '../util/merge-objects';
83
+ import { now as originalNow } from '../util/now';
84
+ import { prepareRetries } from '../util/prepare-retries';
85
+ import { collectToolApprovals } from './collect-tool-approvals';
86
+ import type {
87
+ OnFinishEvent,
88
+ OnStartEvent,
89
+ OnStepFinishEvent,
90
+ OnStepStartEvent,
91
+ OnToolCallFinishEvent,
92
+ OnToolCallStartEvent,
93
+ } from './callback-events';
94
+ import { ContentPart } from './content-part';
95
+ import { executeToolCall } from './execute-tool-call';
96
+ import { Output, text } from './output';
97
+ import {
98
+ InferCompleteOutput,
99
+ InferElementOutput,
100
+ InferPartialOutput,
101
+ } from './output-utils';
102
+ import { PrepareStepFunction } from './prepare-step';
103
+ import { ResponseMessage } from './response-message';
104
+ import {
105
+ runToolsTransformation,
106
+ SingleRequestTextStreamPart,
107
+ } from './run-tools-transformation';
108
+ import { DefaultStepResult, StepResult } from './step-result';
109
+ import {
110
+ isStopConditionMet,
111
+ stepCountIs,
112
+ StopCondition,
113
+ } from './stop-condition';
114
+ import {
115
+ ConsumeStreamOptions,
116
+ StreamTextResult,
117
+ TextStreamPart,
118
+ UIMessageStreamOptions,
119
+ } from './stream-text-result';
120
+ import { toResponseMessages } from './to-response-messages';
121
+ import { TypedToolCall } from './tool-call';
122
+ import { ToolCallRepairFunction } from './tool-call-repair-function';
123
+ import { ToolOutput } from './tool-output';
124
+ import { StaticToolOutputDenied } from './tool-output-denied';
125
+ import { ToolSet } from './tool-set';
126
+
127
+ const originalGenerateId = createIdGenerator({
128
+ prefix: 'aitxt',
129
+ size: 24,
130
+ });
131
+
132
+ /**
133
+ * A transformation that is applied to the stream.
134
+ *
135
+ * @param stopStream - A function that stops the source stream.
136
+ * @param tools - The tools that are accessible to and can be called by the model. The model needs to support calling tools.
137
+ */
138
+ export type StreamTextTransform<TOOLS extends ToolSet> = (options: {
139
+ tools: TOOLS; // for type inference
140
+ stopStream: () => void;
141
+ }) => TransformStream<TextStreamPart<TOOLS>, TextStreamPart<TOOLS>>;
142
+
143
+ /**
144
+ * Callback that is set using the `onError` option.
145
+ *
146
+ * @param event - The event that is passed to the callback.
147
+ */
148
+ export type StreamTextOnErrorCallback = (event: {
149
+ error: unknown;
150
+ }) => PromiseLike<void> | void;
151
+
152
+ /**
153
+ * Callback that is set using the `onStepFinish` option.
154
+ *
155
+ * @param stepResult - The result of the step.
156
+ */
157
+ export type StreamTextOnStepFinishCallback<TOOLS extends ToolSet> = (
158
+ event: OnStepFinishEvent<TOOLS>,
159
+ ) => PromiseLike<void> | void;
160
+
161
+ /**
162
+ * Callback that is set using the `onChunk` option.
163
+ *
164
+ * @param event - The event that is passed to the callback.
165
+ */
166
+ export type StreamTextOnChunkCallback<TOOLS extends ToolSet> = (event: {
167
+ chunk: Extract<
168
+ TextStreamPart<TOOLS>,
169
+ {
170
+ type:
171
+ | 'text-delta'
172
+ | 'reasoning-delta'
173
+ | 'source'
174
+ | 'tool-call'
175
+ | 'tool-input-start'
176
+ | 'tool-input-delta'
177
+ | 'tool-result'
178
+ | 'raw';
179
+ }
180
+ >;
181
+ }) => PromiseLike<void> | void;
182
+
183
+ /**
184
+ * Callback that is set using the `onFinish` option.
185
+ *
186
+ * @param event - The event that is passed to the callback.
187
+ */
188
+ export type StreamTextOnFinishCallback<TOOLS extends ToolSet> = (
189
+ event: OnFinishEvent<TOOLS>,
190
+ ) => PromiseLike<void> | void;
191
+
192
+ /**
193
+ * Callback that is set using the `onAbort` option.
194
+ *
195
+ * @param event - The event that is passed to the callback.
196
+ */
197
+ export type StreamTextOnAbortCallback<TOOLS extends ToolSet> = (event: {
198
+ /**
199
+ * Details for all previously finished steps.
200
+ */
201
+ readonly steps: StepResult<TOOLS>[];
202
+ }) => PromiseLike<void> | void;
203
+
204
+ /**
205
+ * Include settings for streamText (requestBody only).
206
+ */
207
+ type StreamTextIncludeSettings = { requestBody?: boolean };
208
+
209
+ /**
210
+ * Callback that is set using the `experimental_onStart` option.
211
+ *
212
+ * Called when the streamText operation begins, before any LLM calls.
213
+ * Use this callback for logging, analytics, or initializing state at the
214
+ * start of a generation.
215
+ *
216
+ * @param event - The event object containing generation configuration.
217
+ */
218
+ export type StreamTextOnStartCallback<
219
+ TOOLS extends ToolSet = ToolSet,
220
+ OUTPUT extends Output = Output,
221
+ > = (
222
+ event: OnStartEvent<TOOLS, OUTPUT, StreamTextIncludeSettings>,
223
+ ) => PromiseLike<void> | void;
224
+
225
+ /**
226
+ * Callback that is set using the `experimental_onStepStart` option.
227
+ *
228
+ * Called when a step (LLM call) begins, before the provider is called.
229
+ * Each step represents a single LLM invocation. Multiple steps occur when
230
+ * using tool calls (the model may be called multiple times in a loop).
231
+ *
232
+ * @param event - The event object containing step configuration.
233
+ */
234
+ export type StreamTextOnStepStartCallback<
235
+ TOOLS extends ToolSet = ToolSet,
236
+ OUTPUT extends Output = Output,
237
+ > = (
238
+ event: OnStepStartEvent<TOOLS, OUTPUT, StreamTextIncludeSettings>,
239
+ ) => PromiseLike<void> | void;
240
+
241
+ export type StreamTextOnToolCallStartCallback<TOOLS extends ToolSet = ToolSet> =
242
+ (event: OnToolCallStartEvent<TOOLS>) => PromiseLike<void> | void;
243
+
244
+ export type StreamTextOnToolCallFinishCallback<
245
+ TOOLS extends ToolSet = ToolSet,
246
+ > = (event: OnToolCallFinishEvent<TOOLS>) => PromiseLike<void> | void;
247
+
248
+ /**
249
+ * Generate a text and call tools for a given prompt using a language model.
250
+ *
251
+ * This function streams the output. If you do not want to stream the output, use `generateText` instead.
252
+ *
253
+ * @param model - The language model to use.
254
+ * @param tools - Tools that are accessible to and can be called by the model. The model needs to support calling tools.
255
+ *
256
+ * @param system - A system message that will be part of the prompt.
257
+ * @param prompt - A simple text prompt. You can either use `prompt` or `messages` but not both.
258
+ * @param messages - A list of messages. You can either use `prompt` or `messages` but not both.
259
+ *
260
+ * @param maxOutputTokens - Maximum number of tokens to generate.
261
+ * @param temperature - Temperature setting.
262
+ * The value is passed through to the provider. The range depends on the provider and model.
263
+ * It is recommended to set either `temperature` or `topP`, but not both.
264
+ * @param topP - Nucleus sampling.
265
+ * The value is passed through to the provider. The range depends on the provider and model.
266
+ * It is recommended to set either `temperature` or `topP`, but not both.
267
+ * @param topK - Only sample from the top K options for each subsequent token.
268
+ * Used to remove "long tail" low probability responses.
269
+ * Recommended for advanced use cases only. You usually only need to use temperature.
270
+ * @param presencePenalty - Presence penalty setting.
271
+ * It affects the likelihood of the model to repeat information that is already in the prompt.
272
+ * The value is passed through to the provider. The range depends on the provider and model.
273
+ * @param frequencyPenalty - Frequency penalty setting.
274
+ * It affects the likelihood of the model to repeatedly use the same words or phrases.
275
+ * The value is passed through to the provider. The range depends on the provider and model.
276
+ * @param stopSequences - Stop sequences.
277
+ * If set, the model will stop generating text when one of the stop sequences is generated.
278
+ * @param seed - The seed (integer) to use for random sampling.
279
+ * If set and supported by the model, calls will generate deterministic results.
280
+ *
281
+ * @param maxRetries - Maximum number of retries. Set to 0 to disable retries. Default: 2.
282
+ * @param abortSignal - An optional abort signal that can be used to cancel the call.
283
+ * @param timeout - An optional timeout in milliseconds. The call will be aborted if it takes longer than the specified timeout.
284
+ * @param headers - Additional HTTP headers to be sent with the request. Only applicable for HTTP-based providers.
285
+ *
286
+ * @param onChunk - Callback that is called for each chunk of the stream. The stream processing will pause until the callback promise is resolved.
287
+ * @param onError - Callback that is called when an error occurs during streaming. You can use it to log errors.
288
+ * @param onStepFinish - Callback that is called when each step (LLM call) is finished, including intermediate steps.
289
+ * @param onFinish - Callback that is called when all steps are finished and the response is complete.
290
+ *
291
+ * @returns
292
+ * A result object for accessing different stream types and additional information.
293
+ */
294
+ export function streamText<
295
+ TOOLS extends ToolSet,
296
+ OUTPUT extends Output = Output<string, string, never>,
297
+ >({
298
+ model,
299
+ tools,
300
+ toolChoice,
301
+ system,
302
+ prompt,
303
+ messages,
304
+ maxRetries,
305
+ abortSignal,
306
+ timeout,
307
+ headers,
308
+ stopWhen = stepCountIs(1),
309
+ experimental_output,
310
+ output = experimental_output,
311
+ experimental_telemetry: telemetry,
312
+ prepareStep,
313
+ providerOptions,
314
+ experimental_activeTools,
315
+ activeTools = experimental_activeTools,
316
+ experimental_repairToolCall: repairToolCall,
317
+ experimental_transform: transform,
318
+ experimental_download: download,
319
+ includeRawChunks = false,
320
+ onChunk,
321
+ onError = ({ error }) => {
322
+ console.error(error);
323
+ },
324
+ onFinish,
325
+ onAbort,
326
+ onStepFinish,
327
+ experimental_onStart: onStart,
328
+ experimental_onStepStart: onStepStart,
329
+ experimental_onToolCallStart: onToolCallStart,
330
+ experimental_onToolCallFinish: onToolCallFinish,
331
+ experimental_context,
332
+ experimental_include: include,
333
+ _internal: { now = originalNow, generateId = originalGenerateId } = {},
334
+ ...settings
335
+ }: CallSettings &
336
+ Prompt & {
337
+ /**
338
+ * The language model to use.
339
+ */
340
+ model: LanguageModel;
341
+
342
+ /**
343
+ * The tools that the model can call. The model needs to support calling tools.
344
+ */
345
+ tools?: TOOLS;
346
+
347
+ /**
348
+ * The tool choice strategy. Default: 'auto'.
349
+ */
350
+ toolChoice?: ToolChoice<TOOLS>;
351
+
352
+ /**
353
+ * Condition for stopping the generation when there are tool results in the last step.
354
+ * When the condition is an array, any of the conditions can be met to stop the generation.
355
+ *
356
+ * @default stepCountIs(1)
357
+ */
358
+ stopWhen?:
359
+ | StopCondition<NoInfer<TOOLS>>
360
+ | Array<StopCondition<NoInfer<TOOLS>>>;
361
+
362
+ /**
363
+ * Optional telemetry configuration (experimental).
364
+ */
365
+ experimental_telemetry?: TelemetrySettings;
366
+
367
+ /**
368
+ * Additional provider-specific options. They are passed through
369
+ * to the provider from the AI SDK and enable provider-specific
370
+ * functionality that can be fully encapsulated in the provider.
371
+ */
372
+ providerOptions?: ProviderOptions;
373
+
374
+ /**
375
+ * @deprecated Use `activeTools` instead.
376
+ */
377
+ experimental_activeTools?: Array<keyof NoInfer<TOOLS>>;
378
+
379
+ /**
380
+ * Limits the tools that are available for the model to call without
381
+ * changing the tool call and result types in the result.
382
+ */
383
+ activeTools?: Array<keyof NoInfer<TOOLS>>;
384
+
385
+ /**
386
+ * Optional specification for parsing structured outputs from the LLM response.
387
+ */
388
+ output?: OUTPUT;
389
+
390
+ /**
391
+ * Optional specification for parsing structured outputs from the LLM response.
392
+ *
393
+ * @deprecated Use `output` instead.
394
+ */
395
+ experimental_output?: OUTPUT;
396
+
397
+ /**
398
+ * Optional function that you can use to provide different settings for a step.
399
+ *
400
+ * @param options - The options for the step.
401
+ * @param options.steps - The steps that have been executed so far.
402
+ * @param options.stepNumber - The number of the step that is being executed.
403
+ * @param options.model - The model that is being used.
404
+ *
405
+ * @returns An object that contains the settings for the step.
406
+ * If you return undefined (or for undefined settings), the settings from the outer level will be used.
407
+ */
408
+ prepareStep?: PrepareStepFunction<NoInfer<TOOLS>>;
409
+
410
+ /**
411
+ * A function that attempts to repair a tool call that failed to parse.
412
+ */
413
+ experimental_repairToolCall?: ToolCallRepairFunction<TOOLS>;
414
+
415
+ /**
416
+ * Optional stream transformations.
417
+ * They are applied in the order they are provided.
418
+ * The stream transformations must maintain the stream structure for streamText to work correctly.
419
+ */
420
+ experimental_transform?:
421
+ | StreamTextTransform<TOOLS>
422
+ | Array<StreamTextTransform<TOOLS>>;
423
+
424
+ /**
425
+ * Custom download function to use for URLs.
426
+ *
427
+ * By default, files are downloaded if the model does not support the URL for the given media type.
428
+ */
429
+ experimental_download?: DownloadFunction | undefined;
430
+
431
+ /**
432
+ * Whether to include raw chunks from the provider in the stream.
433
+ * When enabled, you will receive raw chunks with type 'raw' that contain the unprocessed data from the provider.
434
+ * This allows access to cutting-edge provider features not yet wrapped by the AI SDK.
435
+ * Defaults to false.
436
+ */
437
+ includeRawChunks?: boolean;
438
+
439
+ /**
440
+ * Callback that is called for each chunk of the stream.
441
+ * The stream processing will pause until the callback promise is resolved.
442
+ */
443
+ onChunk?: StreamTextOnChunkCallback<TOOLS>;
444
+
445
+ /**
446
+ * Callback that is invoked when an error occurs during streaming.
447
+ * You can use it to log errors.
448
+ * The stream processing will pause until the callback promise is resolved.
449
+ */
450
+ onError?: StreamTextOnErrorCallback;
451
+
452
+ /**
453
+ * Callback that is called when the LLM response and all request tool executions
454
+ * (for tools that have an `execute` function) are finished.
455
+ *
456
+ * The usage is the combined usage of all steps.
457
+ */
458
+ onFinish?: StreamTextOnFinishCallback<TOOLS>;
459
+
460
+ onAbort?: StreamTextOnAbortCallback<TOOLS>;
461
+
462
+ /**
463
+ * Callback that is called when each step (LLM call) is finished, including intermediate steps.
464
+ */
465
+ onStepFinish?: StreamTextOnStepFinishCallback<TOOLS>;
466
+
467
+ /**
468
+ * Callback that is called when the streamText operation begins,
469
+ * before any LLM calls are made.
470
+ */
471
+ experimental_onStart?: StreamTextOnStartCallback<NoInfer<TOOLS>, OUTPUT>;
472
+
473
+ /**
474
+ * Callback that is called when a step (LLM call) begins,
475
+ * before the provider is called.
476
+ */
477
+ experimental_onStepStart?: StreamTextOnStepStartCallback<
478
+ NoInfer<TOOLS>,
479
+ OUTPUT
480
+ >;
481
+
482
+ /**
483
+ * Callback that is called right before a tool's execute function runs.
484
+ */
485
+ experimental_onToolCallStart?: StreamTextOnToolCallStartCallback<
486
+ NoInfer<TOOLS>
487
+ >;
488
+
489
+ /**
490
+ * Callback that is called right after a tool's execute function completes (or errors).
491
+ */
492
+ experimental_onToolCallFinish?: StreamTextOnToolCallFinishCallback<
493
+ NoInfer<TOOLS>
494
+ >;
495
+
496
+ /**
497
+ * Context that is passed into tool execution.
498
+ *
499
+ * Experimental (can break in patch releases).
500
+ *
501
+ * @default undefined
502
+ */
503
+ experimental_context?: unknown;
504
+
505
+ /**
506
+ * Settings for controlling what data is included in step results.
507
+ * Disabling inclusion can help reduce memory usage when processing
508
+ * large payloads like images.
509
+ *
510
+ * By default, all data is included for backwards compatibility.
511
+ */
512
+ experimental_include?: {
513
+ /**
514
+ * Whether to retain the request body in step results.
515
+ * The request body can be large when sending images or files.
516
+ * @default true
517
+ */
518
+ requestBody?: boolean;
519
+ };
520
+
521
+ /**
522
+ * Internal. For test use only. May change without notice.
523
+ */
524
+ _internal?: {
525
+ now?: () => number;
526
+ generateId?: IdGenerator;
527
+ };
528
+ }): StreamTextResult<TOOLS, OUTPUT> {
529
+ const totalTimeoutMs = getTotalTimeoutMs(timeout);
530
+ const stepTimeoutMs = getStepTimeoutMs(timeout);
531
+ const chunkTimeoutMs = getChunkTimeoutMs(timeout);
532
+ const stepAbortController =
533
+ stepTimeoutMs != null ? new AbortController() : undefined;
534
+ const chunkAbortController =
535
+ chunkTimeoutMs != null ? new AbortController() : undefined;
536
+ return new DefaultStreamTextResult<TOOLS, OUTPUT>({
537
+ model: resolveLanguageModel(model),
538
+ telemetry,
539
+ headers,
540
+ settings,
541
+ maxRetries,
542
+ abortSignal: mergeAbortSignals(
543
+ abortSignal,
544
+ totalTimeoutMs != null ? AbortSignal.timeout(totalTimeoutMs) : undefined,
545
+ stepAbortController?.signal,
546
+ chunkAbortController?.signal,
547
+ ),
548
+ stepTimeoutMs,
549
+ stepAbortController,
550
+ chunkTimeoutMs,
551
+ chunkAbortController,
552
+ system,
553
+ prompt,
554
+ messages,
555
+ tools,
556
+ toolChoice,
557
+ transforms: asArray(transform),
558
+ activeTools,
559
+ repairToolCall,
560
+ stopConditions: asArray(stopWhen),
561
+ output,
562
+ providerOptions,
563
+ prepareStep,
564
+ includeRawChunks,
565
+ timeout,
566
+ stopWhen,
567
+ originalAbortSignal: abortSignal,
568
+ onChunk,
569
+ onError,
570
+ onFinish,
571
+ onAbort,
572
+ onStepFinish,
573
+ onStart,
574
+ onStepStart,
575
+ onToolCallStart,
576
+ onToolCallFinish,
577
+ now,
578
+ generateId,
579
+ experimental_context,
580
+ download,
581
+ include,
582
+ });
583
+ }
584
+
585
+ export type EnrichedStreamPart<TOOLS extends ToolSet, PARTIAL_OUTPUT> = {
586
+ part: TextStreamPart<TOOLS>;
587
+ partialOutput: PARTIAL_OUTPUT | undefined;
588
+ };
589
+
590
+ function createOutputTransformStream<
591
+ TOOLS extends ToolSet,
592
+ OUTPUT extends Output,
593
+ >(
594
+ output: OUTPUT,
595
+ ): TransformStream<
596
+ TextStreamPart<TOOLS>,
597
+ EnrichedStreamPart<TOOLS, InferPartialOutput<OUTPUT>>
598
+ > {
599
+ let firstTextChunkId: string | undefined = undefined;
600
+ let text = '';
601
+ let textChunk = '';
602
+ let textProviderMetadata: ProviderMetadata | undefined = undefined;
603
+ let lastPublishedJson = '';
604
+
605
+ function publishTextChunk({
606
+ controller,
607
+ partialOutput = undefined,
608
+ }: {
609
+ controller: TransformStreamDefaultController<
610
+ EnrichedStreamPart<TOOLS, InferPartialOutput<OUTPUT>>
611
+ >;
612
+ partialOutput?: InferPartialOutput<OUTPUT>;
613
+ }) {
614
+ controller.enqueue({
615
+ part: {
616
+ type: 'text-delta',
617
+ id: firstTextChunkId!,
618
+ text: textChunk,
619
+ providerMetadata: textProviderMetadata,
620
+ },
621
+ partialOutput,
622
+ });
623
+ textChunk = '';
624
+ }
625
+
626
+ return new TransformStream<
627
+ TextStreamPart<TOOLS>,
628
+ EnrichedStreamPart<TOOLS, InferPartialOutput<OUTPUT>>
629
+ >({
630
+ async transform(chunk, controller) {
631
+ // ensure that we publish the last text chunk before the step finish:
632
+ if (chunk.type === 'finish-step' && textChunk.length > 0) {
633
+ publishTextChunk({ controller });
634
+ }
635
+
636
+ if (
637
+ chunk.type !== 'text-delta' &&
638
+ chunk.type !== 'text-start' &&
639
+ chunk.type !== 'text-end'
640
+ ) {
641
+ controller.enqueue({ part: chunk, partialOutput: undefined });
642
+ return;
643
+ }
644
+
645
+ // we have to pick a text chunk which contains the json text
646
+ // since we are streaming, we have to pick the first text chunk
647
+ if (firstTextChunkId == null) {
648
+ firstTextChunkId = chunk.id;
649
+ } else if (chunk.id !== firstTextChunkId) {
650
+ controller.enqueue({ part: chunk, partialOutput: undefined });
651
+ return;
652
+ }
653
+
654
+ if (chunk.type === 'text-start') {
655
+ controller.enqueue({ part: chunk, partialOutput: undefined });
656
+ return;
657
+ }
658
+
659
+ if (chunk.type === 'text-end') {
660
+ if (textChunk.length > 0) {
661
+ publishTextChunk({ controller });
662
+ }
663
+ controller.enqueue({ part: chunk, partialOutput: undefined });
664
+ return;
665
+ }
666
+
667
+ text += chunk.text;
668
+ textChunk += chunk.text;
669
+ textProviderMetadata = chunk.providerMetadata ?? textProviderMetadata;
670
+
671
+ // only publish if partial json can be parsed:
672
+ const result = await output.parsePartialOutput({ text });
673
+
674
+ // null should be allowed (valid JSON value) but undefined should not:
675
+ if (result !== undefined) {
676
+ // only send new json if it has changed:
677
+ const currentJson = JSON.stringify(result.partial);
678
+ if (currentJson !== lastPublishedJson) {
679
+ publishTextChunk({ controller, partialOutput: result.partial });
680
+ lastPublishedJson = currentJson;
681
+ }
682
+ }
683
+ },
684
+ });
685
+ }
686
+
687
+ class DefaultStreamTextResult<TOOLS extends ToolSet, OUTPUT extends Output>
688
+ implements StreamTextResult<TOOLS, OUTPUT>
689
+ {
690
+ private readonly _totalUsage = new DelayedPromise<
691
+ Awaited<StreamTextResult<TOOLS, OUTPUT>['usage']>
692
+ >();
693
+ private readonly _finishReason = new DelayedPromise<
694
+ Awaited<StreamTextResult<TOOLS, OUTPUT>['finishReason']>
695
+ >();
696
+ private readonly _rawFinishReason = new DelayedPromise<
697
+ Awaited<StreamTextResult<TOOLS, OUTPUT>['rawFinishReason']>
698
+ >();
699
+ private readonly _steps = new DelayedPromise<
700
+ Awaited<StreamTextResult<TOOLS, OUTPUT>['steps']>
701
+ >();
702
+
703
+ private readonly addStream: (
704
+ stream: ReadableStream<TextStreamPart<TOOLS>>,
705
+ ) => void;
706
+
707
+ private readonly closeStream: () => void;
708
+
709
+ private baseStream: ReadableStream<
710
+ EnrichedStreamPart<TOOLS, InferPartialOutput<OUTPUT>>
711
+ >;
712
+
713
+ private outputSpecification: OUTPUT | undefined;
714
+
715
+ private includeRawChunks: boolean;
716
+
717
+ private tools: TOOLS | undefined;
718
+
719
+ constructor({
720
+ model,
721
+ telemetry,
722
+ headers,
723
+ settings,
724
+ maxRetries: maxRetriesArg,
725
+ abortSignal,
726
+ stepTimeoutMs,
727
+ stepAbortController,
728
+ chunkTimeoutMs,
729
+ chunkAbortController,
730
+ system,
731
+ prompt,
732
+ messages,
733
+ tools,
734
+ toolChoice,
735
+ transforms,
736
+ activeTools,
737
+ repairToolCall,
738
+ stopConditions,
739
+ output,
740
+ providerOptions,
741
+ prepareStep,
742
+ includeRawChunks,
743
+ now,
744
+ generateId,
745
+ timeout,
746
+ stopWhen,
747
+ originalAbortSignal,
748
+ onChunk,
749
+ onError,
750
+ onFinish,
751
+ onAbort,
752
+ onStepFinish,
753
+ onStart,
754
+ onStepStart,
755
+ onToolCallStart,
756
+ onToolCallFinish,
757
+ experimental_context,
758
+ download,
759
+ include,
760
+ }: {
761
+ model: LanguageModelV3;
762
+ telemetry: TelemetrySettings | undefined;
763
+ headers: Record<string, string | undefined> | undefined;
764
+ settings: Omit<CallSettings, 'abortSignal' | 'headers'>;
765
+ maxRetries: number | undefined;
766
+ abortSignal: AbortSignal | undefined;
767
+ stepTimeoutMs: number | undefined;
768
+ stepAbortController: AbortController | undefined;
769
+ chunkTimeoutMs: number | undefined;
770
+ chunkAbortController: AbortController | undefined;
771
+ system: Prompt['system'];
772
+ prompt: Prompt['prompt'];
773
+ messages: Prompt['messages'];
774
+ tools: TOOLS | undefined;
775
+ toolChoice: ToolChoice<TOOLS> | undefined;
776
+ transforms: Array<StreamTextTransform<TOOLS>>;
777
+ activeTools: Array<keyof TOOLS> | undefined;
778
+ repairToolCall: ToolCallRepairFunction<TOOLS> | undefined;
779
+ stopConditions: Array<StopCondition<NoInfer<TOOLS>>>;
780
+ output: OUTPUT | undefined;
781
+ providerOptions: ProviderOptions | undefined;
782
+ prepareStep: PrepareStepFunction<NoInfer<TOOLS>> | undefined;
783
+ includeRawChunks: boolean;
784
+ now: () => number;
785
+ generateId: () => string;
786
+ timeout: TimeoutConfiguration | undefined;
787
+ stopWhen:
788
+ | StopCondition<NoInfer<TOOLS>>
789
+ | Array<StopCondition<NoInfer<TOOLS>>>
790
+ | undefined;
791
+ originalAbortSignal: AbortSignal | undefined;
792
+ experimental_context: unknown;
793
+ download: DownloadFunction | undefined;
794
+ include: { requestBody?: boolean } | undefined;
795
+
796
+ // callbacks:
797
+ onChunk: undefined | StreamTextOnChunkCallback<TOOLS>;
798
+ onError: StreamTextOnErrorCallback;
799
+ onFinish: undefined | StreamTextOnFinishCallback<TOOLS>;
800
+ onAbort: undefined | StreamTextOnAbortCallback<TOOLS>;
801
+ onStepFinish: undefined | StreamTextOnStepFinishCallback<TOOLS>;
802
+ onStart: undefined | StreamTextOnStartCallback<TOOLS, OUTPUT>;
803
+ onStepStart: undefined | StreamTextOnStepStartCallback<TOOLS, OUTPUT>;
804
+ onToolCallStart: undefined | StreamTextOnToolCallStartCallback<TOOLS>;
805
+ onToolCallFinish: undefined | StreamTextOnToolCallFinishCallback<TOOLS>;
806
+ }) {
807
+ this.outputSpecification = output;
808
+ this.includeRawChunks = includeRawChunks;
809
+ this.tools = tools;
810
+
811
+ const createGlobalTelemetry = getGlobalTelemetryIntegration<
812
+ TOOLS,
813
+ OUTPUT
814
+ >();
815
+ const globalTelemetry = createGlobalTelemetry(telemetry?.integrations);
816
+
817
+ // promise to ensure that the step has been fully processed by the event processor
818
+ // before a new step is started. This is required because the continuation condition
819
+ // needs the updated steps to determine if another step is needed.
820
+ let stepFinish!: DelayedPromise<void>;
821
+
822
+ let recordedContent: Array<ContentPart<TOOLS>> = [];
823
+ const recordedResponseMessages: Array<ResponseMessage> = [];
824
+ let recordedFinishReason: FinishReason | undefined = undefined;
825
+ let recordedRawFinishReason: string | undefined = undefined;
826
+ let recordedTotalUsage: LanguageModelUsage | undefined = undefined;
827
+ let recordedRequest: LanguageModelRequestMetadata = {};
828
+ let recordedWarnings: Array<CallWarning> = [];
829
+ const recordedSteps: StepResult<TOOLS>[] = [];
830
+
831
+ // Track provider-executed tool calls that support deferred results
832
+ // (e.g., code_execution in programmatic tool calling scenarios).
833
+ // These tools may not return their results in the same turn as their call.
834
+ const pendingDeferredToolCalls = new Map<string, { toolName: string }>();
835
+
836
+ let rootSpan!: Span;
837
+
838
+ let activeTextContent: Record<
839
+ string,
840
+ {
841
+ type: 'text';
842
+ text: string;
843
+ providerMetadata: ProviderMetadata | undefined;
844
+ }
845
+ > = {};
846
+
847
+ let activeReasoningContent: Record<
848
+ string,
849
+ {
850
+ type: 'reasoning';
851
+ text: string;
852
+ providerMetadata: ProviderMetadata | undefined;
853
+ }
854
+ > = {};
855
+
856
+ const eventProcessor = new TransformStream<
857
+ EnrichedStreamPart<TOOLS, InferPartialOutput<OUTPUT>>,
858
+ EnrichedStreamPart<TOOLS, InferPartialOutput<OUTPUT>>
859
+ >({
860
+ async transform(chunk, controller) {
861
+ controller.enqueue(chunk); // forward the chunk to the next stream
862
+
863
+ const { part } = chunk;
864
+
865
+ if (
866
+ part.type === 'text-delta' ||
867
+ part.type === 'reasoning-delta' ||
868
+ part.type === 'source' ||
869
+ part.type === 'tool-call' ||
870
+ part.type === 'tool-result' ||
871
+ part.type === 'tool-input-start' ||
872
+ part.type === 'tool-input-delta' ||
873
+ part.type === 'raw'
874
+ ) {
875
+ await onChunk?.({ chunk: part });
876
+ }
877
+
878
+ if (part.type === 'error') {
879
+ await onError({ error: wrapGatewayError(part.error) });
880
+ }
881
+
882
+ if (part.type === 'text-start') {
883
+ activeTextContent[part.id] = {
884
+ type: 'text',
885
+ text: '',
886
+ providerMetadata: part.providerMetadata,
887
+ };
888
+
889
+ recordedContent.push(activeTextContent[part.id]);
890
+ }
891
+
892
+ if (part.type === 'text-delta') {
893
+ const activeText = activeTextContent[part.id];
894
+
895
+ if (activeText == null) {
896
+ controller.enqueue({
897
+ part: {
898
+ type: 'error',
899
+ error: `text part ${part.id} not found`,
900
+ },
901
+ partialOutput: undefined,
902
+ });
903
+ return;
904
+ }
905
+
906
+ activeText.text += part.text;
907
+ activeText.providerMetadata =
908
+ part.providerMetadata ?? activeText.providerMetadata;
909
+ }
910
+
911
+ if (part.type === 'text-end') {
912
+ const activeText = activeTextContent[part.id];
913
+
914
+ if (activeText == null) {
915
+ controller.enqueue({
916
+ part: {
917
+ type: 'error',
918
+ error: `text part ${part.id} not found`,
919
+ },
920
+ partialOutput: undefined,
921
+ });
922
+ return;
923
+ }
924
+
925
+ activeText.providerMetadata =
926
+ part.providerMetadata ?? activeText.providerMetadata;
927
+
928
+ delete activeTextContent[part.id];
929
+ }
930
+
931
+ if (part.type === 'reasoning-start') {
932
+ activeReasoningContent[part.id] = {
933
+ type: 'reasoning',
934
+ text: '',
935
+ providerMetadata: part.providerMetadata,
936
+ };
937
+
938
+ recordedContent.push(activeReasoningContent[part.id]);
939
+ }
940
+
941
+ if (part.type === 'reasoning-delta') {
942
+ const activeReasoning = activeReasoningContent[part.id];
943
+
944
+ if (activeReasoning == null) {
945
+ controller.enqueue({
946
+ part: {
947
+ type: 'error',
948
+ error: `reasoning part ${part.id} not found`,
949
+ },
950
+ partialOutput: undefined,
951
+ });
952
+ return;
953
+ }
954
+
955
+ activeReasoning.text += part.text;
956
+ activeReasoning.providerMetadata =
957
+ part.providerMetadata ?? activeReasoning.providerMetadata;
958
+ }
959
+
960
+ if (part.type === 'reasoning-end') {
961
+ const activeReasoning = activeReasoningContent[part.id];
962
+
963
+ if (activeReasoning == null) {
964
+ controller.enqueue({
965
+ part: {
966
+ type: 'error',
967
+ error: `reasoning part ${part.id} not found`,
968
+ },
969
+ partialOutput: undefined,
970
+ });
971
+ return;
972
+ }
973
+
974
+ activeReasoning.providerMetadata =
975
+ part.providerMetadata ?? activeReasoning.providerMetadata;
976
+
977
+ delete activeReasoningContent[part.id];
978
+ }
979
+
980
+ if (part.type === 'file') {
981
+ recordedContent.push({
982
+ type: 'file',
983
+ file: part.file,
984
+ ...(part.providerMetadata != null
985
+ ? { providerMetadata: part.providerMetadata }
986
+ : {}),
987
+ });
988
+ }
989
+
990
+ if (part.type === 'source') {
991
+ recordedContent.push(part);
992
+ }
993
+
994
+ if (part.type === 'tool-call') {
995
+ recordedContent.push(part);
996
+ }
997
+
998
+ if (part.type === 'tool-result' && !part.preliminary) {
999
+ recordedContent.push(part);
1000
+ }
1001
+
1002
+ if (part.type === 'tool-approval-request') {
1003
+ recordedContent.push(part);
1004
+ }
1005
+
1006
+ if (part.type === 'tool-error') {
1007
+ recordedContent.push(part);
1008
+ }
1009
+
1010
+ if (part.type === 'start-step') {
1011
+ // reset the recorded data when a new step starts:
1012
+ recordedContent = [];
1013
+ activeReasoningContent = {};
1014
+ activeTextContent = {};
1015
+
1016
+ recordedRequest = part.request;
1017
+ recordedWarnings = part.warnings;
1018
+ }
1019
+
1020
+ if (part.type === 'finish-step') {
1021
+ const stepMessages = await toResponseMessages({
1022
+ content: recordedContent,
1023
+ tools,
1024
+ });
1025
+
1026
+ // Add step information (after response messages are updated):
1027
+ const currentStepResult: StepResult<TOOLS> = new DefaultStepResult({
1028
+ stepNumber: recordedSteps.length,
1029
+ model: modelInfo,
1030
+ ...callbackTelemetryProps,
1031
+ experimental_context,
1032
+ content: recordedContent,
1033
+ finishReason: part.finishReason,
1034
+ rawFinishReason: part.rawFinishReason,
1035
+ usage: part.usage,
1036
+ warnings: recordedWarnings,
1037
+ request: recordedRequest,
1038
+ response: {
1039
+ ...part.response,
1040
+ messages: [...recordedResponseMessages, ...stepMessages],
1041
+ },
1042
+ providerMetadata: part.providerMetadata,
1043
+ });
1044
+
1045
+ await notify({
1046
+ event: currentStepResult,
1047
+ callbacks: [onStepFinish, globalTelemetry.onStepFinish],
1048
+ });
1049
+
1050
+ logWarnings({
1051
+ warnings: recordedWarnings,
1052
+ provider: modelInfo.provider,
1053
+ model: modelInfo.modelId,
1054
+ });
1055
+
1056
+ recordedSteps.push(currentStepResult);
1057
+
1058
+ recordedResponseMessages.push(...stepMessages);
1059
+
1060
+ // resolve the promise to signal that the step has been fully processed
1061
+ // by the event processor:
1062
+ stepFinish.resolve();
1063
+ }
1064
+
1065
+ if (part.type === 'finish') {
1066
+ recordedTotalUsage = part.totalUsage;
1067
+ recordedFinishReason = part.finishReason;
1068
+ recordedRawFinishReason = part.rawFinishReason;
1069
+ }
1070
+ },
1071
+
1072
+ async flush(controller) {
1073
+ try {
1074
+ if (recordedSteps.length === 0) {
1075
+ const error = abortSignal?.aborted
1076
+ ? abortSignal.reason
1077
+ : new NoOutputGeneratedError({
1078
+ message: 'No output generated. Check the stream for errors.',
1079
+ });
1080
+
1081
+ self._finishReason.reject(error);
1082
+ self._rawFinishReason.reject(error);
1083
+ self._totalUsage.reject(error);
1084
+ self._steps.reject(error);
1085
+
1086
+ return; // no steps recorded (e.g. in error scenario)
1087
+ }
1088
+
1089
+ // derived:
1090
+ const finishReason = recordedFinishReason ?? 'other';
1091
+ const totalUsage =
1092
+ recordedTotalUsage ?? createNullLanguageModelUsage();
1093
+
1094
+ // from finish:
1095
+ self._finishReason.resolve(finishReason);
1096
+ self._rawFinishReason.resolve(recordedRawFinishReason);
1097
+ self._totalUsage.resolve(totalUsage);
1098
+
1099
+ // aggregate results:
1100
+ self._steps.resolve(recordedSteps);
1101
+
1102
+ // call onFinish callback:
1103
+ const finalStep = recordedSteps[recordedSteps.length - 1];
1104
+
1105
+ await notify({
1106
+ event: {
1107
+ stepNumber: finalStep.stepNumber,
1108
+ model: finalStep.model,
1109
+ functionId: finalStep.functionId,
1110
+ metadata: finalStep.metadata,
1111
+ experimental_context: finalStep.experimental_context,
1112
+ finishReason: finalStep.finishReason,
1113
+ rawFinishReason: finalStep.rawFinishReason,
1114
+ totalUsage,
1115
+ usage: finalStep.usage,
1116
+ content: finalStep.content,
1117
+ text: finalStep.text,
1118
+ reasoningText: finalStep.reasoningText,
1119
+ reasoning: finalStep.reasoning,
1120
+ files: finalStep.files,
1121
+ sources: finalStep.sources,
1122
+ toolCalls: finalStep.toolCalls,
1123
+ staticToolCalls: finalStep.staticToolCalls,
1124
+ dynamicToolCalls: finalStep.dynamicToolCalls,
1125
+ toolResults: finalStep.toolResults,
1126
+ staticToolResults: finalStep.staticToolResults,
1127
+ dynamicToolResults: finalStep.dynamicToolResults,
1128
+ request: finalStep.request,
1129
+ response: finalStep.response,
1130
+ warnings: finalStep.warnings,
1131
+ providerMetadata: finalStep.providerMetadata,
1132
+ steps: recordedSteps,
1133
+ },
1134
+ callbacks: [
1135
+ onFinish,
1136
+ globalTelemetry.onFinish as
1137
+ | undefined
1138
+ | StreamTextOnFinishCallback<TOOLS>,
1139
+ ],
1140
+ });
1141
+
1142
+ // Add response information to the root span:
1143
+ rootSpan.setAttributes(
1144
+ await selectTelemetryAttributes({
1145
+ telemetry,
1146
+ attributes: {
1147
+ 'ai.response.finishReason': finishReason,
1148
+ 'ai.response.text': { output: () => finalStep.text },
1149
+ 'ai.response.reasoning': {
1150
+ output: () => finalStep.reasoningText,
1151
+ },
1152
+ 'ai.response.toolCalls': {
1153
+ output: () =>
1154
+ finalStep.toolCalls?.length
1155
+ ? JSON.stringify(finalStep.toolCalls)
1156
+ : undefined,
1157
+ },
1158
+ 'ai.response.providerMetadata': JSON.stringify(
1159
+ finalStep.providerMetadata,
1160
+ ),
1161
+
1162
+ 'ai.usage.inputTokens': totalUsage.inputTokens,
1163
+ 'ai.usage.outputTokens': totalUsage.outputTokens,
1164
+ 'ai.usage.totalTokens': totalUsage.totalTokens,
1165
+ 'ai.usage.reasoningTokens': totalUsage.reasoningTokens,
1166
+ 'ai.usage.cachedInputTokens': totalUsage.cachedInputTokens,
1167
+ },
1168
+ }),
1169
+ );
1170
+ } catch (error) {
1171
+ controller.error(error);
1172
+ } finally {
1173
+ rootSpan.end();
1174
+ }
1175
+ },
1176
+ });
1177
+
1178
+ // initialize the stitchable stream and the transformed stream:
1179
+ const stitchableStream = createStitchableStream<TextStreamPart<TOOLS>>();
1180
+ this.addStream = stitchableStream.addStream;
1181
+ this.closeStream = stitchableStream.close;
1182
+
1183
+ // resilient stream that handles abort signals and errors:
1184
+ const reader = stitchableStream.stream.getReader();
1185
+ let stream = new ReadableStream<TextStreamPart<TOOLS>>({
1186
+ async start(controller) {
1187
+ // send start event:
1188
+ controller.enqueue({ type: 'start' });
1189
+ },
1190
+
1191
+ async pull(controller) {
1192
+ // abort handling:
1193
+ function abort() {
1194
+ onAbort?.({ steps: recordedSteps });
1195
+ controller.enqueue({
1196
+ type: 'abort',
1197
+ // The `reason` is usually of type DOMException, but it can also be of any type,
1198
+ // so we use getErrorMessage for serialization because it is already designed to accept values of the unknown type.
1199
+ // See: https://developer.mozilla.org/en-US/docs/Web/API/AbortSignal/reason
1200
+ ...(abortSignal?.reason !== undefined
1201
+ ? { reason: getErrorMessage(abortSignal.reason) }
1202
+ : {}),
1203
+ });
1204
+ controller.close();
1205
+ }
1206
+
1207
+ try {
1208
+ const { done, value } = await reader.read();
1209
+
1210
+ if (done) {
1211
+ controller.close();
1212
+ return;
1213
+ }
1214
+
1215
+ if (abortSignal?.aborted) {
1216
+ abort();
1217
+ return;
1218
+ }
1219
+
1220
+ controller.enqueue(value);
1221
+ } catch (error) {
1222
+ if (isAbortError(error) && abortSignal?.aborted) {
1223
+ abort();
1224
+ } else {
1225
+ controller.error(error);
1226
+ }
1227
+ }
1228
+ },
1229
+
1230
+ cancel(reason) {
1231
+ return stitchableStream.stream.cancel(reason);
1232
+ },
1233
+ });
1234
+
1235
+ // transform the stream before output parsing
1236
+ // to enable replacement of stream segments:
1237
+ for (const transform of transforms) {
1238
+ stream = stream.pipeThrough(
1239
+ transform({
1240
+ tools: tools as TOOLS,
1241
+ stopStream() {
1242
+ stitchableStream.terminate();
1243
+ },
1244
+ }),
1245
+ );
1246
+ }
1247
+
1248
+ this.baseStream = stream
1249
+ .pipeThrough(createOutputTransformStream(output ?? text()))
1250
+ .pipeThrough(eventProcessor);
1251
+
1252
+ const { maxRetries, retry } = prepareRetries({
1253
+ maxRetries: maxRetriesArg,
1254
+ abortSignal,
1255
+ });
1256
+
1257
+ const tracer = getTracer(telemetry);
1258
+
1259
+ const callSettings = prepareCallSettings(settings);
1260
+
1261
+ const baseTelemetryAttributes = getBaseTelemetryAttributes({
1262
+ model,
1263
+ telemetry,
1264
+ headers,
1265
+ settings: { ...callSettings, maxRetries },
1266
+ });
1267
+
1268
+ const self = this;
1269
+
1270
+ const modelInfo = { provider: model.provider, modelId: model.modelId };
1271
+ const callbackTelemetryProps = {
1272
+ functionId: telemetry?.functionId,
1273
+ metadata: telemetry?.metadata as Record<string, unknown> | undefined,
1274
+ };
1275
+
1276
+ recordSpan({
1277
+ name: 'ai.streamText',
1278
+ attributes: selectTelemetryAttributes({
1279
+ telemetry,
1280
+ attributes: {
1281
+ ...assembleOperationName({ operationId: 'ai.streamText', telemetry }),
1282
+ ...baseTelemetryAttributes,
1283
+ // specific settings that only make sense on the outer level:
1284
+ 'ai.prompt': {
1285
+ input: () => JSON.stringify({ system, prompt, messages }),
1286
+ },
1287
+ },
1288
+ }),
1289
+ tracer,
1290
+ endWhenDone: false,
1291
+ fn: async rootSpanArg => {
1292
+ rootSpan = rootSpanArg;
1293
+
1294
+ const initialPrompt = await standardizePrompt({
1295
+ system,
1296
+ prompt,
1297
+ messages,
1298
+ } as Prompt);
1299
+
1300
+ await notify({
1301
+ event: {
1302
+ model: modelInfo,
1303
+ system,
1304
+ prompt,
1305
+ messages,
1306
+ tools,
1307
+ toolChoice,
1308
+ activeTools,
1309
+ maxOutputTokens: callSettings.maxOutputTokens,
1310
+ temperature: callSettings.temperature,
1311
+ topP: callSettings.topP,
1312
+ topK: callSettings.topK,
1313
+ presencePenalty: callSettings.presencePenalty,
1314
+ frequencyPenalty: callSettings.frequencyPenalty,
1315
+ stopSequences: callSettings.stopSequences,
1316
+ seed: callSettings.seed,
1317
+ maxRetries,
1318
+ timeout,
1319
+ headers,
1320
+ providerOptions,
1321
+ stopWhen,
1322
+ output,
1323
+ abortSignal: originalAbortSignal,
1324
+ include,
1325
+ ...callbackTelemetryProps,
1326
+ experimental_context,
1327
+ },
1328
+ callbacks: [
1329
+ onStart,
1330
+ globalTelemetry.onStart as
1331
+ | undefined
1332
+ | StreamTextOnStartCallback<TOOLS, OUTPUT>,
1333
+ ],
1334
+ });
1335
+
1336
+ const initialMessages = initialPrompt.messages;
1337
+ const initialResponseMessages: Array<ResponseMessage> = [];
1338
+
1339
+ const { approvedToolApprovals, deniedToolApprovals } =
1340
+ collectToolApprovals<TOOLS>({ messages: initialMessages });
1341
+
1342
+ // initial tool execution step stream
1343
+ if (
1344
+ deniedToolApprovals.length > 0 ||
1345
+ approvedToolApprovals.length > 0
1346
+ ) {
1347
+ const providerExecutedToolApprovals = [
1348
+ ...approvedToolApprovals,
1349
+ ...deniedToolApprovals,
1350
+ ].filter(toolApproval => toolApproval.toolCall.providerExecuted);
1351
+
1352
+ const localApprovedToolApprovals = approvedToolApprovals.filter(
1353
+ toolApproval => !toolApproval.toolCall.providerExecuted,
1354
+ );
1355
+ const localDeniedToolApprovals = deniedToolApprovals.filter(
1356
+ toolApproval => !toolApproval.toolCall.providerExecuted,
1357
+ );
1358
+
1359
+ const deniedProviderExecutedToolApprovals =
1360
+ deniedToolApprovals.filter(
1361
+ toolApproval => toolApproval.toolCall.providerExecuted,
1362
+ );
1363
+
1364
+ let toolExecutionStepStreamController:
1365
+ | ReadableStreamDefaultController<TextStreamPart<TOOLS>>
1366
+ | undefined;
1367
+ const toolExecutionStepStream = new ReadableStream<
1368
+ TextStreamPart<TOOLS>
1369
+ >({
1370
+ start(controller) {
1371
+ toolExecutionStepStreamController = controller;
1372
+ },
1373
+ });
1374
+
1375
+ self.addStream(toolExecutionStepStream);
1376
+
1377
+ try {
1378
+ for (const toolApproval of [
1379
+ ...localDeniedToolApprovals,
1380
+ ...deniedProviderExecutedToolApprovals,
1381
+ ]) {
1382
+ toolExecutionStepStreamController?.enqueue({
1383
+ type: 'tool-output-denied',
1384
+ toolCallId: toolApproval.toolCall.toolCallId,
1385
+ toolName: toolApproval.toolCall.toolName,
1386
+ } as StaticToolOutputDenied<TOOLS>);
1387
+ }
1388
+
1389
+ const toolOutputs: Array<ToolOutput<TOOLS>> = [];
1390
+
1391
+ await Promise.all(
1392
+ localApprovedToolApprovals.map(async toolApproval => {
1393
+ const result = await executeToolCall({
1394
+ toolCall: toolApproval.toolCall,
1395
+ tools,
1396
+ tracer,
1397
+ telemetry,
1398
+ messages: initialMessages,
1399
+ abortSignal,
1400
+ experimental_context,
1401
+ stepNumber: recordedSteps.length,
1402
+ model: modelInfo,
1403
+ onToolCallStart: [
1404
+ onToolCallStart,
1405
+ globalTelemetry.onToolCallStart as
1406
+ | undefined
1407
+ | StreamTextOnToolCallStartCallback<TOOLS>,
1408
+ ],
1409
+ onToolCallFinish: [
1410
+ onToolCallFinish,
1411
+ globalTelemetry.onToolCallFinish,
1412
+ ],
1413
+ onPreliminaryToolResult: result => {
1414
+ toolExecutionStepStreamController?.enqueue(result);
1415
+ },
1416
+ });
1417
+
1418
+ if (result != null) {
1419
+ toolExecutionStepStreamController?.enqueue(result);
1420
+ toolOutputs.push(result);
1421
+ }
1422
+ }),
1423
+ );
1424
+
1425
+ // forward provider-executed approval responses to the provider (do not execute locally):
1426
+ if (providerExecutedToolApprovals.length > 0) {
1427
+ initialResponseMessages.push({
1428
+ role: 'tool',
1429
+ content: providerExecutedToolApprovals.map(
1430
+ toolApproval =>
1431
+ ({
1432
+ type: 'tool-approval-response',
1433
+ approvalId: toolApproval.approvalResponse.approvalId,
1434
+ approved: toolApproval.approvalResponse.approved,
1435
+ reason: toolApproval.approvalResponse.reason,
1436
+ providerExecuted: true,
1437
+ }) satisfies ToolApprovalResponse,
1438
+ ),
1439
+ });
1440
+ }
1441
+
1442
+ // Local tool results (approved + denied) are sent as tool results:
1443
+ if (toolOutputs.length > 0 || localDeniedToolApprovals.length > 0) {
1444
+ const localToolContent: ToolContent = [];
1445
+
1446
+ // add regular tool results for approved tool calls:
1447
+ for (const output of toolOutputs) {
1448
+ localToolContent.push({
1449
+ type: 'tool-result' as const,
1450
+ toolCallId: output.toolCallId,
1451
+ toolName: output.toolName,
1452
+ output: await createToolModelOutput({
1453
+ toolCallId: output.toolCallId,
1454
+ input: output.input,
1455
+ tool: tools?.[output.toolName],
1456
+ output:
1457
+ output.type === 'tool-result'
1458
+ ? output.output
1459
+ : output.error,
1460
+ errorMode: output.type === 'tool-error' ? 'text' : 'none',
1461
+ }),
1462
+ });
1463
+ }
1464
+
1465
+ // add execution denied tool results for denied local tool approvals:
1466
+ for (const toolApproval of localDeniedToolApprovals) {
1467
+ localToolContent.push({
1468
+ type: 'tool-result' as const,
1469
+ toolCallId: toolApproval.toolCall.toolCallId,
1470
+ toolName: toolApproval.toolCall.toolName,
1471
+ output: {
1472
+ type: 'execution-denied' as const,
1473
+ reason: toolApproval.approvalResponse.reason,
1474
+ },
1475
+ });
1476
+ }
1477
+
1478
+ initialResponseMessages.push({
1479
+ role: 'tool',
1480
+ content: localToolContent,
1481
+ });
1482
+ }
1483
+ } finally {
1484
+ toolExecutionStepStreamController?.close();
1485
+ }
1486
+ }
1487
+
1488
+ recordedResponseMessages.push(...initialResponseMessages);
1489
+
1490
+ async function streamStep({
1491
+ currentStep,
1492
+ responseMessages,
1493
+ usage,
1494
+ }: {
1495
+ currentStep: number;
1496
+ responseMessages: Array<ResponseMessage>;
1497
+ usage: LanguageModelUsage;
1498
+ }) {
1499
+ const includeRawChunks = self.includeRawChunks;
1500
+
1501
+ // Set up step timeout if configured
1502
+ const stepTimeoutId =
1503
+ stepTimeoutMs != null
1504
+ ? setTimeout(() => stepAbortController!.abort(), stepTimeoutMs)
1505
+ : undefined;
1506
+
1507
+ // Set up chunk timeout tracking (will be reset on each chunk)
1508
+ let chunkTimeoutId: ReturnType<typeof setTimeout> | undefined =
1509
+ undefined;
1510
+
1511
+ function resetChunkTimeout() {
1512
+ if (chunkTimeoutMs != null) {
1513
+ if (chunkTimeoutId != null) {
1514
+ clearTimeout(chunkTimeoutId);
1515
+ }
1516
+ chunkTimeoutId = setTimeout(
1517
+ () => chunkAbortController!.abort(),
1518
+ chunkTimeoutMs,
1519
+ );
1520
+ }
1521
+ }
1522
+
1523
+ function clearChunkTimeout() {
1524
+ if (chunkTimeoutId != null) {
1525
+ clearTimeout(chunkTimeoutId);
1526
+ chunkTimeoutId = undefined;
1527
+ }
1528
+ }
1529
+
1530
+ function clearStepTimeout() {
1531
+ if (stepTimeoutId != null) {
1532
+ clearTimeout(stepTimeoutId);
1533
+ }
1534
+ }
1535
+
1536
+ try {
1537
+ stepFinish = new DelayedPromise<void>();
1538
+
1539
+ const stepInputMessages = [...initialMessages, ...responseMessages];
1540
+
1541
+ const prepareStepResult = await prepareStep?.({
1542
+ model,
1543
+ steps: recordedSteps,
1544
+ stepNumber: recordedSteps.length,
1545
+ messages: stepInputMessages,
1546
+ experimental_context,
1547
+ });
1548
+
1549
+ const stepModel = resolveLanguageModel(
1550
+ prepareStepResult?.model ?? model,
1551
+ );
1552
+ const stepModelInfo = {
1553
+ provider: stepModel.provider,
1554
+ modelId: stepModel.modelId,
1555
+ };
1556
+
1557
+ const promptMessages = await convertToLanguageModelPrompt({
1558
+ prompt: {
1559
+ system: prepareStepResult?.system ?? initialPrompt.system,
1560
+ messages: prepareStepResult?.messages ?? stepInputMessages,
1561
+ },
1562
+ supportedUrls: await stepModel.supportedUrls,
1563
+ download,
1564
+ });
1565
+
1566
+ const stepActiveTools =
1567
+ prepareStepResult?.activeTools ?? activeTools;
1568
+
1569
+ const { toolChoice: stepToolChoice, tools: stepTools } =
1570
+ await prepareToolsAndToolChoice({
1571
+ tools,
1572
+ toolChoice: prepareStepResult?.toolChoice ?? toolChoice,
1573
+ activeTools: stepActiveTools,
1574
+ });
1575
+
1576
+ experimental_context =
1577
+ prepareStepResult?.experimental_context ?? experimental_context;
1578
+
1579
+ const stepMessages =
1580
+ prepareStepResult?.messages ?? stepInputMessages;
1581
+
1582
+ const stepSystem =
1583
+ prepareStepResult?.system ?? initialPrompt.system;
1584
+
1585
+ const stepProviderOptions = mergeObjects(
1586
+ providerOptions,
1587
+ prepareStepResult?.providerOptions,
1588
+ );
1589
+
1590
+ await notify({
1591
+ event: {
1592
+ stepNumber: recordedSteps.length,
1593
+ model: stepModelInfo,
1594
+ system: stepSystem,
1595
+ messages: stepMessages,
1596
+ tools,
1597
+ toolChoice: stepToolChoice,
1598
+ activeTools: stepActiveTools,
1599
+ steps: [...recordedSteps],
1600
+ providerOptions: stepProviderOptions,
1601
+ timeout,
1602
+ headers,
1603
+ stopWhen,
1604
+ output,
1605
+ abortSignal: originalAbortSignal,
1606
+ include,
1607
+ ...callbackTelemetryProps,
1608
+ experimental_context,
1609
+ },
1610
+ callbacks: [
1611
+ onStepStart,
1612
+ globalTelemetry.onStepStart as
1613
+ | undefined
1614
+ | StreamTextOnStepStartCallback<TOOLS, OUTPUT>,
1615
+ ],
1616
+ });
1617
+
1618
+ const {
1619
+ result: { stream, response, request },
1620
+ doStreamSpan,
1621
+ startTimestampMs,
1622
+ } = await retry(() =>
1623
+ recordSpan({
1624
+ name: 'ai.streamText.doStream',
1625
+ attributes: selectTelemetryAttributes({
1626
+ telemetry,
1627
+ attributes: {
1628
+ ...assembleOperationName({
1629
+ operationId: 'ai.streamText.doStream',
1630
+ telemetry,
1631
+ }),
1632
+ ...baseTelemetryAttributes,
1633
+ // model:
1634
+ 'ai.model.provider': stepModel.provider,
1635
+ 'ai.model.id': stepModel.modelId,
1636
+ // prompt:
1637
+ 'ai.prompt.messages': {
1638
+ input: () => stringifyForTelemetry(promptMessages),
1639
+ },
1640
+ 'ai.prompt.tools': {
1641
+ // convert the language model level tools:
1642
+ input: () => stepTools?.map(tool => JSON.stringify(tool)),
1643
+ },
1644
+ 'ai.prompt.toolChoice': {
1645
+ input: () =>
1646
+ stepToolChoice != null
1647
+ ? JSON.stringify(stepToolChoice)
1648
+ : undefined,
1649
+ },
1650
+
1651
+ // standardized gen-ai llm span attributes:
1652
+ 'gen_ai.system': stepModel.provider,
1653
+ 'gen_ai.request.model': stepModel.modelId,
1654
+ 'gen_ai.request.frequency_penalty':
1655
+ callSettings.frequencyPenalty,
1656
+ 'gen_ai.request.max_tokens': callSettings.maxOutputTokens,
1657
+ 'gen_ai.request.presence_penalty':
1658
+ callSettings.presencePenalty,
1659
+ 'gen_ai.request.stop_sequences': callSettings.stopSequences,
1660
+ 'gen_ai.request.temperature': callSettings.temperature,
1661
+ 'gen_ai.request.top_k': callSettings.topK,
1662
+ 'gen_ai.request.top_p': callSettings.topP,
1663
+ },
1664
+ }),
1665
+ tracer,
1666
+ endWhenDone: false,
1667
+ fn: async doStreamSpan => ({
1668
+ startTimestampMs: now(), // get before the call
1669
+ doStreamSpan,
1670
+ result: await stepModel.doStream({
1671
+ ...callSettings,
1672
+ tools: stepTools,
1673
+ toolChoice: stepToolChoice,
1674
+ responseFormat: await output?.responseFormat,
1675
+ prompt: promptMessages,
1676
+ providerOptions: stepProviderOptions,
1677
+ abortSignal,
1678
+ headers,
1679
+ includeRawChunks,
1680
+ }),
1681
+ }),
1682
+ }),
1683
+ );
1684
+
1685
+ const streamWithToolResults = runToolsTransformation({
1686
+ tools,
1687
+ generatorStream: stream,
1688
+ tracer,
1689
+ telemetry,
1690
+ system,
1691
+ messages: stepInputMessages,
1692
+ repairToolCall,
1693
+ abortSignal,
1694
+ experimental_context,
1695
+ generateId,
1696
+ stepNumber: recordedSteps.length,
1697
+ model: stepModelInfo,
1698
+ onToolCallStart: [
1699
+ onToolCallStart,
1700
+ globalTelemetry.onToolCallStart as
1701
+ | undefined
1702
+ | StreamTextOnToolCallStartCallback<TOOLS>,
1703
+ ],
1704
+ onToolCallFinish: [
1705
+ onToolCallFinish,
1706
+ globalTelemetry.onToolCallFinish,
1707
+ ],
1708
+ });
1709
+
1710
+ // Conditionally include request.body based on include settings.
1711
+ // Large payloads (e.g., base64-encoded images) can cause memory issues.
1712
+ const stepRequest: LanguageModelRequestMetadata =
1713
+ (include?.requestBody ?? true)
1714
+ ? (request ?? {})
1715
+ : { ...request, body: undefined };
1716
+ const stepToolCalls: TypedToolCall<TOOLS>[] = [];
1717
+ const stepToolOutputs: ToolOutput<TOOLS>[] = [];
1718
+ let warnings: SharedV3Warning[] | undefined;
1719
+
1720
+ const activeToolCallToolNames: Record<string, string> = {};
1721
+
1722
+ let stepFinishReason: FinishReason = 'other';
1723
+ let stepRawFinishReason: string | undefined = undefined;
1724
+
1725
+ let stepUsage: LanguageModelUsage = createNullLanguageModelUsage();
1726
+ let stepProviderMetadata: ProviderMetadata | undefined;
1727
+ let stepFirstChunk = true;
1728
+ let stepResponse: { id: string; timestamp: Date; modelId: string } =
1729
+ {
1730
+ id: generateId(),
1731
+ timestamp: new Date(),
1732
+ modelId: modelInfo.modelId,
1733
+ };
1734
+
1735
+ // raw text as it comes from the provider. recorded for telemetry.
1736
+ let activeText = '';
1737
+
1738
+ self.addStream(
1739
+ streamWithToolResults.pipeThrough(
1740
+ new TransformStream<
1741
+ SingleRequestTextStreamPart<TOOLS>,
1742
+ TextStreamPart<TOOLS>
1743
+ >({
1744
+ async transform(chunk, controller): Promise<void> {
1745
+ resetChunkTimeout();
1746
+
1747
+ if (chunk.type === 'stream-start') {
1748
+ warnings = chunk.warnings;
1749
+ return; // stream start chunks are sent immediately and do not count as first chunk
1750
+ }
1751
+
1752
+ if (stepFirstChunk) {
1753
+ // Telemetry for first chunk:
1754
+ const msToFirstChunk = now() - startTimestampMs;
1755
+
1756
+ stepFirstChunk = false;
1757
+
1758
+ doStreamSpan.addEvent('ai.stream.firstChunk', {
1759
+ 'ai.response.msToFirstChunk': msToFirstChunk,
1760
+ });
1761
+
1762
+ doStreamSpan.setAttributes({
1763
+ 'ai.response.msToFirstChunk': msToFirstChunk,
1764
+ });
1765
+
1766
+ // Step start:
1767
+ controller.enqueue({
1768
+ type: 'start-step',
1769
+ request: stepRequest,
1770
+ warnings: warnings ?? [],
1771
+ });
1772
+ }
1773
+
1774
+ const chunkType = chunk.type;
1775
+ switch (chunkType) {
1776
+ case 'tool-approval-request':
1777
+ case 'text-start':
1778
+ case 'text-end': {
1779
+ controller.enqueue(chunk);
1780
+ break;
1781
+ }
1782
+
1783
+ case 'text-delta': {
1784
+ if (chunk.delta.length > 0) {
1785
+ controller.enqueue({
1786
+ type: 'text-delta',
1787
+ id: chunk.id,
1788
+ text: chunk.delta,
1789
+ providerMetadata: chunk.providerMetadata,
1790
+ });
1791
+ activeText += chunk.delta;
1792
+ }
1793
+ break;
1794
+ }
1795
+
1796
+ case 'reasoning-start':
1797
+ case 'reasoning-end': {
1798
+ controller.enqueue(chunk);
1799
+ break;
1800
+ }
1801
+
1802
+ case 'reasoning-delta': {
1803
+ controller.enqueue({
1804
+ type: 'reasoning-delta',
1805
+ id: chunk.id,
1806
+ text: chunk.delta,
1807
+ providerMetadata: chunk.providerMetadata,
1808
+ });
1809
+ break;
1810
+ }
1811
+
1812
+ case 'tool-call': {
1813
+ controller.enqueue(chunk);
1814
+ // store tool calls for onFinish callback and toolCalls promise:
1815
+ stepToolCalls.push(chunk);
1816
+ break;
1817
+ }
1818
+
1819
+ case 'tool-result': {
1820
+ controller.enqueue(chunk);
1821
+
1822
+ if (!chunk.preliminary) {
1823
+ stepToolOutputs.push(chunk);
1824
+ }
1825
+
1826
+ break;
1827
+ }
1828
+
1829
+ case 'tool-error': {
1830
+ controller.enqueue(chunk);
1831
+ stepToolOutputs.push(chunk);
1832
+ break;
1833
+ }
1834
+
1835
+ case 'response-metadata': {
1836
+ stepResponse = {
1837
+ id: chunk.id ?? stepResponse.id,
1838
+ timestamp: chunk.timestamp ?? stepResponse.timestamp,
1839
+ modelId: chunk.modelId ?? stepResponse.modelId,
1840
+ };
1841
+ break;
1842
+ }
1843
+
1844
+ case 'finish': {
1845
+ // Note: tool executions might not be finished yet when the finish event is emitted.
1846
+ // store usage and finish reason for promises and onFinish callback:
1847
+ stepUsage = chunk.usage;
1848
+ stepFinishReason = chunk.finishReason;
1849
+ stepRawFinishReason = chunk.rawFinishReason;
1850
+ stepProviderMetadata = chunk.providerMetadata;
1851
+
1852
+ // Telemetry for finish event timing
1853
+ // (since tool executions can take longer and distort calculations)
1854
+ const msToFinish = now() - startTimestampMs;
1855
+ doStreamSpan.addEvent('ai.stream.finish');
1856
+ doStreamSpan.setAttributes({
1857
+ 'ai.response.msToFinish': msToFinish,
1858
+ 'ai.response.avgOutputTokensPerSecond':
1859
+ (1000 * (stepUsage.outputTokens ?? 0)) / msToFinish,
1860
+ });
1861
+
1862
+ break;
1863
+ }
1864
+
1865
+ case 'file': {
1866
+ controller.enqueue(chunk);
1867
+ break;
1868
+ }
1869
+
1870
+ case 'source': {
1871
+ controller.enqueue(chunk);
1872
+ break;
1873
+ }
1874
+
1875
+ case 'tool-input-start': {
1876
+ activeToolCallToolNames[chunk.id] = chunk.toolName;
1877
+
1878
+ const tool = tools?.[chunk.toolName];
1879
+ if (tool?.onInputStart != null) {
1880
+ await tool.onInputStart({
1881
+ toolCallId: chunk.id,
1882
+ messages: stepInputMessages,
1883
+ abortSignal,
1884
+ experimental_context,
1885
+ });
1886
+ }
1887
+
1888
+ controller.enqueue({
1889
+ ...chunk,
1890
+ dynamic: chunk.dynamic ?? tool?.type === 'dynamic',
1891
+ title: tool?.title,
1892
+ });
1893
+ break;
1894
+ }
1895
+
1896
+ case 'tool-input-end': {
1897
+ delete activeToolCallToolNames[chunk.id];
1898
+ controller.enqueue(chunk);
1899
+ break;
1900
+ }
1901
+
1902
+ case 'tool-input-delta': {
1903
+ const toolName = activeToolCallToolNames[chunk.id];
1904
+ const tool = tools?.[toolName];
1905
+
1906
+ if (tool?.onInputDelta != null) {
1907
+ await tool.onInputDelta({
1908
+ inputTextDelta: chunk.delta,
1909
+ toolCallId: chunk.id,
1910
+ messages: stepInputMessages,
1911
+ abortSignal,
1912
+ experimental_context,
1913
+ });
1914
+ }
1915
+
1916
+ controller.enqueue(chunk);
1917
+ break;
1918
+ }
1919
+
1920
+ case 'error': {
1921
+ controller.enqueue(chunk);
1922
+ stepFinishReason = 'error';
1923
+ break;
1924
+ }
1925
+
1926
+ case 'raw': {
1927
+ if (includeRawChunks) {
1928
+ controller.enqueue(chunk);
1929
+ }
1930
+ break;
1931
+ }
1932
+
1933
+ default: {
1934
+ const exhaustiveCheck: never = chunkType;
1935
+ throw new Error(
1936
+ `Unknown chunk type: ${exhaustiveCheck}`,
1937
+ );
1938
+ }
1939
+ }
1940
+ },
1941
+
1942
+ // invoke onFinish callback and resolve toolResults promise when the stream is about to close:
1943
+ async flush(controller) {
1944
+ const stepToolCallsJson =
1945
+ stepToolCalls.length > 0
1946
+ ? JSON.stringify(stepToolCalls)
1947
+ : undefined;
1948
+
1949
+ // record telemetry information first to ensure best effort timing
1950
+ try {
1951
+ doStreamSpan.setAttributes(
1952
+ await selectTelemetryAttributes({
1953
+ telemetry,
1954
+ attributes: {
1955
+ 'ai.response.finishReason': stepFinishReason,
1956
+ 'ai.response.text': {
1957
+ output: () => activeText,
1958
+ },
1959
+ 'ai.response.reasoning': {
1960
+ output: () => {
1961
+ const reasoningParts = recordedContent.filter(
1962
+ (
1963
+ c,
1964
+ ): c is { type: 'reasoning'; text: string } =>
1965
+ c.type === 'reasoning',
1966
+ );
1967
+ return reasoningParts.length > 0
1968
+ ? reasoningParts.map(r => r.text).join('\n')
1969
+ : undefined;
1970
+ },
1971
+ },
1972
+ 'ai.response.toolCalls': {
1973
+ output: () => stepToolCallsJson,
1974
+ },
1975
+ 'ai.response.id': stepResponse.id,
1976
+ 'ai.response.model': stepResponse.modelId,
1977
+ 'ai.response.timestamp':
1978
+ stepResponse.timestamp.toISOString(),
1979
+ 'ai.response.providerMetadata':
1980
+ JSON.stringify(stepProviderMetadata),
1981
+
1982
+ 'ai.usage.inputTokens': stepUsage.inputTokens,
1983
+ 'ai.usage.outputTokens': stepUsage.outputTokens,
1984
+ 'ai.usage.totalTokens': stepUsage.totalTokens,
1985
+ 'ai.usage.reasoningTokens':
1986
+ stepUsage.reasoningTokens,
1987
+ 'ai.usage.cachedInputTokens':
1988
+ stepUsage.cachedInputTokens,
1989
+
1990
+ // standardized gen-ai llm span attributes:
1991
+ 'gen_ai.response.finish_reasons': [
1992
+ stepFinishReason,
1993
+ ],
1994
+ 'gen_ai.response.id': stepResponse.id,
1995
+ 'gen_ai.response.model': stepResponse.modelId,
1996
+ 'gen_ai.usage.input_tokens': stepUsage.inputTokens,
1997
+ 'gen_ai.usage.output_tokens':
1998
+ stepUsage.outputTokens,
1999
+ },
2000
+ }),
2001
+ );
2002
+ } catch (error) {
2003
+ // ignore error setting telemetry attributes
2004
+ } finally {
2005
+ // finish doStreamSpan before other operations for correct timing:
2006
+ doStreamSpan.end();
2007
+ }
2008
+
2009
+ controller.enqueue({
2010
+ type: 'finish-step',
2011
+ finishReason: stepFinishReason,
2012
+ rawFinishReason: stepRawFinishReason,
2013
+ usage: stepUsage,
2014
+ providerMetadata: stepProviderMetadata,
2015
+ response: {
2016
+ ...stepResponse,
2017
+ headers: response?.headers,
2018
+ },
2019
+ });
2020
+
2021
+ const combinedUsage = addLanguageModelUsage(
2022
+ usage,
2023
+ stepUsage,
2024
+ );
2025
+
2026
+ // wait for the step to be fully processed by the event processor
2027
+ // to ensure that the recorded steps are complete:
2028
+ await stepFinish.promise;
2029
+
2030
+ const clientToolCalls = stepToolCalls.filter(
2031
+ toolCall => toolCall.providerExecuted !== true,
2032
+ );
2033
+ const clientToolOutputs = stepToolOutputs.filter(
2034
+ toolOutput => toolOutput.providerExecuted !== true,
2035
+ );
2036
+
2037
+ // Track provider-executed tool calls that support deferred results.
2038
+ // In programmatic tool calling, a server tool (e.g., code_execution) may
2039
+ // trigger a client tool, and the server tool's result is deferred until
2040
+ // the client tool's result is sent back.
2041
+ for (const toolCall of stepToolCalls) {
2042
+ if (toolCall.providerExecuted !== true) continue;
2043
+ const tool = tools?.[toolCall.toolName];
2044
+ if (
2045
+ tool?.type === 'provider' &&
2046
+ tool.supportsDeferredResults
2047
+ ) {
2048
+ // Check if this tool call already has a result in the current step
2049
+ const hasResultInStep = stepToolOutputs.some(
2050
+ output =>
2051
+ (output.type === 'tool-result' ||
2052
+ output.type === 'tool-error') &&
2053
+ output.toolCallId === toolCall.toolCallId,
2054
+ );
2055
+ if (!hasResultInStep) {
2056
+ pendingDeferredToolCalls.set(toolCall.toolCallId, {
2057
+ toolName: toolCall.toolName,
2058
+ });
2059
+ }
2060
+ }
2061
+ }
2062
+
2063
+ // Mark deferred tool calls as resolved when we receive their results
2064
+ for (const output of stepToolOutputs) {
2065
+ if (
2066
+ output.type === 'tool-result' ||
2067
+ output.type === 'tool-error'
2068
+ ) {
2069
+ pendingDeferredToolCalls.delete(output.toolCallId);
2070
+ }
2071
+ }
2072
+
2073
+ // Clear the step and chunk timeouts before the next step is started
2074
+ clearStepTimeout();
2075
+ clearChunkTimeout();
2076
+
2077
+ if (
2078
+ // Continue if:
2079
+ // 1. There are client tool calls that have all been executed, OR
2080
+ // 2. There are pending deferred results from provider-executed tools
2081
+ ((clientToolCalls.length > 0 &&
2082
+ clientToolOutputs.length === clientToolCalls.length) ||
2083
+ pendingDeferredToolCalls.size > 0) &&
2084
+ // continue until a stop condition is met:
2085
+ !(await isStopConditionMet({
2086
+ stopConditions,
2087
+ steps: recordedSteps,
2088
+ }))
2089
+ ) {
2090
+ // append to messages for the next step:
2091
+ responseMessages.push(
2092
+ ...(await toResponseMessages({
2093
+ content:
2094
+ // use transformed content to create the messages for the next step:
2095
+ recordedSteps[recordedSteps.length - 1].content,
2096
+ tools,
2097
+ })),
2098
+ );
2099
+
2100
+ try {
2101
+ await streamStep({
2102
+ currentStep: currentStep + 1,
2103
+ responseMessages,
2104
+ usage: combinedUsage,
2105
+ });
2106
+ } catch (error) {
2107
+ controller.enqueue({
2108
+ type: 'error',
2109
+ error,
2110
+ });
2111
+
2112
+ self.closeStream();
2113
+ }
2114
+ } else {
2115
+ controller.enqueue({
2116
+ type: 'finish',
2117
+ finishReason: stepFinishReason,
2118
+ rawFinishReason: stepRawFinishReason,
2119
+ totalUsage: combinedUsage,
2120
+ });
2121
+
2122
+ self.closeStream(); // close the stitchable stream
2123
+ }
2124
+ },
2125
+ }),
2126
+ ),
2127
+ );
2128
+ } finally {
2129
+ clearStepTimeout();
2130
+ clearChunkTimeout();
2131
+ }
2132
+ }
2133
+
2134
+ // add the initial stream to the stitchable stream
2135
+ await streamStep({
2136
+ currentStep: 0,
2137
+ responseMessages: initialResponseMessages,
2138
+ usage: createNullLanguageModelUsage(),
2139
+ });
2140
+ },
2141
+ }).catch(error => {
2142
+ // add an error stream part and close the streams:
2143
+ self.addStream(
2144
+ new ReadableStream({
2145
+ start(controller) {
2146
+ controller.enqueue({ type: 'error', error });
2147
+ controller.close();
2148
+ },
2149
+ }),
2150
+ );
2151
+ self.closeStream();
2152
+ });
2153
+ }
2154
+
2155
+ get steps() {
2156
+ // when any of the promises are accessed, the stream is consumed
2157
+ // so it resolves without needing to consume the stream separately
2158
+ this.consumeStream();
2159
+
2160
+ return this._steps.promise;
2161
+ }
2162
+
2163
+ private get finalStep() {
2164
+ return this.steps.then(steps => steps[steps.length - 1]);
2165
+ }
2166
+
2167
+ get content() {
2168
+ return this.finalStep.then(step => step.content);
2169
+ }
2170
+
2171
+ get warnings() {
2172
+ return this.finalStep.then(step => step.warnings);
2173
+ }
2174
+
2175
+ get providerMetadata() {
2176
+ return this.finalStep.then(step => step.providerMetadata);
2177
+ }
2178
+
2179
+ get text() {
2180
+ return this.finalStep.then(step => step.text);
2181
+ }
2182
+
2183
+ get reasoningText() {
2184
+ return this.finalStep.then(step => step.reasoningText);
2185
+ }
2186
+
2187
+ get reasoning() {
2188
+ return this.finalStep.then(step => step.reasoning);
2189
+ }
2190
+
2191
+ get sources() {
2192
+ return this.finalStep.then(step => step.sources);
2193
+ }
2194
+
2195
+ get files() {
2196
+ return this.finalStep.then(step => step.files);
2197
+ }
2198
+
2199
+ get toolCalls() {
2200
+ return this.finalStep.then(step => step.toolCalls);
2201
+ }
2202
+
2203
+ get staticToolCalls() {
2204
+ return this.finalStep.then(step => step.staticToolCalls);
2205
+ }
2206
+
2207
+ get dynamicToolCalls() {
2208
+ return this.finalStep.then(step => step.dynamicToolCalls);
2209
+ }
2210
+
2211
+ get toolResults() {
2212
+ return this.finalStep.then(step => step.toolResults);
2213
+ }
2214
+
2215
+ get staticToolResults() {
2216
+ return this.finalStep.then(step => step.staticToolResults);
2217
+ }
2218
+
2219
+ get dynamicToolResults() {
2220
+ return this.finalStep.then(step => step.dynamicToolResults);
2221
+ }
2222
+
2223
+ get usage() {
2224
+ return this.finalStep.then(step => step.usage);
2225
+ }
2226
+
2227
+ get request() {
2228
+ return this.finalStep.then(step => step.request);
2229
+ }
2230
+
2231
+ get response() {
2232
+ return this.finalStep.then(step => step.response);
2233
+ }
2234
+
2235
+ get totalUsage() {
2236
+ // when any of the promises are accessed, the stream is consumed
2237
+ // so it resolves without needing to consume the stream separately
2238
+ this.consumeStream();
2239
+
2240
+ return this._totalUsage.promise;
2241
+ }
2242
+
2243
+ get finishReason() {
2244
+ // when any of the promises are accessed, the stream is consumed
2245
+ // so it resolves without needing to consume the stream separately
2246
+ this.consumeStream();
2247
+
2248
+ return this._finishReason.promise;
2249
+ }
2250
+
2251
+ get rawFinishReason() {
2252
+ // when any of the promises are accessed, the stream is consumed
2253
+ // so it resolves without needing to consume the stream separately
2254
+ this.consumeStream();
2255
+
2256
+ return this._rawFinishReason.promise;
2257
+ }
2258
+
2259
+ /**
2260
+ * Split out a new stream from the original stream.
2261
+ * The original stream is replaced to allow for further splitting,
2262
+ * since we do not know how many times the stream will be split.
2263
+ *
2264
+ * Note: this leads to buffering the stream content on the server.
2265
+ * However, the LLM results are expected to be small enough to not cause issues.
2266
+ */
2267
+ private teeStream() {
2268
+ const [stream1, stream2] = this.baseStream.tee();
2269
+ this.baseStream = stream2;
2270
+ return stream1;
2271
+ }
2272
+
2273
+ get textStream(): AsyncIterableStream<string> {
2274
+ return createAsyncIterableStream(
2275
+ this.teeStream().pipeThrough(
2276
+ new TransformStream<
2277
+ EnrichedStreamPart<TOOLS, InferPartialOutput<OUTPUT>>,
2278
+ string
2279
+ >({
2280
+ transform({ part }, controller) {
2281
+ if (part.type === 'text-delta') {
2282
+ controller.enqueue(part.text);
2283
+ }
2284
+ },
2285
+ }),
2286
+ ),
2287
+ );
2288
+ }
2289
+
2290
+ get fullStream(): AsyncIterableStream<TextStreamPart<TOOLS>> {
2291
+ return createAsyncIterableStream(
2292
+ this.teeStream().pipeThrough(
2293
+ new TransformStream<
2294
+ EnrichedStreamPart<TOOLS, InferPartialOutput<OUTPUT>>,
2295
+ TextStreamPart<TOOLS>
2296
+ >({
2297
+ transform({ part }, controller) {
2298
+ controller.enqueue(part);
2299
+ },
2300
+ }),
2301
+ ),
2302
+ );
2303
+ }
2304
+
2305
+ async consumeStream(options?: ConsumeStreamOptions): Promise<void> {
2306
+ try {
2307
+ await consumeStream({
2308
+ stream: this.fullStream,
2309
+ onError: options?.onError,
2310
+ });
2311
+ } catch (error) {
2312
+ options?.onError?.(error);
2313
+ }
2314
+ }
2315
+
2316
+ get experimental_partialOutputStream(): AsyncIterableStream<
2317
+ InferPartialOutput<OUTPUT>
2318
+ > {
2319
+ return this.partialOutputStream;
2320
+ }
2321
+
2322
+ get partialOutputStream(): AsyncIterableStream<InferPartialOutput<OUTPUT>> {
2323
+ return createAsyncIterableStream(
2324
+ this.teeStream().pipeThrough(
2325
+ new TransformStream<
2326
+ EnrichedStreamPart<TOOLS, InferPartialOutput<OUTPUT>>,
2327
+ InferPartialOutput<OUTPUT>
2328
+ >({
2329
+ transform({ partialOutput }, controller) {
2330
+ if (partialOutput != null) {
2331
+ controller.enqueue(partialOutput);
2332
+ }
2333
+ },
2334
+ }),
2335
+ ),
2336
+ );
2337
+ }
2338
+
2339
+ get elementStream(): AsyncIterableStream<InferElementOutput<OUTPUT>> {
2340
+ const transform = this.outputSpecification?.createElementStreamTransform();
2341
+
2342
+ if (transform == null) {
2343
+ throw new UnsupportedFunctionalityError({
2344
+ functionality: `element streams in ${this.outputSpecification?.name ?? 'text'} mode`,
2345
+ });
2346
+ }
2347
+
2348
+ return createAsyncIterableStream(this.teeStream().pipeThrough(transform));
2349
+ }
2350
+
2351
+ get output(): Promise<InferCompleteOutput<OUTPUT>> {
2352
+ return this.finalStep.then(step => {
2353
+ const output = this.outputSpecification ?? text();
2354
+ return output.parseCompleteOutput(
2355
+ { text: step.text },
2356
+ {
2357
+ response: step.response,
2358
+ usage: step.usage,
2359
+ finishReason: step.finishReason,
2360
+ },
2361
+ );
2362
+ });
2363
+ }
2364
+
2365
+ toUIMessageStream<UI_MESSAGE extends UIMessage>({
2366
+ originalMessages,
2367
+ generateMessageId,
2368
+ onFinish,
2369
+ messageMetadata,
2370
+ sendReasoning = true,
2371
+ sendSources = false,
2372
+ sendStart = true,
2373
+ sendFinish = true,
2374
+ onError = getErrorMessage,
2375
+ }: UIMessageStreamOptions<UI_MESSAGE> = {}): AsyncIterableStream<
2376
+ InferUIMessageChunk<UI_MESSAGE>
2377
+ > {
2378
+ const responseMessageId =
2379
+ generateMessageId != null
2380
+ ? getResponseUIMessageId({
2381
+ originalMessages,
2382
+ responseMessageId: generateMessageId,
2383
+ })
2384
+ : undefined;
2385
+
2386
+ // TODO simplify once dynamic is no longer needed for invalid tool inputs
2387
+ const isDynamic = (part: { toolName: string; dynamic?: boolean }) => {
2388
+ const tool = this.tools?.[part.toolName];
2389
+
2390
+ // provider-executed, dynamic tools are not listed in the tools object
2391
+ if (tool == null) {
2392
+ return part.dynamic;
2393
+ }
2394
+
2395
+ return tool?.type === 'dynamic' ? true : undefined;
2396
+ };
2397
+
2398
+ const baseStream = this.fullStream.pipeThrough(
2399
+ new TransformStream<
2400
+ TextStreamPart<TOOLS>,
2401
+ UIMessageChunk<
2402
+ InferUIMessageMetadata<UI_MESSAGE>,
2403
+ InferUIMessageData<UI_MESSAGE>
2404
+ >
2405
+ >({
2406
+ transform: async (part, controller) => {
2407
+ const messageMetadataValue = messageMetadata?.({ part });
2408
+
2409
+ const partType = part.type;
2410
+ switch (partType) {
2411
+ case 'text-start': {
2412
+ controller.enqueue({
2413
+ type: 'text-start',
2414
+ id: part.id,
2415
+ ...(part.providerMetadata != null
2416
+ ? { providerMetadata: part.providerMetadata }
2417
+ : {}),
2418
+ });
2419
+ break;
2420
+ }
2421
+
2422
+ case 'text-delta': {
2423
+ controller.enqueue({
2424
+ type: 'text-delta',
2425
+ id: part.id,
2426
+ delta: part.text,
2427
+ ...(part.providerMetadata != null
2428
+ ? { providerMetadata: part.providerMetadata }
2429
+ : {}),
2430
+ });
2431
+ break;
2432
+ }
2433
+
2434
+ case 'text-end': {
2435
+ controller.enqueue({
2436
+ type: 'text-end',
2437
+ id: part.id,
2438
+ ...(part.providerMetadata != null
2439
+ ? { providerMetadata: part.providerMetadata }
2440
+ : {}),
2441
+ });
2442
+ break;
2443
+ }
2444
+
2445
+ case 'reasoning-start': {
2446
+ controller.enqueue({
2447
+ type: 'reasoning-start',
2448
+ id: part.id,
2449
+ ...(part.providerMetadata != null
2450
+ ? { providerMetadata: part.providerMetadata }
2451
+ : {}),
2452
+ });
2453
+ break;
2454
+ }
2455
+
2456
+ case 'reasoning-delta': {
2457
+ if (sendReasoning) {
2458
+ controller.enqueue({
2459
+ type: 'reasoning-delta',
2460
+ id: part.id,
2461
+ delta: part.text,
2462
+ ...(part.providerMetadata != null
2463
+ ? { providerMetadata: part.providerMetadata }
2464
+ : {}),
2465
+ });
2466
+ }
2467
+ break;
2468
+ }
2469
+
2470
+ case 'reasoning-end': {
2471
+ controller.enqueue({
2472
+ type: 'reasoning-end',
2473
+ id: part.id,
2474
+ ...(part.providerMetadata != null
2475
+ ? { providerMetadata: part.providerMetadata }
2476
+ : {}),
2477
+ });
2478
+ break;
2479
+ }
2480
+
2481
+ case 'file': {
2482
+ controller.enqueue({
2483
+ type: 'file',
2484
+ mediaType: part.file.mediaType,
2485
+ url: `data:${part.file.mediaType};base64,${part.file.base64}`,
2486
+ ...(part.providerMetadata != null
2487
+ ? { providerMetadata: part.providerMetadata }
2488
+ : {}),
2489
+ });
2490
+ break;
2491
+ }
2492
+
2493
+ case 'source': {
2494
+ if (sendSources && part.sourceType === 'url') {
2495
+ controller.enqueue({
2496
+ type: 'source-url',
2497
+ sourceId: part.id,
2498
+ url: part.url,
2499
+ title: part.title,
2500
+ ...(part.providerMetadata != null
2501
+ ? { providerMetadata: part.providerMetadata }
2502
+ : {}),
2503
+ });
2504
+ }
2505
+
2506
+ if (sendSources && part.sourceType === 'document') {
2507
+ controller.enqueue({
2508
+ type: 'source-document',
2509
+ sourceId: part.id,
2510
+ mediaType: part.mediaType,
2511
+ title: part.title,
2512
+ filename: part.filename,
2513
+ ...(part.providerMetadata != null
2514
+ ? { providerMetadata: part.providerMetadata }
2515
+ : {}),
2516
+ });
2517
+ }
2518
+ break;
2519
+ }
2520
+
2521
+ case 'tool-input-start': {
2522
+ const dynamic = isDynamic(part);
2523
+
2524
+ controller.enqueue({
2525
+ type: 'tool-input-start',
2526
+ toolCallId: part.id,
2527
+ toolName: part.toolName,
2528
+ ...(part.providerExecuted != null
2529
+ ? { providerExecuted: part.providerExecuted }
2530
+ : {}),
2531
+ ...(part.providerMetadata != null
2532
+ ? { providerMetadata: part.providerMetadata }
2533
+ : {}),
2534
+ ...(dynamic != null ? { dynamic } : {}),
2535
+ ...(part.title != null ? { title: part.title } : {}),
2536
+ });
2537
+ break;
2538
+ }
2539
+
2540
+ case 'tool-input-delta': {
2541
+ controller.enqueue({
2542
+ type: 'tool-input-delta',
2543
+ toolCallId: part.id,
2544
+ inputTextDelta: part.delta,
2545
+ });
2546
+ break;
2547
+ }
2548
+
2549
+ case 'tool-call': {
2550
+ const dynamic = isDynamic(part);
2551
+
2552
+ if (part.invalid) {
2553
+ controller.enqueue({
2554
+ type: 'tool-input-error',
2555
+ toolCallId: part.toolCallId,
2556
+ toolName: part.toolName,
2557
+ input: part.input,
2558
+ ...(part.providerExecuted != null
2559
+ ? { providerExecuted: part.providerExecuted }
2560
+ : {}),
2561
+ ...(part.providerMetadata != null
2562
+ ? { providerMetadata: part.providerMetadata }
2563
+ : {}),
2564
+ ...(dynamic != null ? { dynamic } : {}),
2565
+ errorText: onError(part.error),
2566
+ ...(part.title != null ? { title: part.title } : {}),
2567
+ });
2568
+ } else {
2569
+ controller.enqueue({
2570
+ type: 'tool-input-available',
2571
+ toolCallId: part.toolCallId,
2572
+ toolName: part.toolName,
2573
+ input: part.input,
2574
+ ...(part.providerExecuted != null
2575
+ ? { providerExecuted: part.providerExecuted }
2576
+ : {}),
2577
+ ...(part.providerMetadata != null
2578
+ ? { providerMetadata: part.providerMetadata }
2579
+ : {}),
2580
+ ...(dynamic != null ? { dynamic } : {}),
2581
+ ...(part.title != null ? { title: part.title } : {}),
2582
+ });
2583
+ }
2584
+
2585
+ break;
2586
+ }
2587
+
2588
+ case 'tool-approval-request': {
2589
+ controller.enqueue({
2590
+ type: 'tool-approval-request',
2591
+ approvalId: part.approvalId,
2592
+ toolCallId: part.toolCall.toolCallId,
2593
+ });
2594
+ break;
2595
+ }
2596
+
2597
+ case 'tool-result': {
2598
+ const dynamic = isDynamic(part);
2599
+
2600
+ controller.enqueue({
2601
+ type: 'tool-output-available',
2602
+ toolCallId: part.toolCallId,
2603
+ output: part.output,
2604
+ ...(part.providerExecuted != null
2605
+ ? { providerExecuted: part.providerExecuted }
2606
+ : {}),
2607
+ ...(part.preliminary != null
2608
+ ? { preliminary: part.preliminary }
2609
+ : {}),
2610
+ ...(dynamic != null ? { dynamic } : {}),
2611
+ });
2612
+ break;
2613
+ }
2614
+
2615
+ case 'tool-error': {
2616
+ const dynamic = isDynamic(part);
2617
+
2618
+ controller.enqueue({
2619
+ type: 'tool-output-error',
2620
+ toolCallId: part.toolCallId,
2621
+ errorText: onError(part.error),
2622
+ ...(part.providerExecuted != null
2623
+ ? { providerExecuted: part.providerExecuted }
2624
+ : {}),
2625
+ ...(dynamic != null ? { dynamic } : {}),
2626
+ });
2627
+ break;
2628
+ }
2629
+
2630
+ case 'tool-output-denied': {
2631
+ controller.enqueue({
2632
+ type: 'tool-output-denied',
2633
+ toolCallId: part.toolCallId,
2634
+ });
2635
+ break;
2636
+ }
2637
+
2638
+ case 'error': {
2639
+ controller.enqueue({
2640
+ type: 'error',
2641
+ errorText: onError(part.error),
2642
+ });
2643
+ break;
2644
+ }
2645
+
2646
+ case 'start-step': {
2647
+ controller.enqueue({ type: 'start-step' });
2648
+ break;
2649
+ }
2650
+
2651
+ case 'finish-step': {
2652
+ controller.enqueue({ type: 'finish-step' });
2653
+ break;
2654
+ }
2655
+
2656
+ case 'start': {
2657
+ if (sendStart) {
2658
+ controller.enqueue({
2659
+ type: 'start',
2660
+ ...(messageMetadataValue != null
2661
+ ? { messageMetadata: messageMetadataValue }
2662
+ : {}),
2663
+ ...(responseMessageId != null
2664
+ ? { messageId: responseMessageId }
2665
+ : {}),
2666
+ });
2667
+ }
2668
+ break;
2669
+ }
2670
+
2671
+ case 'finish': {
2672
+ if (sendFinish) {
2673
+ controller.enqueue({
2674
+ type: 'finish',
2675
+ finishReason: part.finishReason,
2676
+ ...(messageMetadataValue != null
2677
+ ? { messageMetadata: messageMetadataValue }
2678
+ : {}),
2679
+ });
2680
+ }
2681
+ break;
2682
+ }
2683
+
2684
+ case 'abort': {
2685
+ controller.enqueue(part);
2686
+ break;
2687
+ }
2688
+
2689
+ case 'tool-input-end': {
2690
+ break;
2691
+ }
2692
+
2693
+ case 'raw': {
2694
+ // Raw chunks are not included in UI message streams
2695
+ // as they contain provider-specific data for developer use
2696
+ break;
2697
+ }
2698
+
2699
+ default: {
2700
+ const exhaustiveCheck: never = partType;
2701
+ throw new Error(`Unknown chunk type: ${exhaustiveCheck}`);
2702
+ }
2703
+ }
2704
+
2705
+ // start and finish events already have metadata
2706
+ // so we only need to send metadata for other parts
2707
+ if (
2708
+ messageMetadataValue != null &&
2709
+ partType !== 'start' &&
2710
+ partType !== 'finish'
2711
+ ) {
2712
+ controller.enqueue({
2713
+ type: 'message-metadata',
2714
+ messageMetadata: messageMetadataValue,
2715
+ });
2716
+ }
2717
+ },
2718
+ }),
2719
+ );
2720
+
2721
+ return createAsyncIterableStream(
2722
+ handleUIMessageStreamFinish<UI_MESSAGE>({
2723
+ stream: baseStream,
2724
+ messageId: responseMessageId ?? generateMessageId?.(),
2725
+ originalMessages,
2726
+ onFinish,
2727
+ onError,
2728
+ }),
2729
+ );
2730
+ }
2731
+
2732
+ pipeUIMessageStreamToResponse<UI_MESSAGE extends UIMessage>(
2733
+ response: ServerResponse,
2734
+ {
2735
+ originalMessages,
2736
+ generateMessageId,
2737
+ onFinish,
2738
+ messageMetadata,
2739
+ sendReasoning,
2740
+ sendSources,
2741
+ sendFinish,
2742
+ sendStart,
2743
+ onError,
2744
+ ...init
2745
+ }: UIMessageStreamResponseInit & UIMessageStreamOptions<UI_MESSAGE> = {},
2746
+ ) {
2747
+ pipeUIMessageStreamToResponse({
2748
+ response,
2749
+ stream: this.toUIMessageStream({
2750
+ originalMessages,
2751
+ generateMessageId,
2752
+ onFinish,
2753
+ messageMetadata,
2754
+ sendReasoning,
2755
+ sendSources,
2756
+ sendFinish,
2757
+ sendStart,
2758
+ onError,
2759
+ }),
2760
+ ...init,
2761
+ });
2762
+ }
2763
+
2764
+ pipeTextStreamToResponse(response: ServerResponse, init?: ResponseInit) {
2765
+ pipeTextStreamToResponse({
2766
+ response,
2767
+ textStream: this.textStream,
2768
+ ...init,
2769
+ });
2770
+ }
2771
+
2772
+ toUIMessageStreamResponse<UI_MESSAGE extends UIMessage>({
2773
+ originalMessages,
2774
+ generateMessageId,
2775
+ onFinish,
2776
+ messageMetadata,
2777
+ sendReasoning,
2778
+ sendSources,
2779
+ sendFinish,
2780
+ sendStart,
2781
+ onError,
2782
+ ...init
2783
+ }: UIMessageStreamResponseInit &
2784
+ UIMessageStreamOptions<UI_MESSAGE> = {}): Response {
2785
+ return createUIMessageStreamResponse({
2786
+ stream: this.toUIMessageStream({
2787
+ originalMessages,
2788
+ generateMessageId,
2789
+ onFinish,
2790
+ messageMetadata,
2791
+ sendReasoning,
2792
+ sendSources,
2793
+ sendFinish,
2794
+ sendStart,
2795
+ onError,
2796
+ }),
2797
+ ...init,
2798
+ });
2799
+ }
2800
+
2801
+ toTextStreamResponse(init?: ResponseInit): Response {
2802
+ return createTextStreamResponse({
2803
+ textStream: this.textStream,
2804
+ ...init,
2805
+ });
2806
+ }
2807
+ }