ai 6.0.0-beta.157 → 6.0.0-beta.160

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.
package/dist/index.js CHANGED
@@ -4,8 +4,8 @@ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
4
  var __getOwnPropNames = Object.getOwnPropertyNames;
5
5
  var __hasOwnProp = Object.prototype.hasOwnProperty;
6
6
  var __export = (target, all) => {
7
- for (var name15 in all)
8
- __defProp(target, name15, { get: all[name15], enumerable: true });
7
+ for (var name14 in all)
8
+ __defProp(target, name14, { get: all[name14], enumerable: true });
9
9
  };
10
10
  var __copyProps = (to, from, except, desc) => {
11
11
  if (from && typeof from === "object" || typeof from === "function") {
@@ -20,47 +20,47 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
20
20
  // src/index.ts
21
21
  var src_exports = {};
22
22
  __export(src_exports, {
23
- AISDKError: () => import_provider16.AISDKError,
24
- APICallError: () => import_provider16.APICallError,
23
+ AISDKError: () => import_provider15.AISDKError,
24
+ APICallError: () => import_provider15.APICallError,
25
25
  AbstractChat: () => AbstractChat,
26
26
  DefaultChatTransport: () => DefaultChatTransport,
27
- DownloadError: () => DownloadError,
28
- EmptyResponseBodyError: () => import_provider16.EmptyResponseBodyError,
27
+ DownloadError: () => import_provider_utils.DownloadError,
28
+ EmptyResponseBodyError: () => import_provider15.EmptyResponseBodyError,
29
29
  Experimental_Agent: () => ToolLoopAgent,
30
30
  HttpChatTransport: () => HttpChatTransport,
31
31
  InvalidArgumentError: () => InvalidArgumentError,
32
32
  InvalidDataContentError: () => InvalidDataContentError,
33
33
  InvalidMessageRoleError: () => InvalidMessageRoleError,
34
- InvalidPromptError: () => import_provider16.InvalidPromptError,
35
- InvalidResponseDataError: () => import_provider16.InvalidResponseDataError,
34
+ InvalidPromptError: () => import_provider15.InvalidPromptError,
35
+ InvalidResponseDataError: () => import_provider15.InvalidResponseDataError,
36
36
  InvalidStreamPartError: () => InvalidStreamPartError,
37
37
  InvalidToolInputError: () => InvalidToolInputError,
38
- JSONParseError: () => import_provider16.JSONParseError,
38
+ JSONParseError: () => import_provider15.JSONParseError,
39
39
  JsonToSseTransformStream: () => JsonToSseTransformStream,
40
- LoadAPIKeyError: () => import_provider16.LoadAPIKeyError,
41
- LoadSettingError: () => import_provider16.LoadSettingError,
40
+ LoadAPIKeyError: () => import_provider15.LoadAPIKeyError,
41
+ LoadSettingError: () => import_provider15.LoadSettingError,
42
42
  MessageConversionError: () => MessageConversionError,
43
- NoContentGeneratedError: () => import_provider16.NoContentGeneratedError,
43
+ NoContentGeneratedError: () => import_provider15.NoContentGeneratedError,
44
44
  NoImageGeneratedError: () => NoImageGeneratedError,
45
45
  NoObjectGeneratedError: () => NoObjectGeneratedError,
46
46
  NoOutputGeneratedError: () => NoOutputGeneratedError,
47
47
  NoSpeechGeneratedError: () => NoSpeechGeneratedError,
48
- NoSuchModelError: () => import_provider16.NoSuchModelError,
48
+ NoSuchModelError: () => import_provider15.NoSuchModelError,
49
49
  NoSuchProviderError: () => NoSuchProviderError,
50
50
  NoSuchToolError: () => NoSuchToolError,
51
51
  Output: () => output_exports,
52
52
  RetryError: () => RetryError,
53
53
  SerialJobExecutor: () => SerialJobExecutor,
54
54
  TextStreamChatTransport: () => TextStreamChatTransport,
55
- TooManyEmbeddingValuesForCallError: () => import_provider16.TooManyEmbeddingValuesForCallError,
55
+ TooManyEmbeddingValuesForCallError: () => import_provider15.TooManyEmbeddingValuesForCallError,
56
56
  ToolCallRepairError: () => ToolCallRepairError,
57
57
  ToolLoopAgent: () => ToolLoopAgent,
58
- TypeValidationError: () => import_provider16.TypeValidationError,
58
+ TypeValidationError: () => import_provider15.TypeValidationError,
59
59
  UI_MESSAGE_STREAM_HEADERS: () => UI_MESSAGE_STREAM_HEADERS,
60
- UnsupportedFunctionalityError: () => import_provider16.UnsupportedFunctionalityError,
60
+ UnsupportedFunctionalityError: () => import_provider15.UnsupportedFunctionalityError,
61
61
  UnsupportedModelVersionError: () => UnsupportedModelVersionError,
62
62
  addToolInputExamplesMiddleware: () => addToolInputExamplesMiddleware,
63
- asSchema: () => import_provider_utils36.asSchema,
63
+ asSchema: () => import_provider_utils38.asSchema,
64
64
  assistantModelMessageSchema: () => assistantModelMessageSchema,
65
65
  callCompletionApi: () => callCompletionApi,
66
66
  consumeStream: () => consumeStream,
@@ -70,7 +70,7 @@ __export(src_exports, {
70
70
  createAgentUIStream: () => createAgentUIStream,
71
71
  createAgentUIStreamResponse: () => createAgentUIStreamResponse,
72
72
  createGateway: () => import_gateway3.createGateway,
73
- createIdGenerator: () => import_provider_utils36.createIdGenerator,
73
+ createIdGenerator: () => import_provider_utils38.createIdGenerator,
74
74
  createProviderRegistry: () => createProviderRegistry,
75
75
  createTextStreamResponse: () => createTextStreamResponse,
76
76
  createUIMessageStream: () => createUIMessageStream,
@@ -78,17 +78,18 @@ __export(src_exports, {
78
78
  customProvider: () => customProvider,
79
79
  defaultEmbeddingSettingsMiddleware: () => defaultEmbeddingSettingsMiddleware,
80
80
  defaultSettingsMiddleware: () => defaultSettingsMiddleware,
81
- dynamicTool: () => import_provider_utils36.dynamicTool,
81
+ dynamicTool: () => import_provider_utils38.dynamicTool,
82
82
  embed: () => embed,
83
83
  embedMany: () => embedMany,
84
84
  experimental_createProviderRegistry: () => experimental_createProviderRegistry,
85
85
  experimental_customProvider: () => experimental_customProvider,
86
- experimental_generateImage: () => generateImage,
86
+ experimental_generateImage: () => experimental_generateImage,
87
87
  experimental_generateSpeech: () => generateSpeech,
88
88
  experimental_transcribe: () => transcribe,
89
89
  extractReasoningMiddleware: () => extractReasoningMiddleware,
90
90
  gateway: () => import_gateway3.gateway,
91
- generateId: () => import_provider_utils36.generateId,
91
+ generateId: () => import_provider_utils38.generateId,
92
+ generateImage: () => generateImage,
92
93
  generateObject: () => generateObject,
93
94
  generateText: () => generateText,
94
95
  getStaticToolName: () => getStaticToolName,
@@ -104,11 +105,11 @@ __export(src_exports, {
104
105
  isTextUIPart: () => isTextUIPart,
105
106
  isToolOrDynamicToolUIPart: () => isToolOrDynamicToolUIPart,
106
107
  isToolUIPart: () => isToolUIPart,
107
- jsonSchema: () => import_provider_utils36.jsonSchema,
108
+ jsonSchema: () => import_provider_utils38.jsonSchema,
108
109
  lastAssistantMessageIsCompleteWithApprovalResponses: () => lastAssistantMessageIsCompleteWithApprovalResponses,
109
110
  lastAssistantMessageIsCompleteWithToolCalls: () => lastAssistantMessageIsCompleteWithToolCalls,
110
111
  modelMessageSchema: () => modelMessageSchema,
111
- parseJsonEventStream: () => import_provider_utils36.parseJsonEventStream,
112
+ parseJsonEventStream: () => import_provider_utils38.parseJsonEventStream,
112
113
  parsePartialJson: () => parsePartialJson,
113
114
  pipeAgentUIStreamToResponse: () => pipeAgentUIStreamToResponse,
114
115
  pipeTextStreamToResponse: () => pipeTextStreamToResponse,
@@ -124,7 +125,7 @@ __export(src_exports, {
124
125
  streamObject: () => streamObject,
125
126
  streamText: () => streamText,
126
127
  systemModelMessageSchema: () => systemModelMessageSchema,
127
- tool: () => import_provider_utils36.tool,
128
+ tool: () => import_provider_utils38.tool,
128
129
  toolModelMessageSchema: () => toolModelMessageSchema,
129
130
  uiMessageChunkSchema: () => uiMessageChunkSchema,
130
131
  userModelMessageSchema: () => userModelMessageSchema,
@@ -132,14 +133,14 @@ __export(src_exports, {
132
133
  wrapEmbeddingModel: () => wrapEmbeddingModel,
133
134
  wrapLanguageModel: () => wrapLanguageModel,
134
135
  wrapProvider: () => wrapProvider,
135
- zodSchema: () => import_provider_utils36.zodSchema
136
+ zodSchema: () => import_provider_utils38.zodSchema
136
137
  });
137
138
  module.exports = __toCommonJS(src_exports);
138
139
  var import_gateway3 = require("@ai-sdk/gateway");
139
- var import_provider_utils36 = require("@ai-sdk/provider-utils");
140
+ var import_provider_utils38 = require("@ai-sdk/provider-utils");
140
141
 
141
142
  // src/generate-text/generate-text.ts
142
- var import_provider_utils13 = require("@ai-sdk/provider-utils");
143
+ var import_provider_utils15 = require("@ai-sdk/provider-utils");
143
144
 
144
145
  // src/logger/log-warnings.ts
145
146
  function formatWarning({
@@ -204,7 +205,7 @@ var logWarnings = (options) => {
204
205
  var import_gateway = require("@ai-sdk/gateway");
205
206
 
206
207
  // src/error/index.ts
207
- var import_provider16 = require("@ai-sdk/provider");
208
+ var import_provider15 = require("@ai-sdk/provider");
208
209
 
209
210
  // src/error/invalid-argument-error.ts
210
211
  var import_provider = require("@ai-sdk/provider");
@@ -483,55 +484,32 @@ var MessageConversionError = class extends import_provider13.AISDKError {
483
484
  };
484
485
  _a11 = symbol11;
485
486
 
486
- // src/util/download/download-error.ts
487
+ // src/error/index.ts
488
+ var import_provider_utils = require("@ai-sdk/provider-utils");
489
+
490
+ // src/util/retry-error.ts
487
491
  var import_provider14 = require("@ai-sdk/provider");
488
- var name12 = "AI_DownloadError";
492
+ var name12 = "AI_RetryError";
489
493
  var marker12 = `vercel.ai.error.${name12}`;
490
494
  var symbol12 = Symbol.for(marker12);
491
495
  var _a12;
492
- var DownloadError = class extends import_provider14.AISDKError {
493
- constructor({
494
- url,
495
- statusCode,
496
- statusText,
497
- cause,
498
- message = cause == null ? `Failed to download ${url}: ${statusCode} ${statusText}` : `Failed to download ${url}: ${cause}`
499
- }) {
500
- super({ name: name12, message, cause });
501
- this[_a12] = true;
502
- this.url = url;
503
- this.statusCode = statusCode;
504
- this.statusText = statusText;
505
- }
506
- static isInstance(error) {
507
- return import_provider14.AISDKError.hasMarker(error, marker12);
508
- }
509
- };
510
- _a12 = symbol12;
511
-
512
- // src/util/retry-error.ts
513
- var import_provider15 = require("@ai-sdk/provider");
514
- var name13 = "AI_RetryError";
515
- var marker13 = `vercel.ai.error.${name13}`;
516
- var symbol13 = Symbol.for(marker13);
517
- var _a13;
518
- var RetryError = class extends import_provider15.AISDKError {
496
+ var RetryError = class extends import_provider14.AISDKError {
519
497
  constructor({
520
498
  message,
521
499
  reason,
522
500
  errors
523
501
  }) {
524
- super({ name: name13, message });
525
- this[_a13] = true;
502
+ super({ name: name12, message });
503
+ this[_a12] = true;
526
504
  this.reason = reason;
527
505
  this.errors = errors;
528
506
  this.lastError = errors[errors.length - 1];
529
507
  }
530
508
  static isInstance(error) {
531
- return import_provider15.AISDKError.hasMarker(error, marker13);
509
+ return import_provider14.AISDKError.hasMarker(error, marker12);
532
510
  }
533
511
  };
534
- _a13 = symbol13;
512
+ _a12 = symbol12;
535
513
 
536
514
  // src/util/log-v2-compatibility-warning.ts
537
515
  function logV2CompatibilityWarning({
@@ -724,7 +702,7 @@ function resolveEmbeddingModel(model) {
724
702
  return getGlobalProvider().embeddingModel(model);
725
703
  }
726
704
  function resolveTranscriptionModel(model) {
727
- var _a15, _b;
705
+ var _a14, _b;
728
706
  if (typeof model !== "string") {
729
707
  if (model.specificationVersion !== "v3" && model.specificationVersion !== "v2") {
730
708
  const unsupportedModel = model;
@@ -736,10 +714,10 @@ function resolveTranscriptionModel(model) {
736
714
  }
737
715
  return asTranscriptionModelV3(model);
738
716
  }
739
- return (_b = (_a15 = getGlobalProvider()).transcriptionModel) == null ? void 0 : _b.call(_a15, model);
717
+ return (_b = (_a14 = getGlobalProvider()).transcriptionModel) == null ? void 0 : _b.call(_a14, model);
740
718
  }
741
719
  function resolveSpeechModel(model) {
742
- var _a15, _b;
720
+ var _a14, _b;
743
721
  if (typeof model !== "string") {
744
722
  if (model.specificationVersion !== "v3" && model.specificationVersion !== "v2") {
745
723
  const unsupportedModel = model;
@@ -751,7 +729,7 @@ function resolveSpeechModel(model) {
751
729
  }
752
730
  return asSpeechModelV3(model);
753
731
  }
754
- return (_b = (_a15 = getGlobalProvider()).speechModel) == null ? void 0 : _b.call(_a15, model);
732
+ return (_b = (_a14 = getGlobalProvider()).speechModel) == null ? void 0 : _b.call(_a14, model);
755
733
  }
756
734
  function resolveImageModel(model) {
757
735
  if (typeof model !== "string") {
@@ -768,15 +746,15 @@ function resolveImageModel(model) {
768
746
  return getGlobalProvider().imageModel(model);
769
747
  }
770
748
  function getGlobalProvider() {
771
- var _a15;
772
- return (_a15 = globalThis.AI_SDK_DEFAULT_PROVIDER) != null ? _a15 : import_gateway.gateway;
749
+ var _a14;
750
+ return (_a14 = globalThis.AI_SDK_DEFAULT_PROVIDER) != null ? _a14 : import_gateway.gateway;
773
751
  }
774
752
 
775
753
  // src/prompt/convert-to-language-model-prompt.ts
776
- var import_provider_utils4 = require("@ai-sdk/provider-utils");
754
+ var import_provider_utils6 = require("@ai-sdk/provider-utils");
777
755
 
778
756
  // src/util/detect-media-type.ts
779
- var import_provider_utils = require("@ai-sdk/provider-utils");
757
+ var import_provider_utils2 = require("@ai-sdk/provider-utils");
780
758
  var imageMediaTypeSignatures = [
781
759
  {
782
760
  mediaType: "image/gif",
@@ -932,7 +910,7 @@ var audioMediaTypeSignatures = [
932
910
  }
933
911
  ];
934
912
  var stripID3 = (data) => {
935
- const bytes = typeof data === "string" ? (0, import_provider_utils.convertBase64ToUint8Array)(data) : data;
913
+ const bytes = typeof data === "string" ? (0, import_provider_utils2.convertBase64ToUint8Array)(data) : data;
936
914
  const id3Size = (bytes[6] & 127) << 21 | (bytes[7] & 127) << 14 | (bytes[8] & 127) << 7 | bytes[9] & 127;
937
915
  return bytes.slice(id3Size + 10);
938
916
  };
@@ -947,7 +925,7 @@ function detectMediaType({
947
925
  signatures
948
926
  }) {
949
927
  const processedData = stripID3TagsIfPresent(data);
950
- const bytes = typeof processedData === "string" ? (0, import_provider_utils.convertBase64ToUint8Array)(
928
+ const bytes = typeof processedData === "string" ? (0, import_provider_utils2.convertBase64ToUint8Array)(
951
929
  processedData.substring(0, Math.min(processedData.length, 24))
952
930
  ) : processedData;
953
931
  for (const signature of signatures) {
@@ -961,25 +939,26 @@ function detectMediaType({
961
939
  }
962
940
 
963
941
  // src/util/download/download.ts
964
- var import_provider_utils2 = require("@ai-sdk/provider-utils");
942
+ var import_provider_utils3 = require("@ai-sdk/provider-utils");
943
+ var import_provider_utils4 = require("@ai-sdk/provider-utils");
965
944
 
966
945
  // src/version.ts
967
- var VERSION = true ? "6.0.0-beta.157" : "0.0.0-test";
946
+ var VERSION = true ? "6.0.0-beta.160" : "0.0.0-test";
968
947
 
969
948
  // src/util/download/download.ts
970
949
  var download = async ({ url }) => {
971
- var _a15;
950
+ var _a14;
972
951
  const urlText = url.toString();
973
952
  try {
974
953
  const response = await fetch(urlText, {
975
- headers: (0, import_provider_utils2.withUserAgentSuffix)(
954
+ headers: (0, import_provider_utils4.withUserAgentSuffix)(
976
955
  {},
977
956
  `ai-sdk/${VERSION}`,
978
- (0, import_provider_utils2.getRuntimeEnvironmentUserAgent)()
957
+ (0, import_provider_utils4.getRuntimeEnvironmentUserAgent)()
979
958
  )
980
959
  });
981
960
  if (!response.ok) {
982
- throw new DownloadError({
961
+ throw new import_provider_utils3.DownloadError({
983
962
  url: urlText,
984
963
  statusCode: response.status,
985
964
  statusText: response.statusText
@@ -987,13 +966,13 @@ var download = async ({ url }) => {
987
966
  }
988
967
  return {
989
968
  data: new Uint8Array(await response.arrayBuffer()),
990
- mediaType: (_a15 = response.headers.get("content-type")) != null ? _a15 : void 0
969
+ mediaType: (_a14 = response.headers.get("content-type")) != null ? _a14 : void 0
991
970
  };
992
971
  } catch (error) {
993
- if (DownloadError.isInstance(error)) {
972
+ if (import_provider_utils3.DownloadError.isInstance(error)) {
994
973
  throw error;
995
974
  }
996
- throw new DownloadError({ url: urlText, cause: error });
975
+ throw new import_provider_utils3.DownloadError({ url: urlText, cause: error });
997
976
  }
998
977
  };
999
978
 
@@ -1005,8 +984,8 @@ var createDefaultDownloadFunction = (download2 = download) => (requestedDownload
1005
984
  );
1006
985
 
1007
986
  // src/prompt/data-content.ts
1008
- var import_provider17 = require("@ai-sdk/provider");
1009
- var import_provider_utils3 = require("@ai-sdk/provider-utils");
987
+ var import_provider16 = require("@ai-sdk/provider");
988
+ var import_provider_utils5 = require("@ai-sdk/provider-utils");
1010
989
  var import_v4 = require("zod/v4");
1011
990
 
1012
991
  // src/prompt/split-data-url.ts
@@ -1033,8 +1012,8 @@ var dataContentSchema = import_v4.z.union([
1033
1012
  import_v4.z.custom(
1034
1013
  // Buffer might not be available in some environments such as CloudFlare:
1035
1014
  (value) => {
1036
- var _a15, _b;
1037
- return (_b = (_a15 = globalThis.Buffer) == null ? void 0 : _a15.isBuffer(value)) != null ? _b : false;
1015
+ var _a14, _b;
1016
+ return (_b = (_a14 = globalThis.Buffer) == null ? void 0 : _a14.isBuffer(value)) != null ? _b : false;
1038
1017
  },
1039
1018
  { message: "Must be a Buffer" }
1040
1019
  )
@@ -1057,7 +1036,7 @@ function convertToLanguageModelV3DataContent(content) {
1057
1036
  content.toString()
1058
1037
  );
1059
1038
  if (dataUrlMediaType == null || base64Content == null) {
1060
- throw new import_provider17.AISDKError({
1039
+ throw new import_provider16.AISDKError({
1061
1040
  name: "InvalidDataContentError",
1062
1041
  message: `Invalid data URL format in content ${content.toString()}`
1063
1042
  });
@@ -1071,9 +1050,9 @@ function convertDataContentToBase64String(content) {
1071
1050
  return content;
1072
1051
  }
1073
1052
  if (content instanceof ArrayBuffer) {
1074
- return (0, import_provider_utils3.convertUint8ArrayToBase64)(new Uint8Array(content));
1053
+ return (0, import_provider_utils5.convertUint8ArrayToBase64)(new Uint8Array(content));
1075
1054
  }
1076
- return (0, import_provider_utils3.convertUint8ArrayToBase64)(content);
1055
+ return (0, import_provider_utils5.convertUint8ArrayToBase64)(content);
1077
1056
  }
1078
1057
  function convertDataContentToUint8Array(content) {
1079
1058
  if (content instanceof Uint8Array) {
@@ -1081,7 +1060,7 @@ function convertDataContentToUint8Array(content) {
1081
1060
  }
1082
1061
  if (typeof content === "string") {
1083
1062
  try {
1084
- return (0, import_provider_utils3.convertBase64ToUint8Array)(content);
1063
+ return (0, import_provider_utils5.convertBase64ToUint8Array)(content);
1085
1064
  } catch (error) {
1086
1065
  throw new InvalidDataContentError({
1087
1066
  message: "Invalid data content. Content string is not a base64-encoded media.",
@@ -1257,8 +1236,8 @@ async function downloadAssets(messages, download2, supportedUrls) {
1257
1236
  ).flat().filter(
1258
1237
  (part) => part.type === "image" || part.type === "file"
1259
1238
  ).map((part) => {
1260
- var _a15;
1261
- const mediaType = (_a15 = part.mediaType) != null ? _a15 : part.type === "image" ? "image/*" : void 0;
1239
+ var _a14;
1240
+ const mediaType = (_a14 = part.mediaType) != null ? _a14 : part.type === "image" ? "image/*" : void 0;
1262
1241
  let data = part.type === "image" ? part.image : part.data;
1263
1242
  if (typeof data === "string") {
1264
1243
  try {
@@ -1271,7 +1250,7 @@ async function downloadAssets(messages, download2, supportedUrls) {
1271
1250
  (part) => part.data instanceof URL
1272
1251
  ).map((part) => ({
1273
1252
  url: part.data,
1274
- isUrlSupportedByModel: part.mediaType != null && (0, import_provider_utils4.isUrlSupported)({
1253
+ isUrlSupportedByModel: part.mediaType != null && (0, import_provider_utils6.isUrlSupported)({
1275
1254
  url: part.data.toString(),
1276
1255
  mediaType: part.mediaType,
1277
1256
  supportedUrls
@@ -1288,7 +1267,7 @@ async function downloadAssets(messages, download2, supportedUrls) {
1288
1267
  );
1289
1268
  }
1290
1269
  function convertPartToLanguageModelPart(part, downloadedAssets) {
1291
- var _a15;
1270
+ var _a14;
1292
1271
  if (part.type === "text") {
1293
1272
  return {
1294
1273
  type: "text",
@@ -1321,7 +1300,7 @@ function convertPartToLanguageModelPart(part, downloadedAssets) {
1321
1300
  switch (type) {
1322
1301
  case "image": {
1323
1302
  if (data instanceof Uint8Array || typeof data === "string") {
1324
- mediaType = (_a15 = detectMediaType({ data, signatures: imageMediaTypeSignatures })) != null ? _a15 : mediaType;
1303
+ mediaType = (_a14 = detectMediaType({ data, signatures: imageMediaTypeSignatures })) != null ? _a14 : mediaType;
1325
1304
  }
1326
1305
  return {
1327
1306
  type: "file",
@@ -1373,7 +1352,7 @@ function mapToolResultOutput(output) {
1373
1352
  }
1374
1353
 
1375
1354
  // src/prompt/create-tool-model-output.ts
1376
- var import_provider18 = require("@ai-sdk/provider");
1355
+ var import_provider17 = require("@ai-sdk/provider");
1377
1356
  async function createToolModelOutput({
1378
1357
  toolCallId,
1379
1358
  input,
@@ -1382,7 +1361,7 @@ async function createToolModelOutput({
1382
1361
  errorMode
1383
1362
  }) {
1384
1363
  if (errorMode === "text") {
1385
- return { type: "error-text", value: (0, import_provider18.getErrorMessage)(output) };
1364
+ return { type: "error-text", value: (0, import_provider17.getErrorMessage)(output) };
1386
1365
  } else if (errorMode === "json") {
1387
1366
  return { type: "error-json", value: toJSONValue(output) };
1388
1367
  }
@@ -1489,7 +1468,7 @@ function prepareCallSettings({
1489
1468
  }
1490
1469
 
1491
1470
  // src/prompt/prepare-tools-and-tool-choice.ts
1492
- var import_provider_utils5 = require("@ai-sdk/provider-utils");
1471
+ var import_provider_utils7 = require("@ai-sdk/provider-utils");
1493
1472
 
1494
1473
  // src/util/is-non-empty-object.ts
1495
1474
  function isNonEmptyObject(object2) {
@@ -1509,10 +1488,10 @@ async function prepareToolsAndToolChoice({
1509
1488
  };
1510
1489
  }
1511
1490
  const filteredTools = activeTools != null ? Object.entries(tools).filter(
1512
- ([name15]) => activeTools.includes(name15)
1491
+ ([name14]) => activeTools.includes(name14)
1513
1492
  ) : Object.entries(tools);
1514
1493
  const languageModelTools = [];
1515
- for (const [name15, tool2] of filteredTools) {
1494
+ for (const [name14, tool2] of filteredTools) {
1516
1495
  const toolType = tool2.type;
1517
1496
  switch (toolType) {
1518
1497
  case void 0:
@@ -1520,9 +1499,9 @@ async function prepareToolsAndToolChoice({
1520
1499
  case "function":
1521
1500
  languageModelTools.push({
1522
1501
  type: "function",
1523
- name: name15,
1502
+ name: name14,
1524
1503
  description: tool2.description,
1525
- inputSchema: await (0, import_provider_utils5.asSchema)(tool2.inputSchema).jsonSchema,
1504
+ inputSchema: await (0, import_provider_utils7.asSchema)(tool2.inputSchema).jsonSchema,
1526
1505
  ...tool2.inputExamples != null ? { inputExamples: tool2.inputExamples } : {},
1527
1506
  providerOptions: tool2.providerOptions,
1528
1507
  ...tool2.strict != null ? { strict: tool2.strict } : {}
@@ -1531,7 +1510,7 @@ async function prepareToolsAndToolChoice({
1531
1510
  case "provider":
1532
1511
  languageModelTools.push({
1533
1512
  type: "provider",
1534
- name: name15,
1513
+ name: name14,
1535
1514
  id: tool2.id,
1536
1515
  args: tool2.args
1537
1516
  });
@@ -1549,8 +1528,8 @@ async function prepareToolsAndToolChoice({
1549
1528
  }
1550
1529
 
1551
1530
  // src/prompt/standardize-prompt.ts
1552
- var import_provider19 = require("@ai-sdk/provider");
1553
- var import_provider_utils6 = require("@ai-sdk/provider-utils");
1531
+ var import_provider18 = require("@ai-sdk/provider");
1532
+ var import_provider_utils8 = require("@ai-sdk/provider-utils");
1554
1533
  var import_v46 = require("zod/v4");
1555
1534
 
1556
1535
  // src/prompt/message.ts
@@ -1762,13 +1741,13 @@ var modelMessageSchema = import_v45.z.union([
1762
1741
  // src/prompt/standardize-prompt.ts
1763
1742
  async function standardizePrompt(prompt) {
1764
1743
  if (prompt.prompt == null && prompt.messages == null) {
1765
- throw new import_provider19.InvalidPromptError({
1744
+ throw new import_provider18.InvalidPromptError({
1766
1745
  prompt,
1767
1746
  message: "prompt or messages must be defined"
1768
1747
  });
1769
1748
  }
1770
1749
  if (prompt.prompt != null && prompt.messages != null) {
1771
- throw new import_provider19.InvalidPromptError({
1750
+ throw new import_provider18.InvalidPromptError({
1772
1751
  prompt,
1773
1752
  message: "prompt and messages cannot be defined at the same time"
1774
1753
  });
@@ -1776,7 +1755,7 @@ async function standardizePrompt(prompt) {
1776
1755
  if (prompt.system != null && typeof prompt.system !== "string" && !asArray(prompt.system).every(
1777
1756
  (message) => typeof message === "object" && message !== null && "role" in message && message.role === "system"
1778
1757
  )) {
1779
- throw new import_provider19.InvalidPromptError({
1758
+ throw new import_provider18.InvalidPromptError({
1780
1759
  prompt,
1781
1760
  message: "system must be a string, SystemModelMessage, or array of SystemModelMessage"
1782
1761
  });
@@ -1789,23 +1768,23 @@ async function standardizePrompt(prompt) {
1789
1768
  } else if (prompt.messages != null) {
1790
1769
  messages = prompt.messages;
1791
1770
  } else {
1792
- throw new import_provider19.InvalidPromptError({
1771
+ throw new import_provider18.InvalidPromptError({
1793
1772
  prompt,
1794
1773
  message: "prompt or messages must be defined"
1795
1774
  });
1796
1775
  }
1797
1776
  if (messages.length === 0) {
1798
- throw new import_provider19.InvalidPromptError({
1777
+ throw new import_provider18.InvalidPromptError({
1799
1778
  prompt,
1800
1779
  message: "messages must not be empty"
1801
1780
  });
1802
1781
  }
1803
- const validationResult = await (0, import_provider_utils6.safeValidateTypes)({
1782
+ const validationResult = await (0, import_provider_utils8.safeValidateTypes)({
1804
1783
  value: messages,
1805
1784
  schema: import_v46.z.array(modelMessageSchema)
1806
1785
  });
1807
1786
  if (!validationResult.success) {
1808
- throw new import_provider19.InvalidPromptError({
1787
+ throw new import_provider18.InvalidPromptError({
1809
1788
  prompt,
1810
1789
  message: "The messages do not match the ModelMessage[] schema.",
1811
1790
  cause: validationResult.error
@@ -1819,14 +1798,14 @@ async function standardizePrompt(prompt) {
1819
1798
 
1820
1799
  // src/prompt/wrap-gateway-error.ts
1821
1800
  var import_gateway2 = require("@ai-sdk/gateway");
1822
- var import_provider20 = require("@ai-sdk/provider");
1801
+ var import_provider19 = require("@ai-sdk/provider");
1823
1802
  function wrapGatewayError(error) {
1824
1803
  if (!import_gateway2.GatewayAuthenticationError.isInstance(error))
1825
1804
  return error;
1826
1805
  const isProductionEnv = (process == null ? void 0 : process.env.NODE_ENV) === "production";
1827
1806
  const moreInfoURL = "https://v6.ai-sdk.dev/unauthenticated-ai-gateway";
1828
1807
  if (isProductionEnv) {
1829
- return new import_provider20.AISDKError({
1808
+ return new import_provider19.AISDKError({
1830
1809
  name: "GatewayError",
1831
1810
  message: `Unauthenticated. Configure AI_GATEWAY_API_KEY or use a provider module. Learn more: ${moreInfoURL}`
1832
1811
  });
@@ -1867,7 +1846,7 @@ function getBaseTelemetryAttributes({
1867
1846
  telemetry,
1868
1847
  headers
1869
1848
  }) {
1870
- var _a15;
1849
+ var _a14;
1871
1850
  return {
1872
1851
  "ai.model.provider": model.provider,
1873
1852
  "ai.model.id": model.modelId,
@@ -1877,7 +1856,7 @@ function getBaseTelemetryAttributes({
1877
1856
  return attributes;
1878
1857
  }, {}),
1879
1858
  // add metadata as attributes:
1880
- ...Object.entries((_a15 = telemetry == null ? void 0 : telemetry.metadata) != null ? _a15 : {}).reduce(
1859
+ ...Object.entries((_a14 = telemetry == null ? void 0 : telemetry.metadata) != null ? _a14 : {}).reduce(
1881
1860
  (attributes, [key, value]) => {
1882
1861
  attributes[`ai.telemetry.metadata.${key}`] = value;
1883
1862
  return attributes;
@@ -1902,7 +1881,7 @@ var noopTracer = {
1902
1881
  startSpan() {
1903
1882
  return noopSpan;
1904
1883
  },
1905
- startActiveSpan(name15, arg1, arg2, arg3) {
1884
+ startActiveSpan(name14, arg1, arg2, arg3) {
1906
1885
  if (typeof arg1 === "function") {
1907
1886
  return arg1(noopSpan);
1908
1887
  }
@@ -1972,14 +1951,14 @@ function getTracer({
1972
1951
  // src/telemetry/record-span.ts
1973
1952
  var import_api2 = require("@opentelemetry/api");
1974
1953
  async function recordSpan({
1975
- name: name15,
1954
+ name: name14,
1976
1955
  tracer,
1977
1956
  attributes,
1978
1957
  fn,
1979
1958
  endWhenDone = true
1980
1959
  }) {
1981
1960
  return tracer.startActiveSpan(
1982
- name15,
1961
+ name14,
1983
1962
  { attributes: await attributes },
1984
1963
  async (span) => {
1985
1964
  try {
@@ -2109,12 +2088,12 @@ function createNullLanguageModelUsage() {
2109
2088
  };
2110
2089
  }
2111
2090
  function addLanguageModelUsage(usage1, usage2) {
2112
- var _a15, _b, _c, _d, _e, _f, _g, _h, _i, _j;
2091
+ var _a14, _b, _c, _d, _e, _f, _g, _h, _i, _j;
2113
2092
  return {
2114
2093
  inputTokens: addTokenCounts(usage1.inputTokens, usage2.inputTokens),
2115
2094
  inputTokenDetails: {
2116
2095
  noCacheTokens: addTokenCounts(
2117
- (_a15 = usage1.inputTokenDetails) == null ? void 0 : _a15.noCacheTokens,
2096
+ (_a14 = usage1.inputTokenDetails) == null ? void 0 : _a14.noCacheTokens,
2118
2097
  (_b = usage2.inputTokenDetails) == null ? void 0 : _b.noCacheTokens
2119
2098
  ),
2120
2099
  cacheReadTokens: addTokenCounts(
@@ -2160,8 +2139,8 @@ function addImageModelUsage(usage1, usage2) {
2160
2139
  }
2161
2140
 
2162
2141
  // src/util/retry-with-exponential-backoff.ts
2163
- var import_provider21 = require("@ai-sdk/provider");
2164
- var import_provider_utils7 = require("@ai-sdk/provider-utils");
2142
+ var import_provider20 = require("@ai-sdk/provider");
2143
+ var import_provider_utils9 = require("@ai-sdk/provider-utils");
2165
2144
  function getRetryDelayInMs({
2166
2145
  error,
2167
2146
  exponentialBackoffDelay
@@ -2211,13 +2190,13 @@ async function _retryWithExponentialBackoff(f, {
2211
2190
  try {
2212
2191
  return await f();
2213
2192
  } catch (error) {
2214
- if ((0, import_provider_utils7.isAbortError)(error)) {
2193
+ if ((0, import_provider_utils9.isAbortError)(error)) {
2215
2194
  throw error;
2216
2195
  }
2217
2196
  if (maxRetries === 0) {
2218
2197
  throw error;
2219
2198
  }
2220
- const errorMessage = (0, import_provider_utils7.getErrorMessage)(error);
2199
+ const errorMessage = (0, import_provider_utils9.getErrorMessage)(error);
2221
2200
  const newErrors = [...errors, error];
2222
2201
  const tryNumber = newErrors.length;
2223
2202
  if (tryNumber > maxRetries) {
@@ -2227,8 +2206,8 @@ async function _retryWithExponentialBackoff(f, {
2227
2206
  errors: newErrors
2228
2207
  });
2229
2208
  }
2230
- if (error instanceof Error && import_provider21.APICallError.isInstance(error) && error.isRetryable === true && tryNumber <= maxRetries) {
2231
- await (0, import_provider_utils7.delay)(
2209
+ if (error instanceof Error && import_provider20.APICallError.isInstance(error) && error.isRetryable === true && tryNumber <= maxRetries) {
2210
+ await (0, import_provider_utils9.delay)(
2232
2211
  getRetryDelayInMs({
2233
2212
  error,
2234
2213
  exponentialBackoffDelay: delayInMs
@@ -2352,7 +2331,7 @@ function collectToolApprovals({
2352
2331
  }
2353
2332
 
2354
2333
  // src/generate-text/execute-tool-call.ts
2355
- var import_provider_utils8 = require("@ai-sdk/provider-utils");
2334
+ var import_provider_utils10 = require("@ai-sdk/provider-utils");
2356
2335
  async function executeToolCall({
2357
2336
  toolCall,
2358
2337
  tools,
@@ -2388,7 +2367,7 @@ async function executeToolCall({
2388
2367
  fn: async (span) => {
2389
2368
  let output;
2390
2369
  try {
2391
- const stream = (0, import_provider_utils8.executeTool)({
2370
+ const stream = (0, import_provider_utils10.executeTool)({
2392
2371
  execute: tool2.execute.bind(tool2),
2393
2372
  input,
2394
2373
  options: {
@@ -2460,7 +2439,7 @@ function extractTextContent(content) {
2460
2439
  }
2461
2440
 
2462
2441
  // src/generate-text/generated-file.ts
2463
- var import_provider_utils9 = require("@ai-sdk/provider-utils");
2442
+ var import_provider_utils11 = require("@ai-sdk/provider-utils");
2464
2443
  var DefaultGeneratedFile = class {
2465
2444
  constructor({
2466
2445
  data,
@@ -2474,14 +2453,14 @@ var DefaultGeneratedFile = class {
2474
2453
  // lazy conversion with caching to avoid unnecessary conversion overhead:
2475
2454
  get base64() {
2476
2455
  if (this.base64Data == null) {
2477
- this.base64Data = (0, import_provider_utils9.convertUint8ArrayToBase64)(this.uint8ArrayData);
2456
+ this.base64Data = (0, import_provider_utils11.convertUint8ArrayToBase64)(this.uint8ArrayData);
2478
2457
  }
2479
2458
  return this.base64Data;
2480
2459
  }
2481
2460
  // lazy conversion with caching to avoid unnecessary conversion overhead:
2482
2461
  get uint8Array() {
2483
2462
  if (this.uint8ArrayData == null) {
2484
- this.uint8ArrayData = (0, import_provider_utils9.convertBase64ToUint8Array)(this.base64Data);
2463
+ this.uint8ArrayData = (0, import_provider_utils11.convertBase64ToUint8Array)(this.base64Data);
2485
2464
  }
2486
2465
  return this.uint8ArrayData;
2487
2466
  }
@@ -2522,11 +2501,11 @@ __export(output_exports, {
2522
2501
  object: () => object,
2523
2502
  text: () => text
2524
2503
  });
2525
- var import_provider22 = require("@ai-sdk/provider");
2526
- var import_provider_utils11 = require("@ai-sdk/provider-utils");
2504
+ var import_provider21 = require("@ai-sdk/provider");
2505
+ var import_provider_utils13 = require("@ai-sdk/provider-utils");
2527
2506
 
2528
2507
  // src/util/parse-partial-json.ts
2529
- var import_provider_utils10 = require("@ai-sdk/provider-utils");
2508
+ var import_provider_utils12 = require("@ai-sdk/provider-utils");
2530
2509
 
2531
2510
  // src/util/fix-json.ts
2532
2511
  function fixJson(input) {
@@ -2851,11 +2830,11 @@ async function parsePartialJson(jsonText) {
2851
2830
  if (jsonText === void 0) {
2852
2831
  return { value: void 0, state: "undefined-input" };
2853
2832
  }
2854
- let result = await (0, import_provider_utils10.safeParseJSON)({ text: jsonText });
2833
+ let result = await (0, import_provider_utils12.safeParseJSON)({ text: jsonText });
2855
2834
  if (result.success) {
2856
2835
  return { value: result.value, state: "successful-parse" };
2857
2836
  }
2858
- result = await (0, import_provider_utils10.safeParseJSON)({ text: fixJson(jsonText) });
2837
+ result = await (0, import_provider_utils12.safeParseJSON)({ text: fixJson(jsonText) });
2859
2838
  if (result.success) {
2860
2839
  return { value: result.value, state: "repaired-parse" };
2861
2840
  }
@@ -2874,19 +2853,19 @@ var text = () => ({
2874
2853
  });
2875
2854
  var object = ({
2876
2855
  schema: inputSchema,
2877
- name: name15,
2856
+ name: name14,
2878
2857
  description
2879
2858
  }) => {
2880
- const schema = (0, import_provider_utils11.asSchema)(inputSchema);
2859
+ const schema = (0, import_provider_utils13.asSchema)(inputSchema);
2881
2860
  return {
2882
- responseFormat: (0, import_provider_utils11.resolve)(schema.jsonSchema).then((jsonSchema2) => ({
2861
+ responseFormat: (0, import_provider_utils13.resolve)(schema.jsonSchema).then((jsonSchema2) => ({
2883
2862
  type: "json",
2884
2863
  schema: jsonSchema2,
2885
- ...name15 != null && { name: name15 },
2864
+ ...name14 != null && { name: name14 },
2886
2865
  ...description != null && { description }
2887
2866
  })),
2888
2867
  async parseCompleteOutput({ text: text2 }, context) {
2889
- const parseResult = await (0, import_provider_utils11.safeParseJSON)({ text: text2 });
2868
+ const parseResult = await (0, import_provider_utils13.safeParseJSON)({ text: text2 });
2890
2869
  if (!parseResult.success) {
2891
2870
  throw new NoObjectGeneratedError({
2892
2871
  message: "No object generated: could not parse the response.",
@@ -2897,7 +2876,7 @@ var object = ({
2897
2876
  finishReason: context.finishReason
2898
2877
  });
2899
2878
  }
2900
- const validationResult = await (0, import_provider_utils11.safeValidateTypes)({
2879
+ const validationResult = await (0, import_provider_utils13.safeValidateTypes)({
2901
2880
  value: parseResult.value,
2902
2881
  schema
2903
2882
  });
@@ -2933,13 +2912,13 @@ var object = ({
2933
2912
  };
2934
2913
  var array = ({
2935
2914
  element: inputElementSchema,
2936
- name: name15,
2915
+ name: name14,
2937
2916
  description
2938
2917
  }) => {
2939
- const elementSchema = (0, import_provider_utils11.asSchema)(inputElementSchema);
2918
+ const elementSchema = (0, import_provider_utils13.asSchema)(inputElementSchema);
2940
2919
  return {
2941
2920
  // JSON schema that describes an array of elements:
2942
- responseFormat: (0, import_provider_utils11.resolve)(elementSchema.jsonSchema).then((jsonSchema2) => {
2921
+ responseFormat: (0, import_provider_utils13.resolve)(elementSchema.jsonSchema).then((jsonSchema2) => {
2943
2922
  const { $schema, ...itemSchema } = jsonSchema2;
2944
2923
  return {
2945
2924
  type: "json",
@@ -2952,12 +2931,12 @@ var array = ({
2952
2931
  required: ["elements"],
2953
2932
  additionalProperties: false
2954
2933
  },
2955
- ...name15 != null && { name: name15 },
2934
+ ...name14 != null && { name: name14 },
2956
2935
  ...description != null && { description }
2957
2936
  };
2958
2937
  }),
2959
2938
  async parseCompleteOutput({ text: text2 }, context) {
2960
- const parseResult = await (0, import_provider_utils11.safeParseJSON)({ text: text2 });
2939
+ const parseResult = await (0, import_provider_utils13.safeParseJSON)({ text: text2 });
2961
2940
  if (!parseResult.success) {
2962
2941
  throw new NoObjectGeneratedError({
2963
2942
  message: "No object generated: could not parse the response.",
@@ -2972,7 +2951,7 @@ var array = ({
2972
2951
  if (outerValue == null || typeof outerValue !== "object" || !("elements" in outerValue) || !Array.isArray(outerValue.elements)) {
2973
2952
  throw new NoObjectGeneratedError({
2974
2953
  message: "No object generated: response did not match schema.",
2975
- cause: new import_provider22.TypeValidationError({
2954
+ cause: new import_provider21.TypeValidationError({
2976
2955
  value: outerValue,
2977
2956
  cause: "response must be an object with an elements array"
2978
2957
  }),
@@ -2983,7 +2962,7 @@ var array = ({
2983
2962
  });
2984
2963
  }
2985
2964
  for (const element of outerValue.elements) {
2986
- const validationResult = await (0, import_provider_utils11.safeValidateTypes)({
2965
+ const validationResult = await (0, import_provider_utils13.safeValidateTypes)({
2987
2966
  value: element,
2988
2967
  schema: elementSchema
2989
2968
  });
@@ -3016,7 +2995,7 @@ var array = ({
3016
2995
  const rawElements = result.state === "repaired-parse" && outerValue.elements.length > 0 ? outerValue.elements.slice(0, -1) : outerValue.elements;
3017
2996
  const parsedElements = [];
3018
2997
  for (const rawElement of rawElements) {
3019
- const validationResult = await (0, import_provider_utils11.safeValidateTypes)({
2998
+ const validationResult = await (0, import_provider_utils13.safeValidateTypes)({
3020
2999
  value: rawElement,
3021
3000
  schema: elementSchema
3022
3001
  });
@@ -3032,7 +3011,7 @@ var array = ({
3032
3011
  };
3033
3012
  var choice = ({
3034
3013
  options: choiceOptions,
3035
- name: name15,
3014
+ name: name14,
3036
3015
  description
3037
3016
  }) => {
3038
3017
  return {
@@ -3048,11 +3027,11 @@ var choice = ({
3048
3027
  required: ["result"],
3049
3028
  additionalProperties: false
3050
3029
  },
3051
- ...name15 != null && { name: name15 },
3030
+ ...name14 != null && { name: name14 },
3052
3031
  ...description != null && { description }
3053
3032
  }),
3054
3033
  async parseCompleteOutput({ text: text2 }, context) {
3055
- const parseResult = await (0, import_provider_utils11.safeParseJSON)({ text: text2 });
3034
+ const parseResult = await (0, import_provider_utils13.safeParseJSON)({ text: text2 });
3056
3035
  if (!parseResult.success) {
3057
3036
  throw new NoObjectGeneratedError({
3058
3037
  message: "No object generated: could not parse the response.",
@@ -3067,7 +3046,7 @@ var choice = ({
3067
3046
  if (outerValue == null || typeof outerValue !== "object" || !("result" in outerValue) || typeof outerValue.result !== "string" || !choiceOptions.includes(outerValue.result)) {
3068
3047
  throw new NoObjectGeneratedError({
3069
3048
  message: "No object generated: response did not match schema.",
3070
- cause: new import_provider22.TypeValidationError({
3049
+ cause: new import_provider21.TypeValidationError({
3071
3050
  value: outerValue,
3072
3051
  cause: "response must be an object that contains a choice value."
3073
3052
  }),
@@ -3106,17 +3085,17 @@ var choice = ({
3106
3085
  };
3107
3086
  };
3108
3087
  var json = ({
3109
- name: name15,
3088
+ name: name14,
3110
3089
  description
3111
3090
  } = {}) => {
3112
3091
  return {
3113
3092
  responseFormat: Promise.resolve({
3114
3093
  type: "json",
3115
- ...name15 != null && { name: name15 },
3094
+ ...name14 != null && { name: name14 },
3116
3095
  ...description != null && { description }
3117
3096
  }),
3118
3097
  async parseCompleteOutput({ text: text2 }, context) {
3119
- const parseResult = await (0, import_provider_utils11.safeParseJSON)({ text: text2 });
3098
+ const parseResult = await (0, import_provider_utils13.safeParseJSON)({ text: text2 });
3120
3099
  if (!parseResult.success) {
3121
3100
  throw new NoObjectGeneratedError({
3122
3101
  message: "No object generated: could not parse the response.",
@@ -3146,7 +3125,7 @@ var json = ({
3146
3125
  };
3147
3126
 
3148
3127
  // src/generate-text/parse-tool-call.ts
3149
- var import_provider_utils12 = require("@ai-sdk/provider-utils");
3128
+ var import_provider_utils14 = require("@ai-sdk/provider-utils");
3150
3129
  async function parseToolCall({
3151
3130
  toolCall,
3152
3131
  tools,
@@ -3154,7 +3133,7 @@ async function parseToolCall({
3154
3133
  system,
3155
3134
  messages
3156
3135
  }) {
3157
- var _a15;
3136
+ var _a14;
3158
3137
  try {
3159
3138
  if (tools == null) {
3160
3139
  if (toolCall.providerExecuted && toolCall.dynamic) {
@@ -3175,7 +3154,7 @@ async function parseToolCall({
3175
3154
  tools,
3176
3155
  inputSchema: async ({ toolName }) => {
3177
3156
  const { inputSchema } = tools[toolName];
3178
- return await (0, import_provider_utils12.asSchema)(inputSchema).jsonSchema;
3157
+ return await (0, import_provider_utils14.asSchema)(inputSchema).jsonSchema;
3179
3158
  },
3180
3159
  system,
3181
3160
  messages,
@@ -3193,7 +3172,7 @@ async function parseToolCall({
3193
3172
  return await doParseToolCall({ toolCall: repairedToolCall, tools });
3194
3173
  }
3195
3174
  } catch (error) {
3196
- const parsedInput = await (0, import_provider_utils12.safeParseJSON)({ text: toolCall.input });
3175
+ const parsedInput = await (0, import_provider_utils14.safeParseJSON)({ text: toolCall.input });
3197
3176
  const input = parsedInput.success ? parsedInput.value : toolCall.input;
3198
3177
  return {
3199
3178
  type: "tool-call",
@@ -3203,14 +3182,14 @@ async function parseToolCall({
3203
3182
  dynamic: true,
3204
3183
  invalid: true,
3205
3184
  error,
3206
- title: (_a15 = tools == null ? void 0 : tools[toolCall.toolName]) == null ? void 0 : _a15.title,
3185
+ title: (_a14 = tools == null ? void 0 : tools[toolCall.toolName]) == null ? void 0 : _a14.title,
3207
3186
  providerExecuted: toolCall.providerExecuted,
3208
3187
  providerMetadata: toolCall.providerMetadata
3209
3188
  };
3210
3189
  }
3211
3190
  }
3212
3191
  async function parseProviderExecutedDynamicToolCall(toolCall) {
3213
- const parseResult = toolCall.input.trim() === "" ? { success: true, value: {} } : await (0, import_provider_utils12.safeParseJSON)({ text: toolCall.input });
3192
+ const parseResult = toolCall.input.trim() === "" ? { success: true, value: {} } : await (0, import_provider_utils14.safeParseJSON)({ text: toolCall.input });
3214
3193
  if (parseResult.success === false) {
3215
3194
  throw new InvalidToolInputError({
3216
3195
  toolName: toolCall.toolName,
@@ -3243,8 +3222,8 @@ async function doParseToolCall({
3243
3222
  availableTools: Object.keys(tools)
3244
3223
  });
3245
3224
  }
3246
- const schema = (0, import_provider_utils12.asSchema)(tool2.inputSchema);
3247
- const parseResult = toolCall.input.trim() === "" ? await (0, import_provider_utils12.safeValidateTypes)({ value: {}, schema }) : await (0, import_provider_utils12.safeParseJSON)({ text: toolCall.input, schema });
3225
+ const schema = (0, import_provider_utils14.asSchema)(tool2.inputSchema);
3226
+ const parseResult = toolCall.input.trim() === "" ? await (0, import_provider_utils14.safeValidateTypes)({ value: {}, schema }) : await (0, import_provider_utils14.safeParseJSON)({ text: toolCall.input, schema });
3248
3227
  if (parseResult.success === false) {
3249
3228
  throw new InvalidToolInputError({
3250
3229
  toolName,
@@ -3340,8 +3319,8 @@ function stepCountIs(stepCount) {
3340
3319
  }
3341
3320
  function hasToolCall(toolName) {
3342
3321
  return ({ steps }) => {
3343
- var _a15, _b, _c;
3344
- return (_c = (_b = (_a15 = steps[steps.length - 1]) == null ? void 0 : _a15.toolCalls) == null ? void 0 : _b.some(
3322
+ var _a14, _b, _c;
3323
+ return (_c = (_b = (_a14 = steps[steps.length - 1]) == null ? void 0 : _a14.toolCalls) == null ? void 0 : _b.some(
3345
3324
  (toolCall) => toolCall.toolName === toolName
3346
3325
  )) != null ? _c : false;
3347
3326
  };
@@ -3476,7 +3455,7 @@ async function toResponseMessages({
3476
3455
  }
3477
3456
 
3478
3457
  // src/generate-text/generate-text.ts
3479
- var originalGenerateId = (0, import_provider_utils13.createIdGenerator)({
3458
+ var originalGenerateId = (0, import_provider_utils15.createIdGenerator)({
3480
3459
  prefix: "aitxt",
3481
3460
  size: 24
3482
3461
  });
@@ -3517,7 +3496,7 @@ async function generateText({
3517
3496
  abortSignal
3518
3497
  });
3519
3498
  const callSettings = prepareCallSettings(settings);
3520
- const headersWithUserAgent = (0, import_provider_utils13.withUserAgentSuffix)(
3499
+ const headersWithUserAgent = (0, import_provider_utils15.withUserAgentSuffix)(
3521
3500
  headers != null ? headers : {},
3522
3501
  `ai/${VERSION}`
3523
3502
  );
@@ -3555,7 +3534,7 @@ async function generateText({
3555
3534
  }),
3556
3535
  tracer,
3557
3536
  fn: async (span) => {
3558
- var _a15, _b, _c, _d, _e, _f, _g, _h;
3537
+ var _a14, _b, _c, _d, _e, _f, _g, _h;
3559
3538
  const initialMessages = initialPrompt.messages;
3560
3539
  const responseMessages = [];
3561
3540
  const { approvedToolApprovals, deniedToolApprovals } = collectToolApprovals({ messages: initialMessages });
@@ -3618,7 +3597,7 @@ async function generateText({
3618
3597
  experimental_context
3619
3598
  }));
3620
3599
  const stepModel = resolveLanguageModel(
3621
- (_a15 = prepareStepResult == null ? void 0 : prepareStepResult.model) != null ? _a15 : model
3600
+ (_a14 = prepareStepResult == null ? void 0 : prepareStepResult.model) != null ? _a14 : model
3622
3601
  );
3623
3602
  const promptMessages = await convertToLanguageModelPrompt({
3624
3603
  prompt: {
@@ -3636,7 +3615,7 @@ async function generateText({
3636
3615
  });
3637
3616
  currentModelResponse = await retry(
3638
3617
  () => {
3639
- var _a16;
3618
+ var _a15;
3640
3619
  return recordSpan({
3641
3620
  name: "ai.generateText.doGenerate",
3642
3621
  attributes: selectTelemetryAttributes({
@@ -3668,14 +3647,14 @@ async function generateText({
3668
3647
  "gen_ai.request.max_tokens": settings.maxOutputTokens,
3669
3648
  "gen_ai.request.presence_penalty": settings.presencePenalty,
3670
3649
  "gen_ai.request.stop_sequences": settings.stopSequences,
3671
- "gen_ai.request.temperature": (_a16 = settings.temperature) != null ? _a16 : void 0,
3650
+ "gen_ai.request.temperature": (_a15 = settings.temperature) != null ? _a15 : void 0,
3672
3651
  "gen_ai.request.top_k": settings.topK,
3673
3652
  "gen_ai.request.top_p": settings.topP
3674
3653
  }
3675
3654
  }),
3676
3655
  tracer,
3677
3656
  fn: async (span2) => {
3678
- var _a17, _b2, _c2, _d2, _e2, _f2, _g2, _h2;
3657
+ var _a16, _b2, _c2, _d2, _e2, _f2, _g2, _h2;
3679
3658
  const result = await stepModel.doGenerate({
3680
3659
  ...callSettings2,
3681
3660
  tools: stepTools,
@@ -3687,7 +3666,7 @@ async function generateText({
3687
3666
  headers: headersWithUserAgent
3688
3667
  });
3689
3668
  const responseData = {
3690
- id: (_b2 = (_a17 = result.response) == null ? void 0 : _a17.id) != null ? _b2 : generateId2(),
3669
+ id: (_b2 = (_a16 = result.response) == null ? void 0 : _a16.id) != null ? _b2 : generateId2(),
3691
3670
  timestamp: (_d2 = (_c2 = result.response) == null ? void 0 : _c2.timestamp) != null ? _d2 : currentDate(),
3692
3671
  modelId: (_f2 = (_e2 = result.response) == null ? void 0 : _e2.modelId) != null ? _f2 : stepModel.modelId,
3693
3672
  headers: (_g2 = result.response) == null ? void 0 : _g2.headers,
@@ -3784,7 +3763,7 @@ async function generateText({
3784
3763
  toolCallId: toolCall.toolCallId,
3785
3764
  toolName: toolCall.toolName,
3786
3765
  input: toolCall.input,
3787
- error: (0, import_provider_utils13.getErrorMessage)(toolCall.error),
3766
+ error: (0, import_provider_utils15.getErrorMessage)(toolCall.error),
3788
3767
  dynamic: true
3789
3768
  });
3790
3769
  }
@@ -4099,8 +4078,8 @@ function asContent({
4099
4078
  }
4100
4079
 
4101
4080
  // src/generate-text/stream-text.ts
4102
- var import_provider23 = require("@ai-sdk/provider");
4103
- var import_provider_utils17 = require("@ai-sdk/provider-utils");
4081
+ var import_provider22 = require("@ai-sdk/provider");
4082
+ var import_provider_utils19 = require("@ai-sdk/provider-utils");
4104
4083
 
4105
4084
  // src/util/prepare-headers.ts
4106
4085
  function prepareHeaders(headers, defaultHeaders) {
@@ -4137,7 +4116,12 @@ function writeToServerResponse({
4137
4116
  headers,
4138
4117
  stream
4139
4118
  }) {
4140
- response.writeHead(status != null ? status : 200, statusText, headers);
4119
+ const statusCode = status != null ? status : 200;
4120
+ if (statusText !== void 0) {
4121
+ response.writeHead(statusCode, statusText, headers);
4122
+ } else {
4123
+ response.writeHead(statusCode, headers);
4124
+ }
4141
4125
  const reader = stream.getReader();
4142
4126
  const read = async () => {
4143
4127
  try {
@@ -4242,13 +4226,13 @@ function getResponseUIMessageId({
4242
4226
  }
4243
4227
 
4244
4228
  // src/ui/process-ui-message-stream.ts
4245
- var import_provider_utils15 = require("@ai-sdk/provider-utils");
4229
+ var import_provider_utils17 = require("@ai-sdk/provider-utils");
4246
4230
 
4247
4231
  // src/ui-message-stream/ui-message-chunks.ts
4248
4232
  var import_v47 = require("zod/v4");
4249
- var import_provider_utils14 = require("@ai-sdk/provider-utils");
4250
- var uiMessageChunkSchema = (0, import_provider_utils14.lazySchema)(
4251
- () => (0, import_provider_utils14.zodSchema)(
4233
+ var import_provider_utils16 = require("@ai-sdk/provider-utils");
4234
+ var uiMessageChunkSchema = (0, import_provider_utils16.lazySchema)(
4235
+ () => (0, import_provider_utils16.zodSchema)(
4252
4236
  import_v47.z.union([
4253
4237
  import_v47.z.strictObject({
4254
4238
  type: import_v47.z.literal("text-start"),
@@ -4506,7 +4490,7 @@ function processUIMessageStream({
4506
4490
  new TransformStream({
4507
4491
  async transform(chunk, controller) {
4508
4492
  await runUpdateMessageJob(async ({ state, write }) => {
4509
- var _a15, _b, _c, _d;
4493
+ var _a14, _b, _c, _d;
4510
4494
  function getToolInvocation(toolCallId) {
4511
4495
  const toolInvocations = state.message.parts.filter(isToolUIPart);
4512
4496
  const toolInvocation = toolInvocations.find(
@@ -4520,7 +4504,7 @@ function processUIMessageStream({
4520
4504
  return toolInvocation;
4521
4505
  }
4522
4506
  function updateToolPart(options) {
4523
- var _a16;
4507
+ var _a15;
4524
4508
  const part = state.message.parts.find(
4525
4509
  (part2) => isStaticToolUIPart(part2) && part2.toolCallId === options.toolCallId
4526
4510
  );
@@ -4536,7 +4520,7 @@ function processUIMessageStream({
4536
4520
  if (options.title !== void 0) {
4537
4521
  anyPart.title = options.title;
4538
4522
  }
4539
- anyPart.providerExecuted = (_a16 = anyOptions.providerExecuted) != null ? _a16 : part.providerExecuted;
4523
+ anyPart.providerExecuted = (_a15 = anyOptions.providerExecuted) != null ? _a15 : part.providerExecuted;
4540
4524
  if (anyOptions.providerMetadata != null && part.state === "input-available") {
4541
4525
  part.callProviderMetadata = anyOptions.providerMetadata;
4542
4526
  }
@@ -4557,7 +4541,7 @@ function processUIMessageStream({
4557
4541
  }
4558
4542
  }
4559
4543
  function updateDynamicToolPart(options) {
4560
- var _a16, _b2;
4544
+ var _a15, _b2;
4561
4545
  const part = state.message.parts.find(
4562
4546
  (part2) => part2.type === "dynamic-tool" && part2.toolCallId === options.toolCallId
4563
4547
  );
@@ -4569,7 +4553,7 @@ function processUIMessageStream({
4569
4553
  anyPart.input = anyOptions.input;
4570
4554
  anyPart.output = anyOptions.output;
4571
4555
  anyPart.errorText = anyOptions.errorText;
4572
- anyPart.rawInput = (_a16 = anyOptions.rawInput) != null ? _a16 : anyPart.rawInput;
4556
+ anyPart.rawInput = (_a15 = anyOptions.rawInput) != null ? _a15 : anyPart.rawInput;
4573
4557
  anyPart.preliminary = anyOptions.preliminary;
4574
4558
  if (options.title !== void 0) {
4575
4559
  anyPart.title = options.title;
@@ -4598,7 +4582,7 @@ function processUIMessageStream({
4598
4582
  if (metadata != null) {
4599
4583
  const mergedMetadata = state.message.metadata != null ? mergeObjects(state.message.metadata, metadata) : metadata;
4600
4584
  if (messageMetadataSchema != null) {
4601
- await (0, import_provider_utils15.validateTypes)({
4585
+ await (0, import_provider_utils17.validateTypes)({
4602
4586
  value: mergedMetadata,
4603
4587
  schema: messageMetadataSchema
4604
4588
  });
@@ -4622,7 +4606,7 @@ function processUIMessageStream({
4622
4606
  case "text-delta": {
4623
4607
  const textPart = state.activeTextParts[chunk.id];
4624
4608
  textPart.text += chunk.delta;
4625
- textPart.providerMetadata = (_a15 = chunk.providerMetadata) != null ? _a15 : textPart.providerMetadata;
4609
+ textPart.providerMetadata = (_a14 = chunk.providerMetadata) != null ? _a14 : textPart.providerMetadata;
4626
4610
  write();
4627
4611
  break;
4628
4612
  }
@@ -4917,7 +4901,7 @@ function processUIMessageStream({
4917
4901
  default: {
4918
4902
  if (isDataUIMessageChunk(chunk)) {
4919
4903
  if ((dataPartSchemas == null ? void 0 : dataPartSchemas[chunk.type]) != null) {
4920
- await (0, import_provider_utils15.validateTypes)({
4904
+ await (0, import_provider_utils17.validateTypes)({
4921
4905
  value: chunk.data,
4922
4906
  schema: dataPartSchemas[chunk.type]
4923
4907
  });
@@ -5061,11 +5045,11 @@ function createAsyncIterableStream(source) {
5061
5045
  const reader = this.getReader();
5062
5046
  let finished = false;
5063
5047
  async function cleanup(cancelStream) {
5064
- var _a15;
5048
+ var _a14;
5065
5049
  finished = true;
5066
5050
  try {
5067
5051
  if (cancelStream) {
5068
- await ((_a15 = reader.cancel) == null ? void 0 : _a15.call(reader));
5052
+ await ((_a14 = reader.cancel) == null ? void 0 : _a14.call(reader));
5069
5053
  }
5070
5054
  } finally {
5071
5055
  try {
@@ -5231,12 +5215,12 @@ function createStitchableStream() {
5231
5215
 
5232
5216
  // src/util/now.ts
5233
5217
  function now() {
5234
- var _a15, _b;
5235
- return (_b = (_a15 = globalThis == null ? void 0 : globalThis.performance) == null ? void 0 : _a15.now()) != null ? _b : Date.now();
5218
+ var _a14, _b;
5219
+ return (_b = (_a14 = globalThis == null ? void 0 : globalThis.performance) == null ? void 0 : _a14.now()) != null ? _b : Date.now();
5236
5220
  }
5237
5221
 
5238
5222
  // src/generate-text/run-tools-transformation.ts
5239
- var import_provider_utils16 = require("@ai-sdk/provider-utils");
5223
+ var import_provider_utils18 = require("@ai-sdk/provider-utils");
5240
5224
  function runToolsTransformation({
5241
5225
  tools,
5242
5226
  generatorStream,
@@ -5323,7 +5307,7 @@ function runToolsTransformation({
5323
5307
  toolCallId: toolCall.toolCallId,
5324
5308
  toolName: toolCall.toolName,
5325
5309
  input: toolCall.input,
5326
- error: (0, import_provider_utils16.getErrorMessage)(toolCall.error),
5310
+ error: (0, import_provider_utils18.getErrorMessage)(toolCall.error),
5327
5311
  dynamic: true,
5328
5312
  title: toolCall.title
5329
5313
  });
@@ -5445,7 +5429,7 @@ function runToolsTransformation({
5445
5429
  }
5446
5430
 
5447
5431
  // src/generate-text/stream-text.ts
5448
- var originalGenerateId2 = (0, import_provider_utils17.createIdGenerator)({
5432
+ var originalGenerateId2 = (0, import_provider_utils19.createIdGenerator)({
5449
5433
  prefix: "aitxt",
5450
5434
  size: 24
5451
5435
  });
@@ -5541,7 +5525,7 @@ function createOutputTransformStream(output) {
5541
5525
  }
5542
5526
  return new TransformStream({
5543
5527
  async transform(chunk, controller) {
5544
- var _a15;
5528
+ var _a14;
5545
5529
  if (chunk.type === "finish-step" && textChunk.length > 0) {
5546
5530
  publishTextChunk({ controller });
5547
5531
  }
@@ -5568,7 +5552,7 @@ function createOutputTransformStream(output) {
5568
5552
  }
5569
5553
  text2 += chunk.text;
5570
5554
  textChunk += chunk.text;
5571
- textProviderMetadata = (_a15 = chunk.providerMetadata) != null ? _a15 : textProviderMetadata;
5555
+ textProviderMetadata = (_a14 = chunk.providerMetadata) != null ? _a14 : textProviderMetadata;
5572
5556
  const result = await output.parsePartialOutput({ text: text2 });
5573
5557
  if (result !== void 0) {
5574
5558
  const currentJson = JSON.stringify(result.partial);
@@ -5612,9 +5596,9 @@ var DefaultStreamTextResult = class {
5612
5596
  experimental_context,
5613
5597
  download: download2
5614
5598
  }) {
5615
- this._totalUsage = new import_provider_utils17.DelayedPromise();
5616
- this._finishReason = new import_provider_utils17.DelayedPromise();
5617
- this._steps = new import_provider_utils17.DelayedPromise();
5599
+ this._totalUsage = new import_provider_utils19.DelayedPromise();
5600
+ this._finishReason = new import_provider_utils19.DelayedPromise();
5601
+ this._steps = new import_provider_utils19.DelayedPromise();
5618
5602
  this.outputSpecification = output;
5619
5603
  this.includeRawChunks = includeRawChunks;
5620
5604
  this.tools = tools;
@@ -5631,7 +5615,7 @@ var DefaultStreamTextResult = class {
5631
5615
  let activeReasoningContent = {};
5632
5616
  const eventProcessor = new TransformStream({
5633
5617
  async transform(chunk, controller) {
5634
- var _a15, _b, _c, _d;
5618
+ var _a14, _b, _c, _d;
5635
5619
  controller.enqueue(chunk);
5636
5620
  const { part } = chunk;
5637
5621
  if (part.type === "text-delta" || part.type === "reasoning-delta" || part.type === "source" || part.type === "tool-call" || part.type === "tool-result" || part.type === "tool-input-start" || part.type === "tool-input-delta" || part.type === "raw") {
@@ -5661,7 +5645,7 @@ var DefaultStreamTextResult = class {
5661
5645
  return;
5662
5646
  }
5663
5647
  activeText.text += part.text;
5664
- activeText.providerMetadata = (_a15 = part.providerMetadata) != null ? _a15 : activeText.providerMetadata;
5648
+ activeText.providerMetadata = (_a14 = part.providerMetadata) != null ? _a14 : activeText.providerMetadata;
5665
5649
  }
5666
5650
  if (part.type === "text-end") {
5667
5651
  const activeText = activeTextContent[part.id];
@@ -5821,8 +5805,8 @@ var DefaultStreamTextResult = class {
5821
5805
  "ai.response.text": { output: () => finalStep.text },
5822
5806
  "ai.response.toolCalls": {
5823
5807
  output: () => {
5824
- var _a15;
5825
- return ((_a15 = finalStep.toolCalls) == null ? void 0 : _a15.length) ? JSON.stringify(finalStep.toolCalls) : void 0;
5808
+ var _a14;
5809
+ return ((_a14 = finalStep.toolCalls) == null ? void 0 : _a14.length) ? JSON.stringify(finalStep.toolCalls) : void 0;
5826
5810
  }
5827
5811
  },
5828
5812
  "ai.response.providerMetadata": JSON.stringify(
@@ -5869,7 +5853,7 @@ var DefaultStreamTextResult = class {
5869
5853
  }
5870
5854
  controller.enqueue(value);
5871
5855
  } catch (error) {
5872
- if ((0, import_provider_utils17.isAbortError)(error) && (abortSignal == null ? void 0 : abortSignal.aborted)) {
5856
+ if ((0, import_provider_utils19.isAbortError)(error) && (abortSignal == null ? void 0 : abortSignal.aborted)) {
5873
5857
  abort();
5874
5858
  } else {
5875
5859
  controller.error(error);
@@ -6006,9 +5990,9 @@ var DefaultStreamTextResult = class {
6006
5990
  responseMessages,
6007
5991
  usage
6008
5992
  }) {
6009
- var _a15, _b, _c, _d, _e, _f;
5993
+ var _a14, _b, _c, _d, _e, _f;
6010
5994
  const includeRawChunks2 = self.includeRawChunks;
6011
- stepFinish = new import_provider_utils17.DelayedPromise();
5995
+ stepFinish = new import_provider_utils19.DelayedPromise();
6012
5996
  const stepInputMessages = [...initialMessages, ...responseMessages];
6013
5997
  const prepareStepResult = await (prepareStep == null ? void 0 : prepareStep({
6014
5998
  model,
@@ -6018,7 +6002,7 @@ var DefaultStreamTextResult = class {
6018
6002
  experimental_context
6019
6003
  }));
6020
6004
  const stepModel = resolveLanguageModel(
6021
- (_a15 = prepareStepResult == null ? void 0 : prepareStepResult.model) != null ? _a15 : model
6005
+ (_a14 = prepareStepResult == null ? void 0 : prepareStepResult.model) != null ? _a14 : model
6022
6006
  );
6023
6007
  const promptMessages = await convertToLanguageModelPrompt({
6024
6008
  prompt: {
@@ -6126,7 +6110,7 @@ var DefaultStreamTextResult = class {
6126
6110
  streamWithToolResults.pipeThrough(
6127
6111
  new TransformStream({
6128
6112
  async transform(chunk, controller) {
6129
- var _a16, _b2, _c2, _d2, _e2;
6113
+ var _a15, _b2, _c2, _d2, _e2;
6130
6114
  if (chunk.type === "stream-start") {
6131
6115
  warnings = chunk.warnings;
6132
6116
  return;
@@ -6199,7 +6183,7 @@ var DefaultStreamTextResult = class {
6199
6183
  }
6200
6184
  case "response-metadata": {
6201
6185
  stepResponse = {
6202
- id: (_a16 = chunk.id) != null ? _a16 : stepResponse.id,
6186
+ id: (_a15 = chunk.id) != null ? _a15 : stepResponse.id,
6203
6187
  timestamp: (_b2 = chunk.timestamp) != null ? _b2 : stepResponse.timestamp,
6204
6188
  modelId: (_c2 = chunk.modelId) != null ? _c2 : stepResponse.modelId
6205
6189
  };
@@ -6498,14 +6482,14 @@ var DefaultStreamTextResult = class {
6498
6482
  );
6499
6483
  }
6500
6484
  async consumeStream(options) {
6501
- var _a15;
6485
+ var _a14;
6502
6486
  try {
6503
6487
  await consumeStream({
6504
6488
  stream: this.fullStream,
6505
6489
  onError: options == null ? void 0 : options.onError
6506
6490
  });
6507
6491
  } catch (error) {
6508
- (_a15 = options == null ? void 0 : options.onError) == null ? void 0 : _a15.call(options, error);
6492
+ (_a14 = options == null ? void 0 : options.onError) == null ? void 0 : _a14.call(options, error);
6509
6493
  }
6510
6494
  }
6511
6495
  get experimental_partialOutputStream() {
@@ -6526,8 +6510,8 @@ var DefaultStreamTextResult = class {
6526
6510
  }
6527
6511
  get output() {
6528
6512
  return this.finalStep.then((step) => {
6529
- var _a15;
6530
- const output = (_a15 = this.outputSpecification) != null ? _a15 : text();
6513
+ var _a14;
6514
+ const output = (_a14 = this.outputSpecification) != null ? _a14 : text();
6531
6515
  return output.parseCompleteOutput(
6532
6516
  { text: step.text },
6533
6517
  {
@@ -6547,15 +6531,15 @@ var DefaultStreamTextResult = class {
6547
6531
  sendSources = false,
6548
6532
  sendStart = true,
6549
6533
  sendFinish = true,
6550
- onError = import_provider23.getErrorMessage
6534
+ onError = import_provider22.getErrorMessage
6551
6535
  } = {}) {
6552
6536
  const responseMessageId = generateMessageId != null ? getResponseUIMessageId({
6553
6537
  originalMessages,
6554
6538
  responseMessageId: generateMessageId
6555
6539
  }) : void 0;
6556
6540
  const isDynamic = (part) => {
6557
- var _a15;
6558
- const tool2 = (_a15 = this.tools) == null ? void 0 : _a15[part.toolName];
6541
+ var _a14;
6542
+ const tool2 = (_a14 = this.tools) == null ? void 0 : _a14[part.toolName];
6559
6543
  if (tool2 == null) {
6560
6544
  return part.dynamic;
6561
6545
  }
@@ -6893,10 +6877,10 @@ var ToolLoopAgent = class {
6893
6877
  return this.settings.tools;
6894
6878
  }
6895
6879
  async prepareCall(options) {
6896
- var _a15, _b, _c, _d;
6880
+ var _a14, _b, _c, _d;
6897
6881
  const baseCallArgs = {
6898
6882
  ...this.settings,
6899
- stopWhen: (_a15 = this.settings.stopWhen) != null ? _a15 : stepCountIs(20),
6883
+ stopWhen: (_a14 = this.settings.stopWhen) != null ? _a14 : stepCountIs(20),
6900
6884
  ...options
6901
6885
  };
6902
6886
  const preparedCallArgs = (_d = await ((_c = (_b = this.settings).prepareCall) == null ? void 0 : _c.call(_b, baseCallArgs))) != null ? _d : baseCallArgs;
@@ -6936,13 +6920,13 @@ var ToolLoopAgent = class {
6936
6920
  };
6937
6921
 
6938
6922
  // src/ui-message-stream/create-ui-message-stream.ts
6939
- var import_provider_utils18 = require("@ai-sdk/provider-utils");
6923
+ var import_provider_utils20 = require("@ai-sdk/provider-utils");
6940
6924
  function createUIMessageStream({
6941
6925
  execute,
6942
- onError = import_provider_utils18.getErrorMessage,
6926
+ onError = import_provider_utils20.getErrorMessage,
6943
6927
  originalMessages,
6944
6928
  onFinish,
6945
- generateId: generateId2 = import_provider_utils18.generateId
6929
+ generateId: generateId2 = import_provider_utils20.generateId
6946
6930
  }) {
6947
6931
  let controller;
6948
6932
  const ongoingStreamPromises = [];
@@ -7028,7 +7012,7 @@ function readUIMessageStream({
7028
7012
  onError,
7029
7013
  terminateOnError = false
7030
7014
  }) {
7031
- var _a15;
7015
+ var _a14;
7032
7016
  let controller;
7033
7017
  let hasErrored = false;
7034
7018
  const outputStream = new ReadableStream({
@@ -7037,7 +7021,7 @@ function readUIMessageStream({
7037
7021
  }
7038
7022
  });
7039
7023
  const state = createStreamingUIMessageState({
7040
- messageId: (_a15 = message == null ? void 0 : message.id) != null ? _a15 : "",
7024
+ messageId: (_a14 = message == null ? void 0 : message.id) != null ? _a14 : "",
7041
7025
  lastMessage: message
7042
7026
  });
7043
7027
  const handleError = (error) => {
@@ -7070,7 +7054,7 @@ function readUIMessageStream({
7070
7054
  }
7071
7055
 
7072
7056
  // src/ui/convert-to-model-messages.ts
7073
- var import_provider_utils19 = require("@ai-sdk/provider-utils");
7057
+ var import_provider_utils21 = require("@ai-sdk/provider-utils");
7074
7058
  async function convertToModelMessages(messages, options) {
7075
7059
  const modelMessages = [];
7076
7060
  if (options == null ? void 0 : options.ignoreIncompleteToolCalls) {
@@ -7104,7 +7088,7 @@ async function convertToModelMessages(messages, options) {
7104
7088
  modelMessages.push({
7105
7089
  role: "user",
7106
7090
  content: message.parts.map((part) => {
7107
- var _a15;
7091
+ var _a14;
7108
7092
  if (isTextUIPart(part)) {
7109
7093
  return {
7110
7094
  type: "text",
@@ -7122,12 +7106,12 @@ async function convertToModelMessages(messages, options) {
7122
7106
  };
7123
7107
  }
7124
7108
  if (isDataUIPart(part)) {
7125
- return (_a15 = options == null ? void 0 : options.convertDataPart) == null ? void 0 : _a15.call(
7109
+ return (_a14 = options == null ? void 0 : options.convertDataPart) == null ? void 0 : _a14.call(
7126
7110
  options,
7127
7111
  part
7128
7112
  );
7129
7113
  }
7130
- }).filter(import_provider_utils19.isNonNullable)
7114
+ }).filter(import_provider_utils21.isNonNullable)
7131
7115
  });
7132
7116
  break;
7133
7117
  }
@@ -7135,7 +7119,7 @@ async function convertToModelMessages(messages, options) {
7135
7119
  if (message.parts != null) {
7136
7120
  let block = [];
7137
7121
  async function processBlock() {
7138
- var _a15, _b, _c, _d, _e, _f;
7122
+ var _a14, _b, _c, _d, _e, _f;
7139
7123
  if (block.length === 0) {
7140
7124
  return;
7141
7125
  }
@@ -7167,7 +7151,7 @@ async function convertToModelMessages(messages, options) {
7167
7151
  type: "tool-call",
7168
7152
  toolCallId: part.toolCallId,
7169
7153
  toolName,
7170
- input: part.state === "output-error" ? (_a15 = part.input) != null ? _a15 : "rawInput" in part ? part.rawInput : void 0 : part.input,
7154
+ input: part.state === "output-error" ? (_a14 = part.input) != null ? _a14 : "rawInput" in part ? part.rawInput : void 0 : part.input,
7171
7155
  providerExecuted: part.providerExecuted,
7172
7156
  ...part.callProviderMetadata != null ? { providerOptions: part.callProviderMetadata } : {}
7173
7157
  });
@@ -7293,11 +7277,11 @@ async function convertToModelMessages(messages, options) {
7293
7277
  }
7294
7278
 
7295
7279
  // src/ui/validate-ui-messages.ts
7296
- var import_provider24 = require("@ai-sdk/provider");
7297
- var import_provider_utils20 = require("@ai-sdk/provider-utils");
7280
+ var import_provider23 = require("@ai-sdk/provider");
7281
+ var import_provider_utils22 = require("@ai-sdk/provider-utils");
7298
7282
  var import_v48 = require("zod/v4");
7299
- var uiMessagesSchema = (0, import_provider_utils20.lazySchema)(
7300
- () => (0, import_provider_utils20.zodSchema)(
7283
+ var uiMessagesSchema = (0, import_provider_utils22.lazySchema)(
7284
+ () => (0, import_provider_utils22.zodSchema)(
7301
7285
  import_v48.z.array(
7302
7286
  import_v48.z.object({
7303
7287
  id: import_v48.z.string(),
@@ -7571,13 +7555,13 @@ async function safeValidateUIMessages({
7571
7555
  })
7572
7556
  };
7573
7557
  }
7574
- const validatedMessages = await (0, import_provider_utils20.validateTypes)({
7558
+ const validatedMessages = await (0, import_provider_utils22.validateTypes)({
7575
7559
  value: messages,
7576
7560
  schema: uiMessagesSchema
7577
7561
  });
7578
7562
  if (metadataSchema) {
7579
7563
  for (const message of validatedMessages) {
7580
- await (0, import_provider_utils20.validateTypes)({
7564
+ await (0, import_provider_utils22.validateTypes)({
7581
7565
  value: message.metadata,
7582
7566
  schema: metadataSchema
7583
7567
  });
@@ -7594,13 +7578,13 @@ async function safeValidateUIMessages({
7594
7578
  if (!dataSchema) {
7595
7579
  return {
7596
7580
  success: false,
7597
- error: new import_provider24.TypeValidationError({
7581
+ error: new import_provider23.TypeValidationError({
7598
7582
  value: dataPart.data,
7599
7583
  cause: `No data schema found for data part ${dataName}`
7600
7584
  })
7601
7585
  };
7602
7586
  }
7603
- await (0, import_provider_utils20.validateTypes)({
7587
+ await (0, import_provider_utils22.validateTypes)({
7604
7588
  value: dataPart.data,
7605
7589
  schema: dataSchema
7606
7590
  });
@@ -7618,20 +7602,20 @@ async function safeValidateUIMessages({
7618
7602
  if (!tool2) {
7619
7603
  return {
7620
7604
  success: false,
7621
- error: new import_provider24.TypeValidationError({
7605
+ error: new import_provider23.TypeValidationError({
7622
7606
  value: toolPart.input,
7623
7607
  cause: `No tool schema found for tool part ${toolName}`
7624
7608
  })
7625
7609
  };
7626
7610
  }
7627
7611
  if (toolPart.state === "input-available" || toolPart.state === "output-available" || toolPart.state === "output-error") {
7628
- await (0, import_provider_utils20.validateTypes)({
7612
+ await (0, import_provider_utils22.validateTypes)({
7629
7613
  value: toolPart.input,
7630
7614
  schema: tool2.inputSchema
7631
7615
  });
7632
7616
  }
7633
7617
  if (toolPart.state === "output-available" && tool2.outputSchema) {
7634
- await (0, import_provider_utils20.validateTypes)({
7618
+ await (0, import_provider_utils22.validateTypes)({
7635
7619
  value: toolPart.output,
7636
7620
  schema: tool2.outputSchema
7637
7621
  });
@@ -7730,7 +7714,7 @@ async function pipeAgentUIStreamToResponse({
7730
7714
  }
7731
7715
 
7732
7716
  // src/embed/embed.ts
7733
- var import_provider_utils21 = require("@ai-sdk/provider-utils");
7717
+ var import_provider_utils23 = require("@ai-sdk/provider-utils");
7734
7718
  async function embed({
7735
7719
  model: modelArg,
7736
7720
  value,
@@ -7745,7 +7729,7 @@ async function embed({
7745
7729
  maxRetries: maxRetriesArg,
7746
7730
  abortSignal
7747
7731
  });
7748
- const headersWithUserAgent = (0, import_provider_utils21.withUserAgentSuffix)(
7732
+ const headersWithUserAgent = (0, import_provider_utils23.withUserAgentSuffix)(
7749
7733
  headers != null ? headers : {},
7750
7734
  `ai/${VERSION}`
7751
7735
  );
@@ -7787,7 +7771,7 @@ async function embed({
7787
7771
  }),
7788
7772
  tracer,
7789
7773
  fn: async (doEmbedSpan) => {
7790
- var _a15;
7774
+ var _a14;
7791
7775
  const modelResponse = await model.doEmbed({
7792
7776
  values: [value],
7793
7777
  abortSignal,
@@ -7795,7 +7779,7 @@ async function embed({
7795
7779
  providerOptions
7796
7780
  });
7797
7781
  const embedding2 = modelResponse.embeddings[0];
7798
- const usage2 = (_a15 = modelResponse.usage) != null ? _a15 : { tokens: NaN };
7782
+ const usage2 = (_a14 = modelResponse.usage) != null ? _a14 : { tokens: NaN };
7799
7783
  doEmbedSpan.setAttributes(
7800
7784
  await selectTelemetryAttributes({
7801
7785
  telemetry,
@@ -7853,7 +7837,7 @@ var DefaultEmbedResult = class {
7853
7837
  };
7854
7838
 
7855
7839
  // src/embed/embed-many.ts
7856
- var import_provider_utils22 = require("@ai-sdk/provider-utils");
7840
+ var import_provider_utils24 = require("@ai-sdk/provider-utils");
7857
7841
 
7858
7842
  // src/util/split-array.ts
7859
7843
  function splitArray(array2, chunkSize) {
@@ -7883,7 +7867,7 @@ async function embedMany({
7883
7867
  maxRetries: maxRetriesArg,
7884
7868
  abortSignal
7885
7869
  });
7886
- const headersWithUserAgent = (0, import_provider_utils22.withUserAgentSuffix)(
7870
+ const headersWithUserAgent = (0, import_provider_utils24.withUserAgentSuffix)(
7887
7871
  headers != null ? headers : {},
7888
7872
  `ai/${VERSION}`
7889
7873
  );
@@ -7909,7 +7893,7 @@ async function embedMany({
7909
7893
  }),
7910
7894
  tracer,
7911
7895
  fn: async (span) => {
7912
- var _a15;
7896
+ var _a14;
7913
7897
  const [maxEmbeddingsPerCall, supportsParallelCalls] = await Promise.all([
7914
7898
  model.maxEmbeddingsPerCall,
7915
7899
  model.supportsParallelCalls
@@ -7934,7 +7918,7 @@ async function embedMany({
7934
7918
  }),
7935
7919
  tracer,
7936
7920
  fn: async (doEmbedSpan) => {
7937
- var _a16;
7921
+ var _a15;
7938
7922
  const modelResponse = await model.doEmbed({
7939
7923
  values,
7940
7924
  abortSignal,
@@ -7942,7 +7926,7 @@ async function embedMany({
7942
7926
  providerOptions
7943
7927
  });
7944
7928
  const embeddings3 = modelResponse.embeddings;
7945
- const usage2 = (_a16 = modelResponse.usage) != null ? _a16 : { tokens: NaN };
7929
+ const usage2 = (_a15 = modelResponse.usage) != null ? _a15 : { tokens: NaN };
7946
7930
  doEmbedSpan.setAttributes(
7947
7931
  await selectTelemetryAttributes({
7948
7932
  telemetry,
@@ -8023,7 +8007,7 @@ async function embedMany({
8023
8007
  }),
8024
8008
  tracer,
8025
8009
  fn: async (doEmbedSpan) => {
8026
- var _a16;
8010
+ var _a15;
8027
8011
  const modelResponse = await model.doEmbed({
8028
8012
  values: chunk,
8029
8013
  abortSignal,
@@ -8031,7 +8015,7 @@ async function embedMany({
8031
8015
  providerOptions
8032
8016
  });
8033
8017
  const embeddings2 = modelResponse.embeddings;
8034
- const usage = (_a16 = modelResponse.usage) != null ? _a16 : { tokens: NaN };
8018
+ const usage = (_a15 = modelResponse.usage) != null ? _a15 : { tokens: NaN };
8035
8019
  doEmbedSpan.setAttributes(
8036
8020
  await selectTelemetryAttributes({
8037
8021
  telemetry,
@@ -8070,7 +8054,7 @@ async function embedMany({
8070
8054
  result.providerMetadata
8071
8055
  )) {
8072
8056
  providerMetadata[providerName] = {
8073
- ...(_a15 = providerMetadata[providerName]) != null ? _a15 : {},
8057
+ ...(_a14 = providerMetadata[providerName]) != null ? _a14 : {},
8074
8058
  ...metadata
8075
8059
  };
8076
8060
  }
@@ -8117,10 +8101,10 @@ var DefaultEmbedManyResult = class {
8117
8101
  };
8118
8102
 
8119
8103
  // src/generate-image/generate-image.ts
8120
- var import_provider_utils23 = require("@ai-sdk/provider-utils");
8104
+ var import_provider_utils25 = require("@ai-sdk/provider-utils");
8121
8105
  async function generateImage({
8122
8106
  model: modelArg,
8123
- prompt,
8107
+ prompt: promptArg,
8124
8108
  n = 1,
8125
8109
  maxImagesPerCall,
8126
8110
  size,
@@ -8131,9 +8115,9 @@ async function generateImage({
8131
8115
  abortSignal,
8132
8116
  headers
8133
8117
  }) {
8134
- var _a15, _b;
8118
+ var _a14, _b;
8135
8119
  const model = resolveImageModel(modelArg);
8136
- const headersWithUserAgent = (0, import_provider_utils23.withUserAgentSuffix)(
8120
+ const headersWithUserAgent = (0, import_provider_utils25.withUserAgentSuffix)(
8137
8121
  headers != null ? headers : {},
8138
8122
  `ai/${VERSION}`
8139
8123
  );
@@ -8141,7 +8125,7 @@ async function generateImage({
8141
8125
  maxRetries: maxRetriesArg,
8142
8126
  abortSignal
8143
8127
  });
8144
- const maxImagesPerCallWithDefault = (_a15 = maxImagesPerCall != null ? maxImagesPerCall : await invokeModelMaxImagesPerCall(model)) != null ? _a15 : 1;
8128
+ const maxImagesPerCallWithDefault = (_a14 = maxImagesPerCall != null ? maxImagesPerCall : await invokeModelMaxImagesPerCall(model)) != null ? _a14 : 1;
8145
8129
  const callCount = Math.ceil(n / maxImagesPerCallWithDefault);
8146
8130
  const callImageCounts = Array.from({ length: callCount }, (_, i) => {
8147
8131
  if (i < callCount - 1) {
@@ -8152,9 +8136,12 @@ async function generateImage({
8152
8136
  });
8153
8137
  const results = await Promise.all(
8154
8138
  callImageCounts.map(
8155
- async (callImageCount) => retry(
8156
- () => model.doGenerate({
8139
+ async (callImageCount) => retry(() => {
8140
+ const { prompt, files, mask } = normalizePrompt(promptArg);
8141
+ return model.doGenerate({
8157
8142
  prompt,
8143
+ files,
8144
+ mask,
8158
8145
  n: callImageCount,
8159
8146
  abortSignal,
8160
8147
  headers: headersWithUserAgent,
@@ -8162,8 +8149,8 @@ async function generateImage({
8162
8149
  aspectRatio,
8163
8150
  seed,
8164
8151
  providerOptions: providerOptions != null ? providerOptions : {}
8165
- })
8166
- )
8152
+ });
8153
+ })
8167
8154
  )
8168
8155
  );
8169
8156
  const images = [];
@@ -8179,13 +8166,13 @@ async function generateImage({
8179
8166
  images.push(
8180
8167
  ...result.images.map(
8181
8168
  (image) => {
8182
- var _a16;
8169
+ var _a15;
8183
8170
  return new DefaultGeneratedFile({
8184
8171
  data: image,
8185
- mediaType: (_a16 = detectMediaType({
8172
+ mediaType: (_a15 = detectMediaType({
8186
8173
  data: image,
8187
8174
  signatures: imageMediaTypeSignatures
8188
- })) != null ? _a16 : "image/png"
8175
+ })) != null ? _a15 : "image/png"
8189
8176
  });
8190
8177
  }
8191
8178
  )
@@ -8253,9 +8240,53 @@ async function invokeModelMaxImagesPerCall(model) {
8253
8240
  modelId: model.modelId
8254
8241
  });
8255
8242
  }
8243
+ function normalizePrompt(prompt) {
8244
+ if (typeof prompt === "string") {
8245
+ return { prompt, files: void 0, mask: void 0 };
8246
+ }
8247
+ return {
8248
+ prompt: prompt.text,
8249
+ files: prompt.images.map(toImageModelV3File),
8250
+ mask: prompt.mask ? toImageModelV3File(prompt.mask) : void 0
8251
+ };
8252
+ }
8253
+ function toImageModelV3File(dataContent) {
8254
+ if (typeof dataContent === "string" && dataContent.startsWith("http")) {
8255
+ return {
8256
+ type: "url",
8257
+ url: dataContent
8258
+ };
8259
+ }
8260
+ if (typeof dataContent === "string" && dataContent.startsWith("data:")) {
8261
+ const { mediaType: dataUrlMediaType, base64Content } = splitDataUrl(dataContent);
8262
+ if (base64Content != null) {
8263
+ const uint8Data2 = (0, import_provider_utils25.convertBase64ToUint8Array)(base64Content);
8264
+ return {
8265
+ type: "file",
8266
+ data: uint8Data2,
8267
+ mediaType: dataUrlMediaType || detectMediaType({
8268
+ data: uint8Data2,
8269
+ signatures: imageMediaTypeSignatures
8270
+ }) || "image/png"
8271
+ };
8272
+ }
8273
+ }
8274
+ const uint8Data = convertDataContentToUint8Array(dataContent);
8275
+ return {
8276
+ type: "file",
8277
+ data: uint8Data,
8278
+ mediaType: detectMediaType({
8279
+ data: uint8Data,
8280
+ signatures: imageMediaTypeSignatures
8281
+ }) || "image/png"
8282
+ };
8283
+ }
8284
+
8285
+ // src/generate-image/index.ts
8286
+ var experimental_generateImage = generateImage;
8256
8287
 
8257
8288
  // src/generate-object/generate-object.ts
8258
- var import_provider_utils26 = require("@ai-sdk/provider-utils");
8289
+ var import_provider_utils28 = require("@ai-sdk/provider-utils");
8259
8290
 
8260
8291
  // src/generate-text/extract-reasoning-content.ts
8261
8292
  function extractReasoningContent(content) {
@@ -8266,8 +8297,8 @@ function extractReasoningContent(content) {
8266
8297
  }
8267
8298
 
8268
8299
  // src/generate-object/output-strategy.ts
8269
- var import_provider25 = require("@ai-sdk/provider");
8270
- var import_provider_utils24 = require("@ai-sdk/provider-utils");
8300
+ var import_provider24 = require("@ai-sdk/provider");
8301
+ var import_provider_utils26 = require("@ai-sdk/provider-utils");
8271
8302
  var noSchemaOutputStrategy = {
8272
8303
  type: "no-schema",
8273
8304
  jsonSchema: async () => void 0,
@@ -8287,7 +8318,7 @@ var noSchemaOutputStrategy = {
8287
8318
  } : { success: true, value };
8288
8319
  },
8289
8320
  createElementStream() {
8290
- throw new import_provider25.UnsupportedFunctionalityError({
8321
+ throw new import_provider24.UnsupportedFunctionalityError({
8291
8322
  functionality: "element streams in no-schema mode"
8292
8323
  });
8293
8324
  }
@@ -8306,10 +8337,10 @@ var objectOutputStrategy = (schema) => ({
8306
8337
  };
8307
8338
  },
8308
8339
  async validateFinalResult(value) {
8309
- return (0, import_provider_utils24.safeValidateTypes)({ value, schema });
8340
+ return (0, import_provider_utils26.safeValidateTypes)({ value, schema });
8310
8341
  },
8311
8342
  createElementStream() {
8312
- throw new import_provider25.UnsupportedFunctionalityError({
8343
+ throw new import_provider24.UnsupportedFunctionalityError({
8313
8344
  functionality: "element streams in object mode"
8314
8345
  });
8315
8346
  }
@@ -8338,11 +8369,11 @@ var arrayOutputStrategy = (schema) => {
8338
8369
  isFirstDelta,
8339
8370
  isFinalDelta
8340
8371
  }) {
8341
- var _a15;
8342
- if (!(0, import_provider25.isJSONObject)(value) || !(0, import_provider25.isJSONArray)(value.elements)) {
8372
+ var _a14;
8373
+ if (!(0, import_provider24.isJSONObject)(value) || !(0, import_provider24.isJSONArray)(value.elements)) {
8343
8374
  return {
8344
8375
  success: false,
8345
- error: new import_provider25.TypeValidationError({
8376
+ error: new import_provider24.TypeValidationError({
8346
8377
  value,
8347
8378
  cause: "value must be an object that contains an array of elements"
8348
8379
  })
@@ -8352,7 +8383,7 @@ var arrayOutputStrategy = (schema) => {
8352
8383
  const resultArray = [];
8353
8384
  for (let i = 0; i < inputArray.length; i++) {
8354
8385
  const element = inputArray[i];
8355
- const result = await (0, import_provider_utils24.safeValidateTypes)({ value: element, schema });
8386
+ const result = await (0, import_provider_utils26.safeValidateTypes)({ value: element, schema });
8356
8387
  if (i === inputArray.length - 1 && !isFinalDelta) {
8357
8388
  continue;
8358
8389
  }
@@ -8361,7 +8392,7 @@ var arrayOutputStrategy = (schema) => {
8361
8392
  }
8362
8393
  resultArray.push(result.value);
8363
8394
  }
8364
- const publishedElementCount = (_a15 = latestObject == null ? void 0 : latestObject.length) != null ? _a15 : 0;
8395
+ const publishedElementCount = (_a14 = latestObject == null ? void 0 : latestObject.length) != null ? _a14 : 0;
8365
8396
  let textDelta = "";
8366
8397
  if (isFirstDelta) {
8367
8398
  textDelta += "[";
@@ -8382,10 +8413,10 @@ var arrayOutputStrategy = (schema) => {
8382
8413
  };
8383
8414
  },
8384
8415
  async validateFinalResult(value) {
8385
- if (!(0, import_provider25.isJSONObject)(value) || !(0, import_provider25.isJSONArray)(value.elements)) {
8416
+ if (!(0, import_provider24.isJSONObject)(value) || !(0, import_provider24.isJSONArray)(value.elements)) {
8386
8417
  return {
8387
8418
  success: false,
8388
- error: new import_provider25.TypeValidationError({
8419
+ error: new import_provider24.TypeValidationError({
8389
8420
  value,
8390
8421
  cause: "value must be an object that contains an array of elements"
8391
8422
  })
@@ -8393,7 +8424,7 @@ var arrayOutputStrategy = (schema) => {
8393
8424
  }
8394
8425
  const inputArray = value.elements;
8395
8426
  for (const element of inputArray) {
8396
- const result = await (0, import_provider_utils24.safeValidateTypes)({ value: element, schema });
8427
+ const result = await (0, import_provider_utils26.safeValidateTypes)({ value: element, schema });
8397
8428
  if (!result.success) {
8398
8429
  return result;
8399
8430
  }
@@ -8448,10 +8479,10 @@ var enumOutputStrategy = (enumValues) => {
8448
8479
  additionalProperties: false
8449
8480
  }),
8450
8481
  async validateFinalResult(value) {
8451
- if (!(0, import_provider25.isJSONObject)(value) || typeof value.result !== "string") {
8482
+ if (!(0, import_provider24.isJSONObject)(value) || typeof value.result !== "string") {
8452
8483
  return {
8453
8484
  success: false,
8454
- error: new import_provider25.TypeValidationError({
8485
+ error: new import_provider24.TypeValidationError({
8455
8486
  value,
8456
8487
  cause: 'value must be an object that contains a string in the "result" property.'
8457
8488
  })
@@ -8460,17 +8491,17 @@ var enumOutputStrategy = (enumValues) => {
8460
8491
  const result = value.result;
8461
8492
  return enumValues.includes(result) ? { success: true, value: result } : {
8462
8493
  success: false,
8463
- error: new import_provider25.TypeValidationError({
8494
+ error: new import_provider24.TypeValidationError({
8464
8495
  value,
8465
8496
  cause: "value must be a string in the enum"
8466
8497
  })
8467
8498
  };
8468
8499
  },
8469
8500
  async validatePartialResult({ value, textDelta }) {
8470
- if (!(0, import_provider25.isJSONObject)(value) || typeof value.result !== "string") {
8501
+ if (!(0, import_provider24.isJSONObject)(value) || typeof value.result !== "string") {
8471
8502
  return {
8472
8503
  success: false,
8473
- error: new import_provider25.TypeValidationError({
8504
+ error: new import_provider24.TypeValidationError({
8474
8505
  value,
8475
8506
  cause: 'value must be an object that contains a string in the "result" property.'
8476
8507
  })
@@ -8483,7 +8514,7 @@ var enumOutputStrategy = (enumValues) => {
8483
8514
  if (value.result.length === 0 || possibleEnumValues.length === 0) {
8484
8515
  return {
8485
8516
  success: false,
8486
- error: new import_provider25.TypeValidationError({
8517
+ error: new import_provider24.TypeValidationError({
8487
8518
  value,
8488
8519
  cause: "value must be a string in the enum"
8489
8520
  })
@@ -8498,7 +8529,7 @@ var enumOutputStrategy = (enumValues) => {
8498
8529
  };
8499
8530
  },
8500
8531
  createElementStream() {
8501
- throw new import_provider25.UnsupportedFunctionalityError({
8532
+ throw new import_provider24.UnsupportedFunctionalityError({
8502
8533
  functionality: "element streams in enum mode"
8503
8534
  });
8504
8535
  }
@@ -8511,9 +8542,9 @@ function getOutputStrategy({
8511
8542
  }) {
8512
8543
  switch (output) {
8513
8544
  case "object":
8514
- return objectOutputStrategy((0, import_provider_utils24.asSchema)(schema));
8545
+ return objectOutputStrategy((0, import_provider_utils26.asSchema)(schema));
8515
8546
  case "array":
8516
- return arrayOutputStrategy((0, import_provider_utils24.asSchema)(schema));
8547
+ return arrayOutputStrategy((0, import_provider_utils26.asSchema)(schema));
8517
8548
  case "enum":
8518
8549
  return enumOutputStrategy(enumValues);
8519
8550
  case "no-schema":
@@ -8526,10 +8557,10 @@ function getOutputStrategy({
8526
8557
  }
8527
8558
 
8528
8559
  // src/generate-object/parse-and-validate-object-result.ts
8529
- var import_provider26 = require("@ai-sdk/provider");
8530
- var import_provider_utils25 = require("@ai-sdk/provider-utils");
8560
+ var import_provider25 = require("@ai-sdk/provider");
8561
+ var import_provider_utils27 = require("@ai-sdk/provider-utils");
8531
8562
  async function parseAndValidateObjectResult(result, outputStrategy, context) {
8532
- const parseResult = await (0, import_provider_utils25.safeParseJSON)({ text: result });
8563
+ const parseResult = await (0, import_provider_utils27.safeParseJSON)({ text: result });
8533
8564
  if (!parseResult.success) {
8534
8565
  throw new NoObjectGeneratedError({
8535
8566
  message: "No object generated: could not parse the response.",
@@ -8564,7 +8595,7 @@ async function parseAndValidateObjectResultWithRepair(result, outputStrategy, re
8564
8595
  try {
8565
8596
  return await parseAndValidateObjectResult(result, outputStrategy, context);
8566
8597
  } catch (error) {
8567
- if (repairText != null && NoObjectGeneratedError.isInstance(error) && (import_provider26.JSONParseError.isInstance(error.cause) || import_provider26.TypeValidationError.isInstance(error.cause))) {
8598
+ if (repairText != null && NoObjectGeneratedError.isInstance(error) && (import_provider25.JSONParseError.isInstance(error.cause) || import_provider25.TypeValidationError.isInstance(error.cause))) {
8568
8599
  const repairedText = await repairText({
8569
8600
  text: result,
8570
8601
  error: error.cause
@@ -8701,7 +8732,7 @@ function validateObjectGenerationInput({
8701
8732
  }
8702
8733
 
8703
8734
  // src/generate-object/generate-object.ts
8704
- var originalGenerateId3 = (0, import_provider_utils26.createIdGenerator)({ prefix: "aiobj", size: 24 });
8735
+ var originalGenerateId3 = (0, import_provider_utils28.createIdGenerator)({ prefix: "aiobj", size: 24 });
8705
8736
  async function generateObject(options) {
8706
8737
  const {
8707
8738
  model: modelArg,
@@ -8746,7 +8777,7 @@ async function generateObject(options) {
8746
8777
  enumValues
8747
8778
  });
8748
8779
  const callSettings = prepareCallSettings(settings);
8749
- const headersWithUserAgent = (0, import_provider_utils26.withUserAgentSuffix)(
8780
+ const headersWithUserAgent = (0, import_provider_utils28.withUserAgentSuffix)(
8750
8781
  headers != null ? headers : {},
8751
8782
  `ai/${VERSION}`
8752
8783
  );
@@ -8781,7 +8812,7 @@ async function generateObject(options) {
8781
8812
  }),
8782
8813
  tracer,
8783
8814
  fn: async (span) => {
8784
- var _a15;
8815
+ var _a14;
8785
8816
  let result;
8786
8817
  let finishReason;
8787
8818
  let usage;
@@ -8827,7 +8858,7 @@ async function generateObject(options) {
8827
8858
  }),
8828
8859
  tracer,
8829
8860
  fn: async (span2) => {
8830
- var _a16, _b, _c, _d, _e, _f, _g, _h;
8861
+ var _a15, _b, _c, _d, _e, _f, _g, _h;
8831
8862
  const result2 = await model.doGenerate({
8832
8863
  responseFormat: {
8833
8864
  type: "json",
@@ -8842,7 +8873,7 @@ async function generateObject(options) {
8842
8873
  headers: headersWithUserAgent
8843
8874
  });
8844
8875
  const responseData = {
8845
- id: (_b = (_a16 = result2.response) == null ? void 0 : _a16.id) != null ? _b : generateId2(),
8876
+ id: (_b = (_a15 = result2.response) == null ? void 0 : _a15.id) != null ? _b : generateId2(),
8846
8877
  timestamp: (_d = (_c = result2.response) == null ? void 0 : _c.timestamp) != null ? _d : currentDate(),
8847
8878
  modelId: (_f = (_e = result2.response) == null ? void 0 : _e.modelId) != null ? _f : model.modelId,
8848
8879
  headers: (_g = result2.response) == null ? void 0 : _g.headers,
@@ -8896,7 +8927,7 @@ async function generateObject(options) {
8896
8927
  usage = asLanguageModelUsage(generateResult.usage);
8897
8928
  warnings = generateResult.warnings;
8898
8929
  resultProviderMetadata = generateResult.providerMetadata;
8899
- request = (_a15 = generateResult.request) != null ? _a15 : {};
8930
+ request = (_a14 = generateResult.request) != null ? _a14 : {};
8900
8931
  response = generateResult.responseData;
8901
8932
  reasoning = generateResult.reasoning;
8902
8933
  logWarnings({
@@ -8959,9 +8990,9 @@ var DefaultGenerateObjectResult = class {
8959
8990
  this.reasoning = options.reasoning;
8960
8991
  }
8961
8992
  toJsonResponse(init) {
8962
- var _a15;
8993
+ var _a14;
8963
8994
  return new Response(JSON.stringify(this.object), {
8964
- status: (_a15 = init == null ? void 0 : init.status) != null ? _a15 : 200,
8995
+ status: (_a14 = init == null ? void 0 : init.status) != null ? _a14 : 200,
8965
8996
  headers: prepareHeaders(init == null ? void 0 : init.headers, {
8966
8997
  "content-type": "application/json; charset=utf-8"
8967
8998
  })
@@ -8970,7 +9001,7 @@ var DefaultGenerateObjectResult = class {
8970
9001
  };
8971
9002
 
8972
9003
  // src/generate-object/stream-object.ts
8973
- var import_provider_utils28 = require("@ai-sdk/provider-utils");
9004
+ var import_provider_utils30 = require("@ai-sdk/provider-utils");
8974
9005
 
8975
9006
  // src/util/cosine-similarity.ts
8976
9007
  function cosineSimilarity(vector1, vector2) {
@@ -9080,15 +9111,15 @@ var SerialJobExecutor = class {
9080
9111
  };
9081
9112
 
9082
9113
  // src/util/simulate-readable-stream.ts
9083
- var import_provider_utils27 = require("@ai-sdk/provider-utils");
9114
+ var import_provider_utils29 = require("@ai-sdk/provider-utils");
9084
9115
  function simulateReadableStream({
9085
9116
  chunks,
9086
9117
  initialDelayInMs = 0,
9087
9118
  chunkDelayInMs = 0,
9088
9119
  _internal
9089
9120
  }) {
9090
- var _a15;
9091
- const delay2 = (_a15 = _internal == null ? void 0 : _internal.delay) != null ? _a15 : import_provider_utils27.delay;
9121
+ var _a14;
9122
+ const delay2 = (_a14 = _internal == null ? void 0 : _internal.delay) != null ? _a14 : import_provider_utils29.delay;
9092
9123
  let index = 0;
9093
9124
  return new ReadableStream({
9094
9125
  async pull(controller) {
@@ -9103,7 +9134,7 @@ function simulateReadableStream({
9103
9134
  }
9104
9135
 
9105
9136
  // src/generate-object/stream-object.ts
9106
- var originalGenerateId4 = (0, import_provider_utils28.createIdGenerator)({ prefix: "aiobj", size: 24 });
9137
+ var originalGenerateId4 = (0, import_provider_utils30.createIdGenerator)({ prefix: "aiobj", size: 24 });
9107
9138
  function streamObject(options) {
9108
9139
  const {
9109
9140
  model,
@@ -9193,13 +9224,13 @@ var DefaultStreamObjectResult = class {
9193
9224
  currentDate,
9194
9225
  now: now2
9195
9226
  }) {
9196
- this._object = new import_provider_utils28.DelayedPromise();
9197
- this._usage = new import_provider_utils28.DelayedPromise();
9198
- this._providerMetadata = new import_provider_utils28.DelayedPromise();
9199
- this._warnings = new import_provider_utils28.DelayedPromise();
9200
- this._request = new import_provider_utils28.DelayedPromise();
9201
- this._response = new import_provider_utils28.DelayedPromise();
9202
- this._finishReason = new import_provider_utils28.DelayedPromise();
9227
+ this._object = new import_provider_utils30.DelayedPromise();
9228
+ this._usage = new import_provider_utils30.DelayedPromise();
9229
+ this._providerMetadata = new import_provider_utils30.DelayedPromise();
9230
+ this._warnings = new import_provider_utils30.DelayedPromise();
9231
+ this._request = new import_provider_utils30.DelayedPromise();
9232
+ this._response = new import_provider_utils30.DelayedPromise();
9233
+ this._finishReason = new import_provider_utils30.DelayedPromise();
9203
9234
  const model = resolveLanguageModel(modelArg);
9204
9235
  const { maxRetries, retry } = prepareRetries({
9205
9236
  maxRetries: maxRetriesArg,
@@ -9346,7 +9377,7 @@ var DefaultStreamObjectResult = class {
9346
9377
  const transformedStream = stream.pipeThrough(new TransformStream(transformer)).pipeThrough(
9347
9378
  new TransformStream({
9348
9379
  async transform(chunk, controller) {
9349
- var _a15, _b, _c;
9380
+ var _a14, _b, _c;
9350
9381
  if (typeof chunk === "object" && chunk.type === "stream-start") {
9351
9382
  warnings = chunk.warnings;
9352
9383
  return;
@@ -9396,7 +9427,7 @@ var DefaultStreamObjectResult = class {
9396
9427
  switch (chunk.type) {
9397
9428
  case "response-metadata": {
9398
9429
  fullResponse = {
9399
- id: (_a15 = chunk.id) != null ? _a15 : fullResponse.id,
9430
+ id: (_a14 = chunk.id) != null ? _a14 : fullResponse.id,
9400
9431
  timestamp: (_b = chunk.timestamp) != null ? _b : fullResponse.timestamp,
9401
9432
  modelId: (_c = chunk.modelId) != null ? _c : fullResponse.modelId
9402
9433
  };
@@ -9626,7 +9657,7 @@ var DefaultStreamObjectResult = class {
9626
9657
  };
9627
9658
 
9628
9659
  // src/generate-speech/generate-speech.ts
9629
- var import_provider_utils29 = require("@ai-sdk/provider-utils");
9660
+ var import_provider_utils31 = require("@ai-sdk/provider-utils");
9630
9661
 
9631
9662
  // src/generate-speech/generated-audio-file.ts
9632
9663
  var DefaultGeneratedAudioFile = class extends DefaultGeneratedFile {
@@ -9667,12 +9698,12 @@ async function generateSpeech({
9667
9698
  abortSignal,
9668
9699
  headers
9669
9700
  }) {
9670
- var _a15;
9701
+ var _a14;
9671
9702
  const resolvedModel = resolveSpeechModel(model);
9672
9703
  if (!resolvedModel) {
9673
9704
  throw new Error("Model could not be resolved");
9674
9705
  }
9675
- const headersWithUserAgent = (0, import_provider_utils29.withUserAgentSuffix)(
9706
+ const headersWithUserAgent = (0, import_provider_utils31.withUserAgentSuffix)(
9676
9707
  headers != null ? headers : {},
9677
9708
  `ai/${VERSION}`
9678
9709
  );
@@ -9704,10 +9735,10 @@ async function generateSpeech({
9704
9735
  return new DefaultSpeechResult({
9705
9736
  audio: new DefaultGeneratedAudioFile({
9706
9737
  data: result.audio,
9707
- mediaType: (_a15 = detectMediaType({
9738
+ mediaType: (_a14 = detectMediaType({
9708
9739
  data: result.audio,
9709
9740
  signatures: audioMediaTypeSignatures
9710
- })) != null ? _a15 : "audio/mp3"
9741
+ })) != null ? _a14 : "audio/mp3"
9711
9742
  }),
9712
9743
  warnings: result.warnings,
9713
9744
  responses: [result.response],
@@ -9716,11 +9747,11 @@ async function generateSpeech({
9716
9747
  }
9717
9748
  var DefaultSpeechResult = class {
9718
9749
  constructor(options) {
9719
- var _a15;
9750
+ var _a14;
9720
9751
  this.audio = options.audio;
9721
9752
  this.warnings = options.warnings;
9722
9753
  this.responses = options.responses;
9723
- this.providerMetadata = (_a15 = options.providerMetadata) != null ? _a15 : {};
9754
+ this.providerMetadata = (_a14 = options.providerMetadata) != null ? _a14 : {};
9724
9755
  }
9725
9756
  };
9726
9757
 
@@ -9804,8 +9835,8 @@ function pruneMessages({
9804
9835
  }
9805
9836
 
9806
9837
  // src/generate-text/smooth-stream.ts
9807
- var import_provider_utils30 = require("@ai-sdk/provider-utils");
9808
- var import_provider27 = require("@ai-sdk/provider");
9838
+ var import_provider_utils32 = require("@ai-sdk/provider-utils");
9839
+ var import_provider26 = require("@ai-sdk/provider");
9809
9840
  var CHUNKING_REGEXPS = {
9810
9841
  word: /\S+\s+/m,
9811
9842
  line: /\n+/m
@@ -9813,7 +9844,7 @@ var CHUNKING_REGEXPS = {
9813
9844
  function smoothStream({
9814
9845
  delayInMs = 10,
9815
9846
  chunking = "word",
9816
- _internal: { delay: delay2 = import_provider_utils30.delay } = {}
9847
+ _internal: { delay: delay2 = import_provider_utils32.delay } = {}
9817
9848
  } = {}) {
9818
9849
  let detectChunk;
9819
9850
  if (typeof chunking === "function") {
@@ -9835,7 +9866,7 @@ function smoothStream({
9835
9866
  } else {
9836
9867
  const chunkingRegex = typeof chunking === "string" ? CHUNKING_REGEXPS[chunking] : chunking;
9837
9868
  if (chunkingRegex == null) {
9838
- throw new import_provider27.InvalidArgumentError({
9869
+ throw new import_provider26.InvalidArgumentError({
9839
9870
  argument: "chunking",
9840
9871
  message: `Chunking must be "word" or "line" or a RegExp. Received: ${chunking}`
9841
9872
  });
@@ -10152,13 +10183,13 @@ function addToolInputExamplesMiddleware({
10152
10183
  return {
10153
10184
  specificationVersion: "v3",
10154
10185
  transformParams: async ({ params }) => {
10155
- var _a15;
10156
- if (!((_a15 = params.tools) == null ? void 0 : _a15.length)) {
10186
+ var _a14;
10187
+ if (!((_a14 = params.tools) == null ? void 0 : _a14.length)) {
10157
10188
  return params;
10158
10189
  }
10159
10190
  const transformedTools = params.tools.map((tool2) => {
10160
- var _a16;
10161
- if (tool2.type !== "function" || !((_a16 = tool2.inputExamples) == null ? void 0 : _a16.length)) {
10191
+ var _a15;
10192
+ if (tool2.type !== "function" || !((_a15 = tool2.inputExamples) == null ? void 0 : _a15.length)) {
10162
10193
  return tool2;
10163
10194
  }
10164
10195
  const formattedExamples = tool2.inputExamples.map((example, index) => format(example, index)).join("\n");
@@ -10205,7 +10236,7 @@ var doWrap = ({
10205
10236
  modelId,
10206
10237
  providerId
10207
10238
  }) => {
10208
- var _a15, _b, _c;
10239
+ var _a14, _b, _c;
10209
10240
  async function doTransform({
10210
10241
  params,
10211
10242
  type
@@ -10214,7 +10245,7 @@ var doWrap = ({
10214
10245
  }
10215
10246
  return {
10216
10247
  specificationVersion: "v3",
10217
- provider: (_a15 = providerId != null ? providerId : overrideProvider == null ? void 0 : overrideProvider({ model })) != null ? _a15 : model.provider,
10248
+ provider: (_a14 = providerId != null ? providerId : overrideProvider == null ? void 0 : overrideProvider({ model })) != null ? _a14 : model.provider,
10218
10249
  modelId: (_b = modelId != null ? modelId : overrideModelId == null ? void 0 : overrideModelId({ model })) != null ? _b : model.modelId,
10219
10250
  supportedUrls: (_c = overrideSupportedUrls == null ? void 0 : overrideSupportedUrls({ model })) != null ? _c : model.supportedUrls,
10220
10251
  async doGenerate(params) {
@@ -10261,7 +10292,7 @@ var doWrap2 = ({
10261
10292
  modelId,
10262
10293
  providerId
10263
10294
  }) => {
10264
- var _a15, _b, _c, _d;
10295
+ var _a14, _b, _c, _d;
10265
10296
  async function doTransform({
10266
10297
  params
10267
10298
  }) {
@@ -10269,7 +10300,7 @@ var doWrap2 = ({
10269
10300
  }
10270
10301
  return {
10271
10302
  specificationVersion: "v3",
10272
- provider: (_a15 = providerId != null ? providerId : overrideProvider == null ? void 0 : overrideProvider({ model })) != null ? _a15 : model.provider,
10303
+ provider: (_a14 = providerId != null ? providerId : overrideProvider == null ? void 0 : overrideProvider({ model })) != null ? _a14 : model.provider,
10273
10304
  modelId: (_b = modelId != null ? modelId : overrideModelId == null ? void 0 : overrideModelId({ model })) != null ? _b : model.modelId,
10274
10305
  maxEmbeddingsPerCall: (_c = overrideMaxEmbeddingsPerCall == null ? void 0 : overrideMaxEmbeddingsPerCall({ model })) != null ? _c : model.maxEmbeddingsPerCall,
10275
10306
  supportsParallelCalls: (_d = overrideSupportsParallelCalls == null ? void 0 : overrideSupportsParallelCalls({ model })) != null ? _d : model.supportsParallelCalls,
@@ -10324,7 +10355,7 @@ function wrapProvider({
10324
10355
  }
10325
10356
 
10326
10357
  // src/registry/custom-provider.ts
10327
- var import_provider28 = require("@ai-sdk/provider");
10358
+ var import_provider27 = require("@ai-sdk/provider");
10328
10359
  function customProvider({
10329
10360
  languageModels,
10330
10361
  embeddingModels,
@@ -10344,7 +10375,7 @@ function customProvider({
10344
10375
  if (fallbackProvider) {
10345
10376
  return fallbackProvider.languageModel(modelId);
10346
10377
  }
10347
- throw new import_provider28.NoSuchModelError({ modelId, modelType: "languageModel" });
10378
+ throw new import_provider27.NoSuchModelError({ modelId, modelType: "languageModel" });
10348
10379
  },
10349
10380
  embeddingModel(modelId) {
10350
10381
  if (embeddingModels != null && modelId in embeddingModels) {
@@ -10353,7 +10384,7 @@ function customProvider({
10353
10384
  if (fallbackProvider) {
10354
10385
  return fallbackProvider.embeddingModel(modelId);
10355
10386
  }
10356
- throw new import_provider28.NoSuchModelError({ modelId, modelType: "embeddingModel" });
10387
+ throw new import_provider27.NoSuchModelError({ modelId, modelType: "embeddingModel" });
10357
10388
  },
10358
10389
  imageModel(modelId) {
10359
10390
  if (imageModels != null && modelId in imageModels) {
@@ -10362,7 +10393,7 @@ function customProvider({
10362
10393
  if (fallbackProvider == null ? void 0 : fallbackProvider.imageModel) {
10363
10394
  return fallbackProvider.imageModel(modelId);
10364
10395
  }
10365
- throw new import_provider28.NoSuchModelError({ modelId, modelType: "imageModel" });
10396
+ throw new import_provider27.NoSuchModelError({ modelId, modelType: "imageModel" });
10366
10397
  },
10367
10398
  transcriptionModel(modelId) {
10368
10399
  if (transcriptionModels != null && modelId in transcriptionModels) {
@@ -10371,7 +10402,7 @@ function customProvider({
10371
10402
  if (fallbackProvider == null ? void 0 : fallbackProvider.transcriptionModel) {
10372
10403
  return fallbackProvider.transcriptionModel(modelId);
10373
10404
  }
10374
- throw new import_provider28.NoSuchModelError({ modelId, modelType: "transcriptionModel" });
10405
+ throw new import_provider27.NoSuchModelError({ modelId, modelType: "transcriptionModel" });
10375
10406
  },
10376
10407
  speechModel(modelId) {
10377
10408
  if (speechModels != null && modelId in speechModels) {
@@ -10380,7 +10411,7 @@ function customProvider({
10380
10411
  if (fallbackProvider == null ? void 0 : fallbackProvider.speechModel) {
10381
10412
  return fallbackProvider.speechModel(modelId);
10382
10413
  }
10383
- throw new import_provider28.NoSuchModelError({ modelId, modelType: "speechModel" });
10414
+ throw new import_provider27.NoSuchModelError({ modelId, modelType: "speechModel" });
10384
10415
  },
10385
10416
  rerankingModel(modelId) {
10386
10417
  if (rerankingModels != null && modelId in rerankingModels) {
@@ -10389,19 +10420,19 @@ function customProvider({
10389
10420
  if (fallbackProvider == null ? void 0 : fallbackProvider.rerankingModel) {
10390
10421
  return fallbackProvider.rerankingModel(modelId);
10391
10422
  }
10392
- throw new import_provider28.NoSuchModelError({ modelId, modelType: "rerankingModel" });
10423
+ throw new import_provider27.NoSuchModelError({ modelId, modelType: "rerankingModel" });
10393
10424
  }
10394
10425
  };
10395
10426
  }
10396
10427
  var experimental_customProvider = customProvider;
10397
10428
 
10398
10429
  // src/registry/no-such-provider-error.ts
10399
- var import_provider29 = require("@ai-sdk/provider");
10400
- var name14 = "AI_NoSuchProviderError";
10401
- var marker14 = `vercel.ai.error.${name14}`;
10402
- var symbol14 = Symbol.for(marker14);
10403
- var _a14;
10404
- var NoSuchProviderError = class extends import_provider29.NoSuchModelError {
10430
+ var import_provider28 = require("@ai-sdk/provider");
10431
+ var name13 = "AI_NoSuchProviderError";
10432
+ var marker13 = `vercel.ai.error.${name13}`;
10433
+ var symbol13 = Symbol.for(marker13);
10434
+ var _a13;
10435
+ var NoSuchProviderError = class extends import_provider28.NoSuchModelError {
10405
10436
  constructor({
10406
10437
  modelId,
10407
10438
  modelType,
@@ -10409,19 +10440,19 @@ var NoSuchProviderError = class extends import_provider29.NoSuchModelError {
10409
10440
  availableProviders,
10410
10441
  message = `No such provider: ${providerId} (available providers: ${availableProviders.join()})`
10411
10442
  }) {
10412
- super({ errorName: name14, modelId, modelType, message });
10413
- this[_a14] = true;
10443
+ super({ errorName: name13, modelId, modelType, message });
10444
+ this[_a13] = true;
10414
10445
  this.providerId = providerId;
10415
10446
  this.availableProviders = availableProviders;
10416
10447
  }
10417
10448
  static isInstance(error) {
10418
- return import_provider29.AISDKError.hasMarker(error, marker14);
10449
+ return import_provider28.AISDKError.hasMarker(error, marker13);
10419
10450
  }
10420
10451
  };
10421
- _a14 = symbol14;
10452
+ _a13 = symbol13;
10422
10453
 
10423
10454
  // src/registry/provider-registry.ts
10424
- var import_provider30 = require("@ai-sdk/provider");
10455
+ var import_provider29 = require("@ai-sdk/provider");
10425
10456
  function createProviderRegistry(providers, {
10426
10457
  separator = ":",
10427
10458
  languageModelMiddleware
@@ -10466,7 +10497,7 @@ var DefaultProviderRegistry = class {
10466
10497
  splitId(id, modelType) {
10467
10498
  const index = id.indexOf(this.separator);
10468
10499
  if (index === -1) {
10469
- throw new import_provider30.NoSuchModelError({
10500
+ throw new import_provider29.NoSuchModelError({
10470
10501
  modelId: id,
10471
10502
  modelType,
10472
10503
  message: `Invalid ${modelType} id for registry: ${id} (must be in the format "providerId${this.separator}modelId")`
@@ -10475,14 +10506,14 @@ var DefaultProviderRegistry = class {
10475
10506
  return [id.slice(0, index), id.slice(index + this.separator.length)];
10476
10507
  }
10477
10508
  languageModel(id) {
10478
- var _a15, _b;
10509
+ var _a14, _b;
10479
10510
  const [providerId, modelId] = this.splitId(id, "languageModel");
10480
- let model = (_b = (_a15 = this.getProvider(providerId, "languageModel")).languageModel) == null ? void 0 : _b.call(
10481
- _a15,
10511
+ let model = (_b = (_a14 = this.getProvider(providerId, "languageModel")).languageModel) == null ? void 0 : _b.call(
10512
+ _a14,
10482
10513
  modelId
10483
10514
  );
10484
10515
  if (model == null) {
10485
- throw new import_provider30.NoSuchModelError({ modelId: id, modelType: "languageModel" });
10516
+ throw new import_provider29.NoSuchModelError({ modelId: id, modelType: "languageModel" });
10486
10517
  }
10487
10518
  if (this.languageModelMiddleware != null) {
10488
10519
  model = wrapLanguageModel({
@@ -10493,12 +10524,12 @@ var DefaultProviderRegistry = class {
10493
10524
  return model;
10494
10525
  }
10495
10526
  embeddingModel(id) {
10496
- var _a15;
10527
+ var _a14;
10497
10528
  const [providerId, modelId] = this.splitId(id, "embeddingModel");
10498
10529
  const provider = this.getProvider(providerId, "embeddingModel");
10499
- const model = (_a15 = provider.embeddingModel) == null ? void 0 : _a15.call(provider, modelId);
10530
+ const model = (_a14 = provider.embeddingModel) == null ? void 0 : _a14.call(provider, modelId);
10500
10531
  if (model == null) {
10501
- throw new import_provider30.NoSuchModelError({
10532
+ throw new import_provider29.NoSuchModelError({
10502
10533
  modelId: id,
10503
10534
  modelType: "embeddingModel"
10504
10535
  });
@@ -10506,22 +10537,22 @@ var DefaultProviderRegistry = class {
10506
10537
  return model;
10507
10538
  }
10508
10539
  imageModel(id) {
10509
- var _a15;
10540
+ var _a14;
10510
10541
  const [providerId, modelId] = this.splitId(id, "imageModel");
10511
10542
  const provider = this.getProvider(providerId, "imageModel");
10512
- const model = (_a15 = provider.imageModel) == null ? void 0 : _a15.call(provider, modelId);
10543
+ const model = (_a14 = provider.imageModel) == null ? void 0 : _a14.call(provider, modelId);
10513
10544
  if (model == null) {
10514
- throw new import_provider30.NoSuchModelError({ modelId: id, modelType: "imageModel" });
10545
+ throw new import_provider29.NoSuchModelError({ modelId: id, modelType: "imageModel" });
10515
10546
  }
10516
10547
  return model;
10517
10548
  }
10518
10549
  transcriptionModel(id) {
10519
- var _a15;
10550
+ var _a14;
10520
10551
  const [providerId, modelId] = this.splitId(id, "transcriptionModel");
10521
10552
  const provider = this.getProvider(providerId, "transcriptionModel");
10522
- const model = (_a15 = provider.transcriptionModel) == null ? void 0 : _a15.call(provider, modelId);
10553
+ const model = (_a14 = provider.transcriptionModel) == null ? void 0 : _a14.call(provider, modelId);
10523
10554
  if (model == null) {
10524
- throw new import_provider30.NoSuchModelError({
10555
+ throw new import_provider29.NoSuchModelError({
10525
10556
  modelId: id,
10526
10557
  modelType: "transcriptionModel"
10527
10558
  });
@@ -10529,22 +10560,22 @@ var DefaultProviderRegistry = class {
10529
10560
  return model;
10530
10561
  }
10531
10562
  speechModel(id) {
10532
- var _a15;
10563
+ var _a14;
10533
10564
  const [providerId, modelId] = this.splitId(id, "speechModel");
10534
10565
  const provider = this.getProvider(providerId, "speechModel");
10535
- const model = (_a15 = provider.speechModel) == null ? void 0 : _a15.call(provider, modelId);
10566
+ const model = (_a14 = provider.speechModel) == null ? void 0 : _a14.call(provider, modelId);
10536
10567
  if (model == null) {
10537
- throw new import_provider30.NoSuchModelError({ modelId: id, modelType: "speechModel" });
10568
+ throw new import_provider29.NoSuchModelError({ modelId: id, modelType: "speechModel" });
10538
10569
  }
10539
10570
  return model;
10540
10571
  }
10541
10572
  rerankingModel(id) {
10542
- var _a15;
10573
+ var _a14;
10543
10574
  const [providerId, modelId] = this.splitId(id, "rerankingModel");
10544
10575
  const provider = this.getProvider(providerId, "rerankingModel");
10545
- const model = (_a15 = provider.rerankingModel) == null ? void 0 : _a15.call(provider, modelId);
10576
+ const model = (_a14 = provider.rerankingModel) == null ? void 0 : _a14.call(provider, modelId);
10546
10577
  if (model == null) {
10547
- throw new import_provider30.NoSuchModelError({ modelId: id, modelType: "rerankingModel" });
10578
+ throw new import_provider29.NoSuchModelError({ modelId: id, modelType: "rerankingModel" });
10548
10579
  }
10549
10580
  return model;
10550
10581
  }
@@ -10599,7 +10630,7 @@ async function rerank({
10599
10630
  }),
10600
10631
  tracer,
10601
10632
  fn: async () => {
10602
- var _a15, _b;
10633
+ var _a14, _b;
10603
10634
  const { ranking, response, providerMetadata, warnings } = await retry(
10604
10635
  () => recordSpan({
10605
10636
  name: "ai.rerank.doRerank",
@@ -10663,7 +10694,7 @@ async function rerank({
10663
10694
  providerMetadata,
10664
10695
  response: {
10665
10696
  id: response == null ? void 0 : response.id,
10666
- timestamp: (_a15 = response == null ? void 0 : response.timestamp) != null ? _a15 : /* @__PURE__ */ new Date(),
10697
+ timestamp: (_a14 = response == null ? void 0 : response.timestamp) != null ? _a14 : /* @__PURE__ */ new Date(),
10667
10698
  modelId: (_b = response == null ? void 0 : response.modelId) != null ? _b : model.modelId,
10668
10699
  headers: response == null ? void 0 : response.headers,
10669
10700
  body: response == null ? void 0 : response.body
@@ -10685,11 +10716,11 @@ var DefaultRerankResult = class {
10685
10716
  };
10686
10717
 
10687
10718
  // src/transcribe/transcribe.ts
10688
- var import_provider_utils31 = require("@ai-sdk/provider-utils");
10719
+ var import_provider_utils33 = require("@ai-sdk/provider-utils");
10689
10720
 
10690
10721
  // src/error/no-transcript-generated-error.ts
10691
- var import_provider31 = require("@ai-sdk/provider");
10692
- var NoTranscriptGeneratedError = class extends import_provider31.AISDKError {
10722
+ var import_provider30 = require("@ai-sdk/provider");
10723
+ var NoTranscriptGeneratedError = class extends import_provider30.AISDKError {
10693
10724
  constructor(options) {
10694
10725
  super({
10695
10726
  name: "AI_NoTranscriptGeneratedError",
@@ -10716,23 +10747,23 @@ async function transcribe({
10716
10747
  maxRetries: maxRetriesArg,
10717
10748
  abortSignal
10718
10749
  });
10719
- const headersWithUserAgent = (0, import_provider_utils31.withUserAgentSuffix)(
10750
+ const headersWithUserAgent = (0, import_provider_utils33.withUserAgentSuffix)(
10720
10751
  headers != null ? headers : {},
10721
10752
  `ai/${VERSION}`
10722
10753
  );
10723
10754
  const audioData = audio instanceof URL ? (await download({ url: audio })).data : convertDataContentToUint8Array(audio);
10724
10755
  const result = await retry(
10725
10756
  () => {
10726
- var _a15;
10757
+ var _a14;
10727
10758
  return resolvedModel.doGenerate({
10728
10759
  audio: audioData,
10729
10760
  abortSignal,
10730
10761
  headers: headersWithUserAgent,
10731
10762
  providerOptions,
10732
- mediaType: (_a15 = detectMediaType({
10763
+ mediaType: (_a14 = detectMediaType({
10733
10764
  data: audioData,
10734
10765
  signatures: audioMediaTypeSignatures
10735
- })) != null ? _a15 : "audio/wav"
10766
+ })) != null ? _a14 : "audio/wav"
10736
10767
  });
10737
10768
  }
10738
10769
  );
@@ -10756,19 +10787,19 @@ async function transcribe({
10756
10787
  }
10757
10788
  var DefaultTranscriptionResult = class {
10758
10789
  constructor(options) {
10759
- var _a15;
10790
+ var _a14;
10760
10791
  this.text = options.text;
10761
10792
  this.segments = options.segments;
10762
10793
  this.language = options.language;
10763
10794
  this.durationInSeconds = options.durationInSeconds;
10764
10795
  this.warnings = options.warnings;
10765
10796
  this.responses = options.responses;
10766
- this.providerMetadata = (_a15 = options.providerMetadata) != null ? _a15 : {};
10797
+ this.providerMetadata = (_a14 = options.providerMetadata) != null ? _a14 : {};
10767
10798
  }
10768
10799
  };
10769
10800
 
10770
10801
  // src/ui/call-completion-api.ts
10771
- var import_provider_utils32 = require("@ai-sdk/provider-utils");
10802
+ var import_provider_utils34 = require("@ai-sdk/provider-utils");
10772
10803
 
10773
10804
  // src/ui/process-text-stream.ts
10774
10805
  async function processTextStream({
@@ -10802,7 +10833,7 @@ async function callCompletionApi({
10802
10833
  onError,
10803
10834
  fetch: fetch2 = getOriginalFetch()
10804
10835
  }) {
10805
- var _a15;
10836
+ var _a14;
10806
10837
  try {
10807
10838
  setLoading(true);
10808
10839
  setError(void 0);
@@ -10816,13 +10847,13 @@ async function callCompletionApi({
10816
10847
  ...body
10817
10848
  }),
10818
10849
  credentials,
10819
- headers: (0, import_provider_utils32.withUserAgentSuffix)(
10850
+ headers: (0, import_provider_utils34.withUserAgentSuffix)(
10820
10851
  {
10821
10852
  "Content-Type": "application/json",
10822
10853
  ...headers
10823
10854
  },
10824
10855
  `ai-sdk/${VERSION}`,
10825
- (0, import_provider_utils32.getRuntimeEnvironmentUserAgent)()
10856
+ (0, import_provider_utils34.getRuntimeEnvironmentUserAgent)()
10826
10857
  ),
10827
10858
  signal: abortController.signal
10828
10859
  }).catch((err) => {
@@ -10830,7 +10861,7 @@ async function callCompletionApi({
10830
10861
  });
10831
10862
  if (!response.ok) {
10832
10863
  throw new Error(
10833
- (_a15 = await response.text()) != null ? _a15 : "Failed to fetch the chat response."
10864
+ (_a14 = await response.text()) != null ? _a14 : "Failed to fetch the chat response."
10834
10865
  );
10835
10866
  }
10836
10867
  if (!response.body) {
@@ -10850,7 +10881,7 @@ async function callCompletionApi({
10850
10881
  }
10851
10882
  case "data": {
10852
10883
  await consumeStream({
10853
- stream: (0, import_provider_utils32.parseJsonEventStream)({
10884
+ stream: (0, import_provider_utils34.parseJsonEventStream)({
10854
10885
  stream: response.body,
10855
10886
  schema: uiMessageChunkSchema
10856
10887
  }).pipeThrough(
@@ -10902,7 +10933,7 @@ async function callCompletionApi({
10902
10933
  }
10903
10934
 
10904
10935
  // src/ui/chat.ts
10905
- var import_provider_utils35 = require("@ai-sdk/provider-utils");
10936
+ var import_provider_utils37 = require("@ai-sdk/provider-utils");
10906
10937
 
10907
10938
  // src/ui/convert-file-list-to-file-ui-parts.ts
10908
10939
  async function convertFileListToFileUIParts(files) {
@@ -10914,12 +10945,12 @@ async function convertFileListToFileUIParts(files) {
10914
10945
  }
10915
10946
  return Promise.all(
10916
10947
  Array.from(files).map(async (file) => {
10917
- const { name: name15, type } = file;
10948
+ const { name: name14, type } = file;
10918
10949
  const dataUrl = await new Promise((resolve3, reject) => {
10919
10950
  const reader = new FileReader();
10920
10951
  reader.onload = (readerEvent) => {
10921
- var _a15;
10922
- resolve3((_a15 = readerEvent.target) == null ? void 0 : _a15.result);
10952
+ var _a14;
10953
+ resolve3((_a14 = readerEvent.target) == null ? void 0 : _a14.result);
10923
10954
  };
10924
10955
  reader.onerror = (error) => reject(error);
10925
10956
  reader.readAsDataURL(file);
@@ -10927,7 +10958,7 @@ async function convertFileListToFileUIParts(files) {
10927
10958
  return {
10928
10959
  type: "file",
10929
10960
  mediaType: type,
10930
- filename: name15,
10961
+ filename: name14,
10931
10962
  url: dataUrl
10932
10963
  };
10933
10964
  })
@@ -10935,10 +10966,10 @@ async function convertFileListToFileUIParts(files) {
10935
10966
  }
10936
10967
 
10937
10968
  // src/ui/default-chat-transport.ts
10938
- var import_provider_utils34 = require("@ai-sdk/provider-utils");
10969
+ var import_provider_utils36 = require("@ai-sdk/provider-utils");
10939
10970
 
10940
10971
  // src/ui/http-chat-transport.ts
10941
- var import_provider_utils33 = require("@ai-sdk/provider-utils");
10972
+ var import_provider_utils35 = require("@ai-sdk/provider-utils");
10942
10973
  var HttpChatTransport = class {
10943
10974
  constructor({
10944
10975
  api = "/api/chat",
@@ -10961,15 +10992,15 @@ var HttpChatTransport = class {
10961
10992
  abortSignal,
10962
10993
  ...options
10963
10994
  }) {
10964
- var _a15, _b, _c, _d, _e;
10965
- const resolvedBody = await (0, import_provider_utils33.resolve)(this.body);
10966
- const resolvedHeaders = await (0, import_provider_utils33.resolve)(this.headers);
10967
- const resolvedCredentials = await (0, import_provider_utils33.resolve)(this.credentials);
10995
+ var _a14, _b, _c, _d, _e;
10996
+ const resolvedBody = await (0, import_provider_utils35.resolve)(this.body);
10997
+ const resolvedHeaders = await (0, import_provider_utils35.resolve)(this.headers);
10998
+ const resolvedCredentials = await (0, import_provider_utils35.resolve)(this.credentials);
10968
10999
  const baseHeaders = {
10969
- ...(0, import_provider_utils33.normalizeHeaders)(resolvedHeaders),
10970
- ...(0, import_provider_utils33.normalizeHeaders)(options.headers)
11000
+ ...(0, import_provider_utils35.normalizeHeaders)(resolvedHeaders),
11001
+ ...(0, import_provider_utils35.normalizeHeaders)(options.headers)
10971
11002
  };
10972
- const preparedRequest = await ((_a15 = this.prepareSendMessagesRequest) == null ? void 0 : _a15.call(this, {
11003
+ const preparedRequest = await ((_a14 = this.prepareSendMessagesRequest) == null ? void 0 : _a14.call(this, {
10973
11004
  api: this.api,
10974
11005
  id: options.chatId,
10975
11006
  messages: options.messages,
@@ -10981,7 +11012,7 @@ var HttpChatTransport = class {
10981
11012
  messageId: options.messageId
10982
11013
  }));
10983
11014
  const api = (_b = preparedRequest == null ? void 0 : preparedRequest.api) != null ? _b : this.api;
10984
- const headers = (preparedRequest == null ? void 0 : preparedRequest.headers) !== void 0 ? (0, import_provider_utils33.normalizeHeaders)(preparedRequest.headers) : baseHeaders;
11015
+ const headers = (preparedRequest == null ? void 0 : preparedRequest.headers) !== void 0 ? (0, import_provider_utils35.normalizeHeaders)(preparedRequest.headers) : baseHeaders;
10985
11016
  const body = (preparedRequest == null ? void 0 : preparedRequest.body) !== void 0 ? preparedRequest.body : {
10986
11017
  ...resolvedBody,
10987
11018
  ...options.body,
@@ -10994,13 +11025,13 @@ var HttpChatTransport = class {
10994
11025
  const fetch2 = (_d = this.fetch) != null ? _d : globalThis.fetch;
10995
11026
  const response = await fetch2(api, {
10996
11027
  method: "POST",
10997
- headers: (0, import_provider_utils33.withUserAgentSuffix)(
11028
+ headers: (0, import_provider_utils35.withUserAgentSuffix)(
10998
11029
  {
10999
11030
  "Content-Type": "application/json",
11000
11031
  ...headers
11001
11032
  },
11002
11033
  `ai-sdk/${VERSION}`,
11003
- (0, import_provider_utils33.getRuntimeEnvironmentUserAgent)()
11034
+ (0, import_provider_utils35.getRuntimeEnvironmentUserAgent)()
11004
11035
  ),
11005
11036
  body: JSON.stringify(body),
11006
11037
  credentials,
@@ -11017,15 +11048,15 @@ var HttpChatTransport = class {
11017
11048
  return this.processResponseStream(response.body);
11018
11049
  }
11019
11050
  async reconnectToStream(options) {
11020
- var _a15, _b, _c, _d, _e;
11021
- const resolvedBody = await (0, import_provider_utils33.resolve)(this.body);
11022
- const resolvedHeaders = await (0, import_provider_utils33.resolve)(this.headers);
11023
- const resolvedCredentials = await (0, import_provider_utils33.resolve)(this.credentials);
11051
+ var _a14, _b, _c, _d, _e;
11052
+ const resolvedBody = await (0, import_provider_utils35.resolve)(this.body);
11053
+ const resolvedHeaders = await (0, import_provider_utils35.resolve)(this.headers);
11054
+ const resolvedCredentials = await (0, import_provider_utils35.resolve)(this.credentials);
11024
11055
  const baseHeaders = {
11025
- ...(0, import_provider_utils33.normalizeHeaders)(resolvedHeaders),
11026
- ...(0, import_provider_utils33.normalizeHeaders)(options.headers)
11056
+ ...(0, import_provider_utils35.normalizeHeaders)(resolvedHeaders),
11057
+ ...(0, import_provider_utils35.normalizeHeaders)(options.headers)
11027
11058
  };
11028
- const preparedRequest = await ((_a15 = this.prepareReconnectToStreamRequest) == null ? void 0 : _a15.call(this, {
11059
+ const preparedRequest = await ((_a14 = this.prepareReconnectToStreamRequest) == null ? void 0 : _a14.call(this, {
11029
11060
  api: this.api,
11030
11061
  id: options.chatId,
11031
11062
  body: { ...resolvedBody, ...options.body },
@@ -11034,15 +11065,15 @@ var HttpChatTransport = class {
11034
11065
  requestMetadata: options.metadata
11035
11066
  }));
11036
11067
  const api = (_b = preparedRequest == null ? void 0 : preparedRequest.api) != null ? _b : `${this.api}/${options.chatId}/stream`;
11037
- const headers = (preparedRequest == null ? void 0 : preparedRequest.headers) !== void 0 ? (0, import_provider_utils33.normalizeHeaders)(preparedRequest.headers) : baseHeaders;
11068
+ const headers = (preparedRequest == null ? void 0 : preparedRequest.headers) !== void 0 ? (0, import_provider_utils35.normalizeHeaders)(preparedRequest.headers) : baseHeaders;
11038
11069
  const credentials = (_c = preparedRequest == null ? void 0 : preparedRequest.credentials) != null ? _c : resolvedCredentials;
11039
11070
  const fetch2 = (_d = this.fetch) != null ? _d : globalThis.fetch;
11040
11071
  const response = await fetch2(api, {
11041
11072
  method: "GET",
11042
- headers: (0, import_provider_utils33.withUserAgentSuffix)(
11073
+ headers: (0, import_provider_utils35.withUserAgentSuffix)(
11043
11074
  headers,
11044
11075
  `ai-sdk/${VERSION}`,
11045
- (0, import_provider_utils33.getRuntimeEnvironmentUserAgent)()
11076
+ (0, import_provider_utils35.getRuntimeEnvironmentUserAgent)()
11046
11077
  ),
11047
11078
  credentials
11048
11079
  });
@@ -11067,7 +11098,7 @@ var DefaultChatTransport = class extends HttpChatTransport {
11067
11098
  super(options);
11068
11099
  }
11069
11100
  processResponseStream(stream) {
11070
- return (0, import_provider_utils34.parseJsonEventStream)({
11101
+ return (0, import_provider_utils36.parseJsonEventStream)({
11071
11102
  stream,
11072
11103
  schema: uiMessageChunkSchema
11073
11104
  }).pipeThrough(
@@ -11086,7 +11117,7 @@ var DefaultChatTransport = class extends HttpChatTransport {
11086
11117
  // src/ui/chat.ts
11087
11118
  var AbstractChat = class {
11088
11119
  constructor({
11089
- generateId: generateId2 = import_provider_utils35.generateId,
11120
+ generateId: generateId2 = import_provider_utils37.generateId,
11090
11121
  id = generateId2(),
11091
11122
  transport = new DefaultChatTransport(),
11092
11123
  messageMetadataSchema,
@@ -11107,11 +11138,11 @@ var AbstractChat = class {
11107
11138
  * If a messageId is provided, the message will be replaced.
11108
11139
  */
11109
11140
  this.sendMessage = async (message, options) => {
11110
- var _a15, _b, _c, _d;
11141
+ var _a14, _b, _c, _d;
11111
11142
  if (message == null) {
11112
11143
  await this.makeRequest({
11113
11144
  trigger: "submit-message",
11114
- messageId: (_a15 = this.lastMessage) == null ? void 0 : _a15.id,
11145
+ messageId: (_a14 = this.lastMessage) == null ? void 0 : _a14.id,
11115
11146
  ...options
11116
11147
  });
11117
11148
  return;
@@ -11204,7 +11235,7 @@ var AbstractChat = class {
11204
11235
  approved,
11205
11236
  reason
11206
11237
  }) => this.jobExecutor.run(async () => {
11207
- var _a15, _b;
11238
+ var _a14, _b;
11208
11239
  const messages = this.state.messages;
11209
11240
  const lastMessage = messages[messages.length - 1];
11210
11241
  const updatePart = (part) => isToolUIPart(part) && part.state === "approval-requested" && part.approval.id === id ? {
@@ -11219,7 +11250,7 @@ var AbstractChat = class {
11219
11250
  if (this.activeResponse) {
11220
11251
  this.activeResponse.state.message.parts = this.activeResponse.state.message.parts.map(updatePart);
11221
11252
  }
11222
- if (this.status !== "streaming" && this.status !== "submitted" && ((_a15 = this.sendAutomaticallyWhen) == null ? void 0 : _a15.call(this, { messages: this.state.messages }))) {
11253
+ if (this.status !== "streaming" && this.status !== "submitted" && ((_a14 = this.sendAutomaticallyWhen) == null ? void 0 : _a14.call(this, { messages: this.state.messages }))) {
11223
11254
  this.makeRequest({
11224
11255
  trigger: "submit-message",
11225
11256
  messageId: (_b = this.lastMessage) == null ? void 0 : _b.id
@@ -11233,7 +11264,7 @@ var AbstractChat = class {
11233
11264
  output,
11234
11265
  errorText
11235
11266
  }) => this.jobExecutor.run(async () => {
11236
- var _a15, _b;
11267
+ var _a14, _b;
11237
11268
  const messages = this.state.messages;
11238
11269
  const lastMessage = messages[messages.length - 1];
11239
11270
  const updatePart = (part) => isToolUIPart(part) && part.toolCallId === toolCallId ? { ...part, state, output, errorText } : part;
@@ -11244,7 +11275,7 @@ var AbstractChat = class {
11244
11275
  if (this.activeResponse) {
11245
11276
  this.activeResponse.state.message.parts = this.activeResponse.state.message.parts.map(updatePart);
11246
11277
  }
11247
- if (this.status !== "streaming" && this.status !== "submitted" && ((_a15 = this.sendAutomaticallyWhen) == null ? void 0 : _a15.call(this, { messages: this.state.messages }))) {
11278
+ if (this.status !== "streaming" && this.status !== "submitted" && ((_a14 = this.sendAutomaticallyWhen) == null ? void 0 : _a14.call(this, { messages: this.state.messages }))) {
11248
11279
  this.makeRequest({
11249
11280
  trigger: "submit-message",
11250
11281
  messageId: (_b = this.lastMessage) == null ? void 0 : _b.id
@@ -11257,10 +11288,10 @@ var AbstractChat = class {
11257
11288
  * Abort the current request immediately, keep the generated tokens if any.
11258
11289
  */
11259
11290
  this.stop = async () => {
11260
- var _a15;
11291
+ var _a14;
11261
11292
  if (this.status !== "streaming" && this.status !== "submitted")
11262
11293
  return;
11263
- if ((_a15 = this.activeResponse) == null ? void 0 : _a15.abortController) {
11294
+ if ((_a14 = this.activeResponse) == null ? void 0 : _a14.abortController) {
11264
11295
  this.activeResponse.abortController.abort();
11265
11296
  }
11266
11297
  };
@@ -11315,7 +11346,7 @@ var AbstractChat = class {
11315
11346
  body,
11316
11347
  messageId
11317
11348
  }) {
11318
- var _a15, _b, _c, _d;
11349
+ var _a14, _b, _c, _d;
11319
11350
  this.setStatus({ status: "submitted", error: void 0 });
11320
11351
  const lastMessage = this.lastMessage;
11321
11352
  let isAbort = false;
@@ -11364,9 +11395,9 @@ var AbstractChat = class {
11364
11395
  () => job({
11365
11396
  state: activeResponse.state,
11366
11397
  write: () => {
11367
- var _a16;
11398
+ var _a15;
11368
11399
  this.setStatus({ status: "streaming" });
11369
- const replaceLastMessage = activeResponse.state.message.id === ((_a16 = this.lastMessage) == null ? void 0 : _a16.id);
11400
+ const replaceLastMessage = activeResponse.state.message.id === ((_a15 = this.lastMessage) == null ? void 0 : _a15.id);
11370
11401
  if (replaceLastMessage) {
11371
11402
  this.state.replaceMessage(
11372
11403
  this.state.messages.length - 1,
@@ -11418,7 +11449,7 @@ var AbstractChat = class {
11418
11449
  isAbort,
11419
11450
  isDisconnect,
11420
11451
  isError,
11421
- finishReason: (_a15 = this.activeResponse) == null ? void 0 : _a15.state.finishReason
11452
+ finishReason: (_a14 = this.activeResponse) == null ? void 0 : _a14.state.finishReason
11422
11453
  });
11423
11454
  } catch (err) {
11424
11455
  console.error(err);
@@ -11586,6 +11617,7 @@ var TextStreamChatTransport = class extends HttpChatTransport {
11586
11617
  extractReasoningMiddleware,
11587
11618
  gateway,
11588
11619
  generateId,
11620
+ generateImage,
11589
11621
  generateObject,
11590
11622
  generateText,
11591
11623
  getStaticToolName,