@mastra/ai-sdk 1.10.4 → 1.10.5-alpha.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -1,7 +1,8 @@
1
1
  import * as z4 from "zod/v4";
2
- import { z } from "zod/v4";
2
+ import { array, boolean, custom, discriminatedUnion, enum as enum$1, instanceof as instanceof$1, lazy, literal, looseObject, never, null as null$1, number, object, record, safeParseAsync, string, union, unknown, z } from "zod/v4";
3
3
  import { ZodFirstPartyTypeKind } from "zod/v3";
4
4
  import { z as z$1 } from "zod";
5
+ import { toJSONSchema } from "zod/v4/core";
5
6
  import { registerApiRoute } from "@mastra/core/server";
6
7
  import { DefaultGeneratedFile, DefaultGeneratedFileWithType, convertFullStreamChunkToMastra, smoothStream as smoothStream$1 } from "@mastra/core/stream";
7
8
  import { ReadableStream as ReadableStream$1, TransformStream as TransformStream$1 } from "stream/web";
@@ -9,12 +10,12 @@ import { MASTRA_RESOURCE_ID_KEY } from "@mastra/core/request-context";
9
10
  import { MessageList, TripWire, aiV5ModelMessageToV2PromptMessage } from "@mastra/core/agent";
10
11
  import { RequestContext } from "@mastra/core/di";
11
12
  import { MessageHistory, SemanticRecall, WorkingMemory } from "@mastra/core/processors";
12
- //#region ../../packages/_vendored/ai_v5/dist/dist-CQthBS6n.js
13
- var marker$1$6 = "vercel.ai.error";
14
- var symbol$1$7 = Symbol.for(marker$1$6);
15
- var _a$1$7;
16
- var _b$1$4;
17
- var AISDKError$2 = class _AISDKError extends (_b$1$4 = Error, _a$1$7 = symbol$1$7, _b$1$4) {
13
+ //#region ../../packages/_vendored/ai_v5/dist/dist-DeQB2Mal.js
14
+ var marker$2$4 = "vercel.ai.error";
15
+ var symbol$2$3 = Symbol.for(marker$2$4);
16
+ var _a$2$3;
17
+ var _b$2$4;
18
+ var AISDKError$1$3 = class _AISDKError extends (_b$2$4 = Error, _a$2$3 = symbol$2$3, _b$2$4) {
18
19
  /**
19
20
  * Creates an AI SDK Error.
20
21
  *
@@ -25,7 +26,7 @@ var AISDKError$2 = class _AISDKError extends (_b$1$4 = Error, _a$1$7 = symbol$1$
25
26
  */
26
27
  constructor({ name: name14, message, cause }) {
27
28
  super(message);
28
- this[_a$1$7] = true;
29
+ this[_a$2$3] = true;
29
30
  this.name = name14;
30
31
  this.cause = cause;
31
32
  }
@@ -35,26 +36,26 @@ var AISDKError$2 = class _AISDKError extends (_b$1$4 = Error, _a$1$7 = symbol$1$
35
36
  * @returns {boolean} True if the error is an AI SDK Error, false otherwise.
36
37
  */
37
38
  static isInstance(error) {
38
- return _AISDKError.hasMarker(error, marker$1$6);
39
+ return _AISDKError.hasMarker(error, marker$2$4);
39
40
  }
40
41
  static hasMarker(error, marker15) {
41
42
  const markerSymbol = Symbol.for(marker15);
42
43
  return error != null && typeof error === "object" && markerSymbol in error && typeof error[markerSymbol] === "boolean" && error[markerSymbol] === true;
43
44
  }
44
45
  };
45
- var name$1$7 = "AI_APICallError";
46
- var marker2$5 = `vercel.ai.error.${name$1$7}`;
47
- var symbol2$5 = Symbol.for(marker2$5);
48
- var _a2$5;
49
- var _b2$4;
50
- var APICallError$2 = class extends (_b2$4 = AISDKError$2, _a2$5 = symbol2$5, _b2$4) {
46
+ var name$2$3 = "AI_APICallError";
47
+ var marker2$1$7 = `vercel.ai.error.${name$2$3}`;
48
+ var symbol2$1$7 = Symbol.for(marker2$1$7);
49
+ var _a2$1$7;
50
+ var _b2$1$5;
51
+ var APICallError$1$3 = class extends (_b2$1$5 = AISDKError$1$3, _a2$1$7 = symbol2$1$7, _b2$1$5) {
51
52
  constructor({ message, url, requestBodyValues, statusCode, responseHeaders, responseBody, cause, isRetryable = statusCode != null && (statusCode === 408 || statusCode === 409 || statusCode === 429 || statusCode >= 500), data }) {
52
53
  super({
53
- name: name$1$7,
54
+ name: name$2$3,
54
55
  message,
55
56
  cause
56
57
  });
57
- this[_a2$5] = true;
58
+ this[_a2$1$7] = true;
58
59
  this.url = url;
59
60
  this.requestBodyValues = requestBodyValues;
60
61
  this.statusCode = statusCode;
@@ -64,217 +65,217 @@ var APICallError$2 = class extends (_b2$4 = AISDKError$2, _a2$5 = symbol2$5, _b2
64
65
  this.data = data;
65
66
  }
66
67
  static isInstance(error) {
67
- return AISDKError$2.hasMarker(error, marker2$5);
68
+ return AISDKError$1$3.hasMarker(error, marker2$1$7);
68
69
  }
69
70
  };
70
- var name2$5 = "AI_EmptyResponseBodyError";
71
- var marker3$5 = `vercel.ai.error.${name2$5}`;
72
- var symbol3$5 = Symbol.for(marker3$5);
73
- var _a3$5;
74
- var _b3$3;
75
- var EmptyResponseBodyError$2 = class extends (_b3$3 = AISDKError$2, _a3$5 = symbol3$5, _b3$3) {
71
+ var name2$1$7 = "AI_EmptyResponseBodyError";
72
+ var marker3$1$7 = `vercel.ai.error.${name2$1$7}`;
73
+ var symbol3$1$3 = Symbol.for(marker3$1$7);
74
+ var _a3$1$3;
75
+ var _b3$1$2;
76
+ var EmptyResponseBodyError$1$3 = class extends (_b3$1$2 = AISDKError$1$3, _a3$1$3 = symbol3$1$3, _b3$1$2) {
76
77
  constructor({ message = "Empty response body" } = {}) {
77
78
  super({
78
- name: name2$5,
79
+ name: name2$1$7,
79
80
  message
80
81
  });
81
- this[_a3$5] = true;
82
+ this[_a3$1$3] = true;
82
83
  }
83
84
  static isInstance(error) {
84
- return AISDKError$2.hasMarker(error, marker3$5);
85
+ return AISDKError$1$3.hasMarker(error, marker3$1$7);
85
86
  }
86
87
  };
87
- function getErrorMessage$1$1(error) {
88
+ function getErrorMessage$2$1(error) {
88
89
  if (error == null) return "unknown error";
89
90
  if (typeof error === "string") return error;
90
91
  if (error instanceof Error) return error.message;
91
92
  return JSON.stringify(error);
92
93
  }
93
- var name3$5 = "AI_InvalidArgumentError";
94
- var marker4$5 = `vercel.ai.error.${name3$5}`;
95
- var symbol4$5 = Symbol.for(marker4$5);
96
- var _a4$5;
97
- var _b4$3;
98
- var InvalidArgumentError$2 = class extends (_b4$3 = AISDKError$2, _a4$5 = symbol4$5, _b4$3) {
94
+ var name3$1$3 = "AI_InvalidArgumentError";
95
+ var marker4$1$3 = `vercel.ai.error.${name3$1$3}`;
96
+ var symbol4$1$3 = Symbol.for(marker4$1$3);
97
+ var _a4$1$3;
98
+ var _b4$1$2;
99
+ var InvalidArgumentError$1$2 = class extends (_b4$1$2 = AISDKError$1$3, _a4$1$3 = symbol4$1$3, _b4$1$2) {
99
100
  constructor({ message, cause, argument }) {
100
101
  super({
101
- name: name3$5,
102
+ name: name3$1$3,
102
103
  message,
103
104
  cause
104
105
  });
105
- this[_a4$5] = true;
106
+ this[_a4$1$3] = true;
106
107
  this.argument = argument;
107
108
  }
108
109
  static isInstance(error) {
109
- return AISDKError$2.hasMarker(error, marker4$5);
110
+ return AISDKError$1$3.hasMarker(error, marker4$1$3);
110
111
  }
111
112
  };
112
- var name4$5 = "AI_InvalidPromptError";
113
- var marker5$5 = `vercel.ai.error.${name4$5}`;
114
- var symbol5$5 = Symbol.for(marker5$5);
115
- var _a5$5;
116
- var _b5$3;
117
- (class extends (_b5$3 = AISDKError$2, _a5$5 = symbol5$5, _b5$3) {
113
+ var name4$1$3 = "AI_InvalidPromptError";
114
+ var marker5$1$3 = `vercel.ai.error.${name4$1$3}`;
115
+ var symbol5$1$3 = Symbol.for(marker5$1$3);
116
+ var _a5$1$3;
117
+ var _b5$1$2;
118
+ (class extends (_b5$1$2 = AISDKError$1$3, _a5$1$3 = symbol5$1$3, _b5$1$2) {
118
119
  constructor({ prompt, message, cause }) {
119
120
  super({
120
- name: name4$5,
121
+ name: name4$1$3,
121
122
  message: `Invalid prompt: ${message}`,
122
123
  cause
123
124
  });
124
- this[_a5$5] = true;
125
+ this[_a5$1$3] = true;
125
126
  this.prompt = prompt;
126
127
  }
127
128
  static isInstance(error) {
128
- return AISDKError$2.hasMarker(error, marker5$5);
129
+ return AISDKError$1$3.hasMarker(error, marker5$1$3);
129
130
  }
130
131
  });
131
- var name5$5 = "AI_InvalidResponseDataError";
132
- var marker6$5 = `vercel.ai.error.${name5$5}`;
133
- var symbol6$5 = Symbol.for(marker6$5);
134
- var _a6$5;
135
- var _b6$3;
136
- (class extends (_b6$3 = AISDKError$2, _a6$5 = symbol6$5, _b6$3) {
132
+ var name5$1$3 = "AI_InvalidResponseDataError";
133
+ var marker6$1$3 = `vercel.ai.error.${name5$1$3}`;
134
+ var symbol6$1$3 = Symbol.for(marker6$1$3);
135
+ var _a6$1$3;
136
+ var _b6$1$2;
137
+ (class extends (_b6$1$2 = AISDKError$1$3, _a6$1$3 = symbol6$1$3, _b6$1$2) {
137
138
  constructor({ data, message = `Invalid response data: ${JSON.stringify(data)}.` }) {
138
139
  super({
139
- name: name5$5,
140
+ name: name5$1$3,
140
141
  message
141
142
  });
142
- this[_a6$5] = true;
143
+ this[_a6$1$3] = true;
143
144
  this.data = data;
144
145
  }
145
146
  static isInstance(error) {
146
- return AISDKError$2.hasMarker(error, marker6$5);
147
+ return AISDKError$1$3.hasMarker(error, marker6$1$3);
147
148
  }
148
149
  });
149
- var name6$5 = "AI_JSONParseError";
150
- var marker7$5 = `vercel.ai.error.${name6$5}`;
151
- var symbol7$5 = Symbol.for(marker7$5);
152
- var _a7$5;
153
- var _b7$3;
154
- var JSONParseError$2 = class extends (_b7$3 = AISDKError$2, _a7$5 = symbol7$5, _b7$3) {
150
+ var name6$1$3 = "AI_JSONParseError";
151
+ var marker7$1$3 = `vercel.ai.error.${name6$1$3}`;
152
+ var symbol7$1$3 = Symbol.for(marker7$1$3);
153
+ var _a7$1$3;
154
+ var _b7$1$2;
155
+ var JSONParseError$1$3 = class extends (_b7$1$2 = AISDKError$1$3, _a7$1$3 = symbol7$1$3, _b7$1$2) {
155
156
  constructor({ text, cause }) {
156
157
  super({
157
- name: name6$5,
158
+ name: name6$1$3,
158
159
  message: `JSON parsing failed: Text: ${text}.
159
- Error message: ${getErrorMessage$1$1(cause)}`,
160
+ Error message: ${getErrorMessage$2$1(cause)}`,
160
161
  cause
161
162
  });
162
- this[_a7$5] = true;
163
+ this[_a7$1$3] = true;
163
164
  this.text = text;
164
165
  }
165
166
  static isInstance(error) {
166
- return AISDKError$2.hasMarker(error, marker7$5);
167
+ return AISDKError$1$3.hasMarker(error, marker7$1$3);
167
168
  }
168
169
  };
169
- var name7$5 = "AI_LoadAPIKeyError";
170
- var marker8$5 = `vercel.ai.error.${name7$5}`;
171
- var symbol8$5 = Symbol.for(marker8$5);
172
- var _a8$5;
173
- var _b8$3;
174
- (class extends (_b8$3 = AISDKError$2, _a8$5 = symbol8$5, _b8$3) {
170
+ var name7$1$3 = "AI_LoadAPIKeyError";
171
+ var marker8$1$3 = `vercel.ai.error.${name7$1$3}`;
172
+ var symbol8$1$3 = Symbol.for(marker8$1$3);
173
+ var _a8$1$3;
174
+ var _b8$1$2;
175
+ (class extends (_b8$1$2 = AISDKError$1$3, _a8$1$3 = symbol8$1$3, _b8$1$2) {
175
176
  constructor({ message }) {
176
177
  super({
177
- name: name7$5,
178
+ name: name7$1$3,
178
179
  message
179
180
  });
180
- this[_a8$5] = true;
181
+ this[_a8$1$3] = true;
181
182
  }
182
183
  static isInstance(error) {
183
- return AISDKError$2.hasMarker(error, marker8$5);
184
+ return AISDKError$1$3.hasMarker(error, marker8$1$3);
184
185
  }
185
186
  });
186
- var name8$5 = "AI_LoadSettingError";
187
- var marker9$5 = `vercel.ai.error.${name8$5}`;
188
- var symbol9$5 = Symbol.for(marker9$5);
189
- var _a9$5;
190
- var _b9$3;
191
- (class extends (_b9$3 = AISDKError$2, _a9$5 = symbol9$5, _b9$3) {
187
+ var name8$1$3 = "AI_LoadSettingError";
188
+ var marker9$1$3 = `vercel.ai.error.${name8$1$3}`;
189
+ var symbol9$1$3 = Symbol.for(marker9$1$3);
190
+ var _a9$1$3;
191
+ var _b9$1$2;
192
+ (class extends (_b9$1$2 = AISDKError$1$3, _a9$1$3 = symbol9$1$3, _b9$1$2) {
192
193
  constructor({ message }) {
193
194
  super({
194
- name: name8$5,
195
+ name: name8$1$3,
195
196
  message
196
197
  });
197
- this[_a9$5] = true;
198
+ this[_a9$1$3] = true;
198
199
  }
199
200
  static isInstance(error) {
200
- return AISDKError$2.hasMarker(error, marker9$5);
201
+ return AISDKError$1$3.hasMarker(error, marker9$1$3);
201
202
  }
202
203
  });
203
- var name9$5 = "AI_NoContentGeneratedError";
204
- var marker10$5 = `vercel.ai.error.${name9$5}`;
205
- var symbol10$5 = Symbol.for(marker10$5);
206
- var _a10$5;
207
- var _b10$2;
208
- (class extends (_b10$2 = AISDKError$2, _a10$5 = symbol10$5, _b10$2) {
204
+ var name9$1$2 = "AI_NoContentGeneratedError";
205
+ var marker10$1$2 = `vercel.ai.error.${name9$1$2}`;
206
+ var symbol10$1$2 = Symbol.for(marker10$1$2);
207
+ var _a10$1$2;
208
+ var _b10$1$2;
209
+ (class extends (_b10$1$2 = AISDKError$1$3, _a10$1$2 = symbol10$1$2, _b10$1$2) {
209
210
  constructor({ message = "No content generated." } = {}) {
210
211
  super({
211
- name: name9$5,
212
+ name: name9$1$2,
212
213
  message
213
214
  });
214
- this[_a10$5] = true;
215
+ this[_a10$1$2] = true;
215
216
  }
216
217
  static isInstance(error) {
217
- return AISDKError$2.hasMarker(error, marker10$5);
218
+ return AISDKError$1$3.hasMarker(error, marker10$1$2);
218
219
  }
219
220
  });
220
- var name10$5 = "AI_NoSuchModelError";
221
- var marker11$5 = `vercel.ai.error.${name10$5}`;
222
- var symbol11$5 = Symbol.for(marker11$5);
223
- var _a11$5;
224
- var _b11$2;
225
- (class extends (_b11$2 = AISDKError$2, _a11$5 = symbol11$5, _b11$2) {
226
- constructor({ errorName = name10$5, modelId, modelType, message = `No such ${modelType}: ${modelId}` }) {
221
+ var name10$1$2 = "AI_NoSuchModelError";
222
+ var marker11$1$2 = `vercel.ai.error.${name10$1$2}`;
223
+ var symbol11$1$2 = Symbol.for(marker11$1$2);
224
+ var _a11$1$2;
225
+ var _b11$1$2;
226
+ (class extends (_b11$1$2 = AISDKError$1$3, _a11$1$2 = symbol11$1$2, _b11$1$2) {
227
+ constructor({ errorName = name10$1$2, modelId, modelType, message = `No such ${modelType}: ${modelId}` }) {
227
228
  super({
228
229
  name: errorName,
229
230
  message
230
231
  });
231
- this[_a11$5] = true;
232
+ this[_a11$1$2] = true;
232
233
  this.modelId = modelId;
233
234
  this.modelType = modelType;
234
235
  }
235
236
  static isInstance(error) {
236
- return AISDKError$2.hasMarker(error, marker11$5);
237
+ return AISDKError$1$3.hasMarker(error, marker11$1$2);
237
238
  }
238
239
  });
239
- var name11$5 = "AI_TooManyEmbeddingValuesForCallError";
240
- var marker12$5 = `vercel.ai.error.${name11$5}`;
241
- var symbol12$5 = Symbol.for(marker12$5);
242
- var _a12$5;
243
- var _b12$2;
244
- (class extends (_b12$2 = AISDKError$2, _a12$5 = symbol12$5, _b12$2) {
240
+ var name11$1$2 = "AI_TooManyEmbeddingValuesForCallError";
241
+ var marker12$1$2 = `vercel.ai.error.${name11$1$2}`;
242
+ var symbol12$1$2 = Symbol.for(marker12$1$2);
243
+ var _a12$1$2;
244
+ var _b12$1$2;
245
+ (class extends (_b12$1$2 = AISDKError$1$3, _a12$1$2 = symbol12$1$2, _b12$1$2) {
245
246
  constructor(options) {
246
247
  super({
247
- name: name11$5,
248
+ name: name11$1$2,
248
249
  message: `Too many values for a single embedding call. The ${options.provider} model "${options.modelId}" can only embed up to ${options.maxEmbeddingsPerCall} values per call, but ${options.values.length} values were provided.`
249
250
  });
250
- this[_a12$5] = true;
251
+ this[_a12$1$2] = true;
251
252
  this.provider = options.provider;
252
253
  this.modelId = options.modelId;
253
254
  this.maxEmbeddingsPerCall = options.maxEmbeddingsPerCall;
254
255
  this.values = options.values;
255
256
  }
256
257
  static isInstance(error) {
257
- return AISDKError$2.hasMarker(error, marker12$5);
258
+ return AISDKError$1$3.hasMarker(error, marker12$1$2);
258
259
  }
259
260
  });
260
- var name12$5 = "AI_TypeValidationError";
261
- var marker13$5 = `vercel.ai.error.${name12$5}`;
262
- var symbol13$5 = Symbol.for(marker13$5);
263
- var _a13$5;
264
- var _b13$2;
265
- var TypeValidationError$2 = class _TypeValidationError extends (_b13$2 = AISDKError$2, _a13$5 = symbol13$5, _b13$2) {
261
+ var name12$1$2 = "AI_TypeValidationError";
262
+ var marker13$1$2 = `vercel.ai.error.${name12$1$2}`;
263
+ var symbol13$1$2 = Symbol.for(marker13$1$2);
264
+ var _a13$1$2;
265
+ var _b13$1$2;
266
+ var TypeValidationError$1$3 = class _TypeValidationError extends (_b13$1$2 = AISDKError$1$3, _a13$1$2 = symbol13$1$2, _b13$1$2) {
266
267
  constructor({ value, cause }) {
267
268
  super({
268
- name: name12$5,
269
+ name: name12$1$2,
269
270
  message: `Type validation failed: Value: ${JSON.stringify(value)}.
270
- Error message: ${getErrorMessage$1$1(cause)}`,
271
+ Error message: ${getErrorMessage$2$1(cause)}`,
271
272
  cause
272
273
  });
273
- this[_a13$5] = true;
274
+ this[_a13$1$2] = true;
274
275
  this.value = value;
275
276
  }
276
277
  static isInstance(error) {
277
- return AISDKError$2.hasMarker(error, marker13$5);
278
+ return AISDKError$1$3.hasMarker(error, marker13$1$2);
278
279
  }
279
280
  /**
280
281
  * Wraps an error into a TypeValidationError.
@@ -293,22 +294,22 @@ Error message: ${getErrorMessage$1$1(cause)}`,
293
294
  });
294
295
  }
295
296
  };
296
- var name13$5 = "AI_UnsupportedFunctionalityError";
297
- var marker14$5 = `vercel.ai.error.${name13$5}`;
298
- var symbol14$5 = Symbol.for(marker14$5);
299
- var _a14$5;
300
- var _b14$2;
301
- (class extends (_b14$2 = AISDKError$2, _a14$5 = symbol14$5, _b14$2) {
297
+ var name13$1$2 = "AI_UnsupportedFunctionalityError";
298
+ var marker14$1$2 = `vercel.ai.error.${name13$1$2}`;
299
+ var symbol14$1$2 = Symbol.for(marker14$1$2);
300
+ var _a14$1$2;
301
+ var _b14$1$2;
302
+ (class extends (_b14$1$2 = AISDKError$1$3, _a14$1$2 = symbol14$1$2, _b14$1$2) {
302
303
  constructor({ functionality, message = `'${functionality}' functionality not supported.` }) {
303
304
  super({
304
- name: name13$5,
305
+ name: name13$1$2,
305
306
  message
306
307
  });
307
- this[_a14$5] = true;
308
+ this[_a14$1$2] = true;
308
309
  this.functionality = functionality;
309
310
  }
310
311
  static isInstance(error) {
311
- return AISDKError$2.hasMarker(error, marker14$5);
312
+ return AISDKError$1$3.hasMarker(error, marker14$1$2);
312
313
  }
313
314
  });
314
315
  var ParseError$2 = class extends Error {
@@ -506,25 +507,25 @@ function combineHeaders(...headers) {
506
507
  function extractResponseHeaders(response) {
507
508
  return Object.fromEntries([...response.headers]);
508
509
  }
509
- var name$8 = "AI_DownloadError";
510
- var marker$7 = `vercel.ai.error.${name$8}`;
511
- var symbol$8 = Symbol.for(marker$7);
512
- var _a$8;
513
- var _b$5;
514
- var DownloadError$2 = class extends (_b$5 = AISDKError$2, _a$8 = symbol$8, _b$5) {
510
+ var name$1$7 = "AI_DownloadError";
511
+ var marker$1$5 = `vercel.ai.error.${name$1$7}`;
512
+ var symbol$1$7 = Symbol.for(marker$1$5);
513
+ var _a$1$7;
514
+ var _b$1$5;
515
+ var DownloadError$2 = class extends (_b$1$5 = AISDKError$1$3, _a$1$7 = symbol$1$7, _b$1$5) {
515
516
  constructor({ url, statusCode, statusText, cause, message = cause == null ? `Failed to download ${url}: ${statusCode} ${statusText}` : `Failed to download ${url}: ${cause}` }) {
516
517
  super({
517
- name: name$8,
518
+ name: name$1$7,
518
519
  message,
519
520
  cause
520
521
  });
521
- this[_a$8] = true;
522
+ this[_a$1$7] = true;
522
523
  this.url = url;
523
524
  this.statusCode = statusCode;
524
525
  this.statusText = statusText;
525
526
  }
526
527
  static isInstance(error) {
527
- return AISDKError$2.hasMarker(error, marker$7);
528
+ return AISDKError$1$3.hasMarker(error, marker$1$5);
528
529
  }
529
530
  };
530
531
  async function cancelResponseBody$2(response) {
@@ -533,9 +534,9 @@ async function cancelResponseBody$2(response) {
533
534
  await ((_a2 = response.body) == null ? void 0 : _a2.cancel());
534
535
  } catch (e) {}
535
536
  }
536
- var initialGlobalFetch$2 = globalThis.fetch;
537
- isNodeDefaultFetch$2(initialGlobalFetch$2);
538
- function isNodeDefaultFetch$2(fetch) {
537
+ var initialGlobalFetch$1 = globalThis.fetch;
538
+ isNodeDefaultFetch$1(initialGlobalFetch$1);
539
+ function isNodeDefaultFetch$1(fetch) {
539
540
  if (typeof fetch !== "function") return false;
540
541
  const source = Function.prototype.toString.call(fetch);
541
542
  return source.includes("internal/deps/undici") || source.includes("lazy loading of undici");
@@ -586,7 +587,7 @@ async function readResponseWithSizeLimit$2({ response, url, maxBytes = DEFAULT_M
586
587
  } finally {
587
588
  try {
588
589
  await reader.cancel();
589
- } finally {
590
+ } catch (e) {} finally {
590
591
  reader.releaseLock();
591
592
  }
592
593
  }
@@ -606,7 +607,7 @@ var createIdGenerator$2 = ({ prefix, size = 16, alphabet = "0123456789ABCDEFGHIJ
606
607
  return chars.join("");
607
608
  };
608
609
  if (prefix == null) return generator;
609
- if (alphabet.includes(separator)) throw new InvalidArgumentError$2({
610
+ if (alphabet.includes(separator)) throw new InvalidArgumentError$1$2({
610
611
  argument: "separator",
611
612
  message: `The separator "${separator}" must not be part of the alphabet "${alphabet}".`
612
613
  });
@@ -617,11 +618,34 @@ function isAbortError(error) {
617
618
  return (error instanceof Error || error instanceof DOMException) && (error.name === "AbortError" || error.name === "ResponseAborted" || error.name === "TimeoutError");
618
619
  }
619
620
  var FETCH_FAILED_ERROR_MESSAGES = ["fetch failed", "failed to fetch"];
621
+ var RETRYABLE_NETWORK_ERROR_CODES = /* @__PURE__ */ new Set([
622
+ "ConnectionRefused",
623
+ "ConnectionClosed",
624
+ "FailedToOpenSocket",
625
+ "ECONNRESET",
626
+ "ECONNREFUSED",
627
+ "ETIMEDOUT",
628
+ "EPIPE",
629
+ "UND_ERR_SOCKET",
630
+ "UND_ERR_HEADERS_TIMEOUT",
631
+ "UND_ERR_BODY_TIMEOUT",
632
+ "UND_ERR_CONNECT_TIMEOUT"
633
+ ]);
634
+ function findNetworkError(error) {
635
+ const visited = /* @__PURE__ */ new Set();
636
+ let current = error;
637
+ while (current instanceof Error && !visited.has(current)) {
638
+ visited.add(current);
639
+ const errorWithCode = current;
640
+ if (typeof errorWithCode.code === "string" && RETRYABLE_NETWORK_ERROR_CODES.has(errorWithCode.code)) return errorWithCode;
641
+ current = current.cause;
642
+ }
643
+ }
620
644
  function handleFetchError({ error, url, requestBodyValues }) {
621
645
  if (isAbortError(error)) return error;
622
646
  if (error instanceof TypeError && FETCH_FAILED_ERROR_MESSAGES.includes(error.message.toLowerCase())) {
623
647
  const cause = error.cause;
624
- if (cause != null) return new APICallError$2({
648
+ if (cause != null) return new APICallError$1$3({
625
649
  message: `Cannot connect to API: ${cause.message}`,
626
650
  cause,
627
651
  url,
@@ -629,6 +653,27 @@ function handleFetchError({ error, url, requestBodyValues }) {
629
653
  isRetryable: true
630
654
  });
631
655
  }
656
+ const networkError = findNetworkError(error);
657
+ if (networkError != null) {
658
+ if (APICallError$1$3.isInstance(error)) return new APICallError$1$3({
659
+ message: error.message,
660
+ cause: error.cause,
661
+ url: error.url,
662
+ requestBodyValues: error.requestBodyValues,
663
+ statusCode: error.statusCode,
664
+ responseHeaders: error.responseHeaders,
665
+ responseBody: error.responseBody,
666
+ data: error.data,
667
+ isRetryable: true
668
+ });
669
+ return new APICallError$1$3({
670
+ message: `Cannot connect to API: ${error instanceof Error ? error.message : networkError.message}`,
671
+ cause: error,
672
+ url,
673
+ requestBodyValues,
674
+ isRetryable: true
675
+ });
676
+ }
632
677
  return error;
633
678
  }
634
679
  function getRuntimeEnvironmentUserAgent$2(globalThisAny = globalThis) {
@@ -657,7 +702,7 @@ function withUserAgentSuffix$2(headers, ...userAgentSuffixParts) {
657
702
  normalizedHeaders.set("user-agent", [currentUserAgentHeader, ...userAgentSuffixParts].filter(Boolean).join(" "));
658
703
  return Object.fromEntries(normalizedHeaders.entries());
659
704
  }
660
- var VERSION$4 = "3.0.31";
705
+ var VERSION$4 = "3.0.38";
661
706
  var getOriginalFetch = () => globalThis.fetch;
662
707
  var getFromApi = async ({ url, headers = {}, successfulResponseHandler, failedResponseHandler, abortSignal, fetch = getOriginalFetch() }) => {
663
708
  try {
@@ -676,8 +721,8 @@ var getFromApi = async ({ url, headers = {}, successfulResponseHandler, failedRe
676
721
  requestBodyValues: {}
677
722
  });
678
723
  } catch (error) {
679
- if (isAbortError(error) || APICallError$2.isInstance(error)) throw error;
680
- throw new APICallError$2({
724
+ if (isAbortError(error) || APICallError$1$3.isInstance(error)) throw error;
725
+ throw new APICallError$1$3({
681
726
  message: "Failed to process error response",
682
727
  cause: error,
683
728
  statusCode: response.status,
@@ -696,9 +741,9 @@ var getFromApi = async ({ url, headers = {}, successfulResponseHandler, failedRe
696
741
  });
697
742
  } catch (error) {
698
743
  if (error instanceof Error) {
699
- if (isAbortError(error) || APICallError$2.isInstance(error)) throw error;
744
+ if (isAbortError(error) || APICallError$1$3.isInstance(error)) throw error;
700
745
  }
701
- throw new APICallError$2({
746
+ throw new APICallError$1$3({
702
747
  message: "Failed to process successful response",
703
748
  cause: error,
704
749
  statusCode: response.status,
@@ -787,7 +832,7 @@ function standardSchemaValidator(standardSchema) {
787
832
  value: result.value
788
833
  } : {
789
834
  success: false,
790
- error: new TypeValidationError$2({
835
+ error: new TypeValidationError$1$3({
791
836
  value,
792
837
  cause: result.issues
793
838
  })
@@ -799,7 +844,7 @@ async function validateTypes$2({ value, schema }) {
799
844
  value,
800
845
  schema
801
846
  });
802
- if (!result.success) throw TypeValidationError$2.wrap({
847
+ if (!result.success) throw TypeValidationError$1$3.wrap({
803
848
  value,
804
849
  cause: result.error
805
850
  });
@@ -821,7 +866,7 @@ async function safeValidateTypes$2({ value, schema }) {
821
866
  };
822
867
  return {
823
868
  success: false,
824
- error: TypeValidationError$2.wrap({
869
+ error: TypeValidationError$1$3.wrap({
825
870
  value,
826
871
  cause: result.error
827
872
  }),
@@ -830,7 +875,7 @@ async function safeValidateTypes$2({ value, schema }) {
830
875
  } catch (error) {
831
876
  return {
832
877
  success: false,
833
- error: TypeValidationError$2.wrap({
878
+ error: TypeValidationError$1$3.wrap({
834
879
  value,
835
880
  cause: error
836
881
  }),
@@ -847,8 +892,8 @@ async function parseJSON({ text, schema }) {
847
892
  schema
848
893
  });
849
894
  } catch (error) {
850
- if (JSONParseError$2.isInstance(error) || TypeValidationError$2.isInstance(error)) throw error;
851
- throw new JSONParseError$2({
895
+ if (JSONParseError$1$3.isInstance(error) || TypeValidationError$1$3.isInstance(error)) throw error;
896
+ throw new JSONParseError$1$3({
852
897
  text,
853
898
  cause: error
854
899
  });
@@ -869,7 +914,7 @@ async function safeParseJSON$2({ text, schema }) {
869
914
  } catch (error) {
870
915
  return {
871
916
  success: false,
872
- error: JSONParseError$2.isInstance(error) ? error : new JSONParseError$2({
917
+ error: JSONParseError$1$3.isInstance(error) ? error : new JSONParseError$1$3({
873
918
  text,
874
919
  cause: error
875
920
  }),
@@ -920,8 +965,8 @@ var postToApi = async ({ url, headers = {}, body, successfulResponseHandler, fai
920
965
  requestBodyValues: body.values
921
966
  });
922
967
  } catch (error) {
923
- if (isAbortError(error) || APICallError$2.isInstance(error)) throw error;
924
- throw new APICallError$2({
968
+ if (isAbortError(error) || APICallError$1$3.isInstance(error)) throw error;
969
+ throw new APICallError$1$3({
925
970
  message: "Failed to process error response",
926
971
  cause: error,
927
972
  statusCode: response.status,
@@ -940,9 +985,9 @@ var postToApi = async ({ url, headers = {}, body, successfulResponseHandler, fai
940
985
  });
941
986
  } catch (error) {
942
987
  if (error instanceof Error) {
943
- if (isAbortError(error) || APICallError$2.isInstance(error)) throw error;
988
+ if (isAbortError(error) || APICallError$1$3.isInstance(error)) throw error;
944
989
  }
945
- throw new APICallError$2({
990
+ throw new APICallError$1$3({
946
991
  message: "Failed to process successful response",
947
992
  cause: error,
948
993
  statusCode: response.status,
@@ -982,6 +1027,52 @@ async function resolve$2(value) {
982
1027
  return Promise.resolve(value);
983
1028
  }
984
1029
  var textDecoder$2 = new TextDecoder();
1030
+ function wrapResponseBodyStream({ stream, url, requestBodyValues, statusCode, responseHeaders }) {
1031
+ const reader = stream.getReader();
1032
+ let readerReleased = false;
1033
+ const releaseReader = () => {
1034
+ if (!readerReleased) {
1035
+ reader.releaseLock();
1036
+ readerReleased = true;
1037
+ }
1038
+ };
1039
+ return new ReadableStream({
1040
+ async pull(controller) {
1041
+ try {
1042
+ const { done, value } = await reader.read();
1043
+ if (done) {
1044
+ releaseReader();
1045
+ controller.close();
1046
+ } else controller.enqueue(value);
1047
+ } catch (error) {
1048
+ releaseReader();
1049
+ if (isAbortError(error)) {
1050
+ controller.error(error);
1051
+ return;
1052
+ }
1053
+ controller.error(handleFetchError({
1054
+ error: new APICallError$1$3({
1055
+ message: "Failed to process successful response",
1056
+ cause: error,
1057
+ statusCode,
1058
+ url,
1059
+ responseHeaders,
1060
+ requestBodyValues
1061
+ }),
1062
+ url,
1063
+ requestBodyValues
1064
+ }));
1065
+ }
1066
+ },
1067
+ async cancel(reason) {
1068
+ try {
1069
+ await reader.cancel(reason);
1070
+ } finally {
1071
+ releaseReader();
1072
+ }
1073
+ }
1074
+ });
1075
+ }
985
1076
  async function readResponseBodyAsText({ response, url }) {
986
1077
  return textDecoder$2.decode(await readResponseWithSizeLimit$2({
987
1078
  response,
@@ -996,7 +1087,7 @@ var createJsonErrorResponseHandler = ({ errorSchema, errorToMessage, isRetryable
996
1087
  const responseHeaders = extractResponseHeaders(response);
997
1088
  if (responseBody.trim() === "") return {
998
1089
  responseHeaders,
999
- value: new APICallError$2({
1090
+ value: new APICallError$1$3({
1000
1091
  message: response.statusText,
1001
1092
  url,
1002
1093
  requestBodyValues,
@@ -1013,7 +1104,7 @@ var createJsonErrorResponseHandler = ({ errorSchema, errorToMessage, isRetryable
1013
1104
  });
1014
1105
  return {
1015
1106
  responseHeaders,
1016
- value: new APICallError$2({
1107
+ value: new APICallError$1$3({
1017
1108
  message: errorToMessage(parsedError),
1018
1109
  url,
1019
1110
  requestBodyValues,
@@ -1027,7 +1118,7 @@ var createJsonErrorResponseHandler = ({ errorSchema, errorToMessage, isRetryable
1027
1118
  } catch (parseError) {
1028
1119
  return {
1029
1120
  responseHeaders,
1030
- value: new APICallError$2({
1121
+ value: new APICallError$1$3({
1031
1122
  message: response.statusText,
1032
1123
  url,
1033
1124
  requestBodyValues,
@@ -1039,13 +1130,19 @@ var createJsonErrorResponseHandler = ({ errorSchema, errorToMessage, isRetryable
1039
1130
  };
1040
1131
  }
1041
1132
  };
1042
- var createEventSourceResponseHandler = (chunkSchema) => async ({ response }) => {
1133
+ var createEventSourceResponseHandler = (chunkSchema) => async ({ response, url, requestBodyValues }) => {
1043
1134
  const responseHeaders = extractResponseHeaders(response);
1044
- if (response.body == null) throw new EmptyResponseBodyError$2({});
1135
+ if (response.body == null) throw new EmptyResponseBodyError$1$3({});
1045
1136
  return {
1046
1137
  responseHeaders,
1047
1138
  value: parseJsonEventStream({
1048
- stream: response.body,
1139
+ stream: wrapResponseBodyStream({
1140
+ stream: response.body,
1141
+ url,
1142
+ requestBodyValues,
1143
+ statusCode: response.status,
1144
+ responseHeaders
1145
+ }),
1049
1146
  schema: chunkSchema
1050
1147
  })
1051
1148
  };
@@ -1060,7 +1157,7 @@ var createJsonResponseHandler = (responseSchema) => async ({ response, url, requ
1060
1157
  schema: responseSchema
1061
1158
  });
1062
1159
  const responseHeaders = extractResponseHeaders(response);
1063
- if (!parsedResult.success) throw new APICallError$2({
1160
+ if (!parsedResult.success) throw new APICallError$1$3({
1064
1161
  message: "Invalid JSON response",
1065
1162
  cause: parsedResult.error,
1066
1163
  statusCode: response.status,
@@ -1097,7 +1194,8 @@ function jsonSchema$2(jsonSchema2, { validate } = {}) {
1097
1194
  }
1098
1195
  function addAdditionalPropertiesToJsonSchema$2(jsonSchema2) {
1099
1196
  if (jsonSchema2.type === "object") {
1100
- jsonSchema2.additionalProperties = false;
1197
+ const { additionalProperties } = jsonSchema2;
1198
+ jsonSchema2.additionalProperties = additionalProperties != null && typeof additionalProperties !== "boolean" ? addAdditionalPropertiesToJsonSchema$2(additionalProperties) : false;
1101
1199
  const properties = jsonSchema2.properties;
1102
1200
  if (properties != null) for (const property in properties) properties[property] = addAdditionalPropertiesToJsonSchema$2(properties[property]);
1103
1201
  }
@@ -2043,210 +2141,511 @@ var { btoa: btoa$3, atob: atob$3 } = globalThis;
2043
2141
  function withoutTrailingSlash(url) {
2044
2142
  return url == null ? void 0 : url.replace(/\/$/, "");
2045
2143
  }
2046
- //#endregion
2047
- //#region ../../packages/_vendored/ai_v5/dist/index.js
2048
- function getContext() {
2049
- return { headers: {} };
2050
- }
2051
- async function getVercelOidcToken() {
2052
- if (process.env.VERCEL_OIDC_TOKEN) return process.env.VERCEL_OIDC_TOKEN ?? "";
2053
- throw new Error("@vercel/oidc is not available in the vendored @internal AI packages. Provide an API key instead.");
2054
- }
2055
- var symbol$1$6 = Symbol.for("vercel.ai.gateway.error");
2056
- var _a$1$6;
2057
- var _b$3;
2058
- var GatewayError = class _GatewayError extends (_b$3 = Error, _a$1$6 = symbol$1$6, _b$3) {
2059
- constructor({ message, statusCode = 500, cause }) {
2144
+ var marker$6 = "vercel.ai.error";
2145
+ var symbol$8 = Symbol.for(marker$6);
2146
+ var _a$8;
2147
+ var _b$6;
2148
+ var AISDKError$4 = class _AISDKError extends (_b$6 = Error, _a$8 = symbol$8, _b$6) {
2149
+ /**
2150
+ * Creates an AI SDK Error.
2151
+ *
2152
+ * @param {Object} params - The parameters for creating the error.
2153
+ * @param {string} params.name - The name of the error.
2154
+ * @param {string} params.message - The error message.
2155
+ * @param {unknown} [params.cause] - The underlying cause of the error.
2156
+ */
2157
+ constructor({ name: name14, message, cause }) {
2060
2158
  super(message);
2061
- this[_a$1$6] = true;
2062
- this.statusCode = statusCode;
2159
+ this[_a$8] = true;
2160
+ this.name = name14;
2063
2161
  this.cause = cause;
2064
2162
  }
2065
2163
  /**
2066
- * Checks if the given error is a Gateway Error.
2164
+ * Checks if the given error is an AI SDK Error.
2067
2165
  * @param {unknown} error - The error to check.
2068
- * @returns {boolean} True if the error is a Gateway Error, false otherwise.
2166
+ * @returns {boolean} True if the error is an AI SDK Error, false otherwise.
2069
2167
  */
2070
2168
  static isInstance(error) {
2071
- return _GatewayError.hasMarker(error);
2169
+ return _AISDKError.hasMarker(error, marker$6);
2072
2170
  }
2073
- static hasMarker(error) {
2074
- return typeof error === "object" && error !== null && symbol$1$6 in error && error[symbol$1$6] === true;
2171
+ static hasMarker(error, marker15) {
2172
+ const markerSymbol = Symbol.for(marker15);
2173
+ return error != null && typeof error === "object" && markerSymbol in error && typeof error[markerSymbol] === "boolean" && error[markerSymbol] === true;
2075
2174
  }
2076
2175
  };
2077
- var name$1$6 = "GatewayAuthenticationError";
2078
- var marker2$1$5 = `vercel.ai.gateway.error.${name$1$6}`;
2079
- var symbol2$1$5 = Symbol.for(marker2$1$5);
2080
- var _a2$1$5;
2081
- var _b2$3;
2082
- var GatewayAuthenticationError = class _GatewayAuthenticationError extends (_b2$3 = GatewayError, _a2$1$5 = symbol2$1$5, _b2$3) {
2083
- constructor({ message = "Authentication failed", statusCode = 401, cause } = {}) {
2176
+ var name$8 = "AI_APICallError";
2177
+ var marker2$8 = `vercel.ai.error.${name$8}`;
2178
+ var symbol2$8 = Symbol.for(marker2$8);
2179
+ var _a2$8;
2180
+ var _b2$6;
2181
+ var APICallError$4 = class extends (_b2$6 = AISDKError$4, _a2$8 = symbol2$8, _b2$6) {
2182
+ constructor({ message, url, requestBodyValues, statusCode, responseHeaders, responseBody, cause, isRetryable = statusCode != null && (statusCode === 408 || statusCode === 409 || statusCode === 429 || statusCode >= 500), data }) {
2084
2183
  super({
2184
+ name: name$8,
2085
2185
  message,
2086
- statusCode,
2087
2186
  cause
2088
2187
  });
2089
- this[_a2$1$5] = true;
2090
- this.name = name$1$6;
2091
- this.type = "authentication_error";
2188
+ this[_a2$8] = true;
2189
+ this.url = url;
2190
+ this.requestBodyValues = requestBodyValues;
2191
+ this.statusCode = statusCode;
2192
+ this.responseHeaders = responseHeaders;
2193
+ this.responseBody = responseBody;
2194
+ this.isRetryable = isRetryable;
2195
+ this.data = data;
2092
2196
  }
2093
2197
  static isInstance(error) {
2094
- return GatewayError.hasMarker(error) && symbol2$1$5 in error;
2095
- }
2096
- /**
2097
- * Creates a contextual error message when authentication fails
2098
- */
2099
- static createContextualError({ apiKeyProvided, oidcTokenProvided, message = "Authentication failed", statusCode = 401, cause }) {
2100
- let contextualMessage;
2101
- if (apiKeyProvided) contextualMessage = `AI Gateway authentication failed: Invalid API key.
2102
-
2103
- Create a new API key: https://vercel.com/d?to=%2F%5Bteam%5D%2F%7E%2Fai%2Fapi-keys
2104
-
2105
- Provide via 'apiKey' option or 'AI_GATEWAY_API_KEY' environment variable.`;
2106
- else if (oidcTokenProvided) contextualMessage = `AI Gateway authentication failed: Invalid OIDC token.
2107
-
2108
- Run 'npx vercel link' to link your project, then 'vc env pull' to fetch the token.
2109
-
2110
- Alternatively, use an API key: https://vercel.com/d?to=%2F%5Bteam%5D%2F%7E%2Fai%2Fapi-keys`;
2111
- else contextualMessage = `AI Gateway authentication failed: No authentication provided.
2112
-
2113
- Option 1 - API key:
2114
- Create an API key: https://vercel.com/d?to=%2F%5Bteam%5D%2F%7E%2Fai%2Fapi-keys
2115
- Provide via 'apiKey' option or 'AI_GATEWAY_API_KEY' environment variable.
2116
-
2117
- Option 2 - OIDC token:
2118
- Run 'npx vercel link' to link your project, then 'vc env pull' to fetch the token.`;
2119
- return new _GatewayAuthenticationError({
2120
- message: contextualMessage,
2121
- statusCode,
2122
- cause
2123
- });
2198
+ return AISDKError$4.hasMarker(error, marker2$8);
2124
2199
  }
2125
2200
  };
2126
- var name2$1$5 = "GatewayForbiddenError";
2127
- var marker3$1$1 = `vercel.ai.gateway.error.${name2$1$5}`;
2128
- var symbol3$1$1 = Symbol.for(marker3$1$1);
2129
- var forbiddenParamSchema = lazyValidator(() => zodSchema$2(z.object({ ruleId: z.string() })));
2130
- var _a3$1$1;
2131
- var _b3$2;
2132
- var GatewayForbiddenError = class extends (_b3$2 = GatewayError, _a3$1$1 = symbol3$1$1, _b3$2) {
2133
- constructor({ message = "Forbidden", statusCode = 403, cause, ruleId } = {}) {
2201
+ var name2$8 = "AI_EmptyResponseBodyError";
2202
+ var marker3$8 = `vercel.ai.error.${name2$8}`;
2203
+ var symbol3$5 = Symbol.for(marker3$8);
2204
+ var _a3$5;
2205
+ var _b3$4;
2206
+ (class extends (_b3$4 = AISDKError$4, _a3$5 = symbol3$5, _b3$4) {
2207
+ constructor({ message = "Empty response body" } = {}) {
2134
2208
  super({
2135
- message,
2136
- statusCode,
2137
- cause
2209
+ name: name2$8,
2210
+ message
2138
2211
  });
2139
- this[_a3$1$1] = true;
2140
- this.name = name2$1$5;
2141
- this.type = "forbidden";
2142
- this.ruleId = ruleId;
2212
+ this[_a3$5] = true;
2143
2213
  }
2144
2214
  static isInstance(error) {
2145
- return GatewayError.hasMarker(error) && symbol3$1$1 in error;
2215
+ return AISDKError$4.hasMarker(error, marker3$8);
2146
2216
  }
2147
- };
2148
- var name3$1$1 = "GatewayInvalidRequestError";
2149
- var marker4$1$1 = `vercel.ai.gateway.error.${name3$1$1}`;
2150
- var symbol4$1$1 = Symbol.for(marker4$1$1);
2151
- var _a4$1$1;
2152
- var _b4$2;
2153
- var GatewayInvalidRequestError = class extends (_b4$2 = GatewayError, _a4$1$1 = symbol4$1$1, _b4$2) {
2154
- constructor({ message = "Invalid request", statusCode = 400, cause } = {}) {
2217
+ });
2218
+ function getErrorMessage$3(error) {
2219
+ if (error == null) return "unknown error";
2220
+ if (typeof error === "string") return error;
2221
+ if (error instanceof Error) return error.message;
2222
+ return JSON.stringify(error);
2223
+ }
2224
+ var name3$5 = "AI_InvalidArgumentError";
2225
+ var marker4$5 = `vercel.ai.error.${name3$5}`;
2226
+ var symbol4$5 = Symbol.for(marker4$5);
2227
+ var _a4$5;
2228
+ var _b4$4;
2229
+ (class extends (_b4$4 = AISDKError$4, _a4$5 = symbol4$5, _b4$4) {
2230
+ constructor({ message, cause, argument }) {
2155
2231
  super({
2232
+ name: name3$5,
2156
2233
  message,
2157
- statusCode,
2158
2234
  cause
2159
2235
  });
2160
- this[_a4$1$1] = true;
2161
- this.name = name3$1$1;
2162
- this.type = "invalid_request_error";
2236
+ this[_a4$5] = true;
2237
+ this.argument = argument;
2238
+ }
2239
+ static isInstance(error) {
2240
+ return AISDKError$4.hasMarker(error, marker4$5);
2241
+ }
2242
+ });
2243
+ var name4$5 = "AI_InvalidPromptError";
2244
+ var marker5$5 = `vercel.ai.error.${name4$5}`;
2245
+ var symbol5$5 = Symbol.for(marker5$5);
2246
+ var _a5$5;
2247
+ var _b5$4;
2248
+ (class extends (_b5$4 = AISDKError$4, _a5$5 = symbol5$5, _b5$4) {
2249
+ constructor({ prompt, message, cause }) {
2250
+ super({
2251
+ name: name4$5,
2252
+ message: `Invalid prompt: ${message}`,
2253
+ cause
2254
+ });
2255
+ this[_a5$5] = true;
2256
+ this.prompt = prompt;
2257
+ }
2258
+ static isInstance(error) {
2259
+ return AISDKError$4.hasMarker(error, marker5$5);
2260
+ }
2261
+ });
2262
+ var name5$5 = "AI_InvalidResponseDataError";
2263
+ var marker6$5 = `vercel.ai.error.${name5$5}`;
2264
+ var symbol6$5 = Symbol.for(marker6$5);
2265
+ var _a6$5;
2266
+ var _b6$4;
2267
+ (class extends (_b6$4 = AISDKError$4, _a6$5 = symbol6$5, _b6$4) {
2268
+ constructor({ data, message = `Invalid response data: ${JSON.stringify(data)}.` }) {
2269
+ super({
2270
+ name: name5$5,
2271
+ message
2272
+ });
2273
+ this[_a6$5] = true;
2274
+ this.data = data;
2275
+ }
2276
+ static isInstance(error) {
2277
+ return AISDKError$4.hasMarker(error, marker6$5);
2278
+ }
2279
+ });
2280
+ var name6$5 = "AI_JSONParseError";
2281
+ var marker7$5 = `vercel.ai.error.${name6$5}`;
2282
+ var symbol7$5 = Symbol.for(marker7$5);
2283
+ var _a7$5;
2284
+ var _b7$4;
2285
+ (class extends (_b7$4 = AISDKError$4, _a7$5 = symbol7$5, _b7$4) {
2286
+ constructor({ text, cause }) {
2287
+ super({
2288
+ name: name6$5,
2289
+ message: `JSON parsing failed: Text: ${text}.
2290
+ Error message: ${getErrorMessage$3(cause)}`,
2291
+ cause
2292
+ });
2293
+ this[_a7$5] = true;
2294
+ this.text = text;
2295
+ }
2296
+ static isInstance(error) {
2297
+ return AISDKError$4.hasMarker(error, marker7$5);
2298
+ }
2299
+ });
2300
+ var name7$5 = "AI_LoadAPIKeyError";
2301
+ var marker8$5 = `vercel.ai.error.${name7$5}`;
2302
+ var symbol8$5 = Symbol.for(marker8$5);
2303
+ var _a8$5;
2304
+ var _b8$4;
2305
+ (class extends (_b8$4 = AISDKError$4, _a8$5 = symbol8$5, _b8$4) {
2306
+ constructor({ message }) {
2307
+ super({
2308
+ name: name7$5,
2309
+ message
2310
+ });
2311
+ this[_a8$5] = true;
2312
+ }
2313
+ static isInstance(error) {
2314
+ return AISDKError$4.hasMarker(error, marker8$5);
2315
+ }
2316
+ });
2317
+ var name8$5 = "AI_LoadSettingError";
2318
+ var marker9$5 = `vercel.ai.error.${name8$5}`;
2319
+ var symbol9$5 = Symbol.for(marker9$5);
2320
+ var _a9$5;
2321
+ var _b9$4;
2322
+ (class extends (_b9$4 = AISDKError$4, _a9$5 = symbol9$5, _b9$4) {
2323
+ constructor({ message }) {
2324
+ super({
2325
+ name: name8$5,
2326
+ message
2327
+ });
2328
+ this[_a9$5] = true;
2329
+ }
2330
+ static isInstance(error) {
2331
+ return AISDKError$4.hasMarker(error, marker9$5);
2332
+ }
2333
+ });
2334
+ var name9$5 = "AI_NoContentGeneratedError";
2335
+ var marker10$5 = `vercel.ai.error.${name9$5}`;
2336
+ var symbol10$5 = Symbol.for(marker10$5);
2337
+ var _a10$5;
2338
+ var _b10$3;
2339
+ (class extends (_b10$3 = AISDKError$4, _a10$5 = symbol10$5, _b10$3) {
2340
+ constructor({ message = "No content generated." } = {}) {
2341
+ super({
2342
+ name: name9$5,
2343
+ message
2344
+ });
2345
+ this[_a10$5] = true;
2346
+ }
2347
+ static isInstance(error) {
2348
+ return AISDKError$4.hasMarker(error, marker10$5);
2349
+ }
2350
+ });
2351
+ var name10$5 = "AI_NoSuchModelError";
2352
+ var marker11$5 = `vercel.ai.error.${name10$5}`;
2353
+ var symbol11$5 = Symbol.for(marker11$5);
2354
+ var _a11$5;
2355
+ var _b11$3;
2356
+ (class extends (_b11$3 = AISDKError$4, _a11$5 = symbol11$5, _b11$3) {
2357
+ constructor({ errorName = name10$5, modelId, modelType, message = `No such ${modelType}: ${modelId}` }) {
2358
+ super({
2359
+ name: errorName,
2360
+ message
2361
+ });
2362
+ this[_a11$5] = true;
2363
+ this.modelId = modelId;
2364
+ this.modelType = modelType;
2365
+ }
2366
+ static isInstance(error) {
2367
+ return AISDKError$4.hasMarker(error, marker11$5);
2368
+ }
2369
+ });
2370
+ var name11$5 = "AI_TooManyEmbeddingValuesForCallError";
2371
+ var marker12$5 = `vercel.ai.error.${name11$5}`;
2372
+ var symbol12$5 = Symbol.for(marker12$5);
2373
+ var _a12$5;
2374
+ var _b12$3;
2375
+ (class extends (_b12$3 = AISDKError$4, _a12$5 = symbol12$5, _b12$3) {
2376
+ constructor(options) {
2377
+ super({
2378
+ name: name11$5,
2379
+ message: `Too many values for a single embedding call. The ${options.provider} model "${options.modelId}" can only embed up to ${options.maxEmbeddingsPerCall} values per call, but ${options.values.length} values were provided.`
2380
+ });
2381
+ this[_a12$5] = true;
2382
+ this.provider = options.provider;
2383
+ this.modelId = options.modelId;
2384
+ this.maxEmbeddingsPerCall = options.maxEmbeddingsPerCall;
2385
+ this.values = options.values;
2386
+ }
2387
+ static isInstance(error) {
2388
+ return AISDKError$4.hasMarker(error, marker12$5);
2389
+ }
2390
+ });
2391
+ var name12$5 = "AI_TypeValidationError";
2392
+ var marker13$5 = `vercel.ai.error.${name12$5}`;
2393
+ var symbol13$5 = Symbol.for(marker13$5);
2394
+ var _a13$5;
2395
+ var _b13$3;
2396
+ (class _TypeValidationError extends (_b13$3 = AISDKError$4, _a13$5 = symbol13$5, _b13$3) {
2397
+ constructor({ value, cause }) {
2398
+ super({
2399
+ name: name12$5,
2400
+ message: `Type validation failed: Value: ${JSON.stringify(value)}.
2401
+ Error message: ${getErrorMessage$3(cause)}`,
2402
+ cause
2403
+ });
2404
+ this[_a13$5] = true;
2405
+ this.value = value;
2406
+ }
2407
+ static isInstance(error) {
2408
+ return AISDKError$4.hasMarker(error, marker13$5);
2409
+ }
2410
+ /**
2411
+ * Wraps an error into a TypeValidationError.
2412
+ * If the cause is already a TypeValidationError with the same value, it returns the cause.
2413
+ * Otherwise, it creates a new TypeValidationError.
2414
+ *
2415
+ * @param {Object} params - The parameters for wrapping the error.
2416
+ * @param {unknown} params.value - The value that failed validation.
2417
+ * @param {unknown} params.cause - The original error or cause of the validation failure.
2418
+ * @returns {TypeValidationError} A TypeValidationError instance.
2419
+ */
2420
+ static wrap({ value, cause }) {
2421
+ return _TypeValidationError.isInstance(cause) && cause.value === value ? cause : new _TypeValidationError({
2422
+ value,
2423
+ cause
2424
+ });
2425
+ }
2426
+ });
2427
+ var name13$5 = "AI_UnsupportedFunctionalityError";
2428
+ var marker14$5 = `vercel.ai.error.${name13$5}`;
2429
+ var symbol14$5 = Symbol.for(marker14$5);
2430
+ var _a14$5;
2431
+ var _b14$3;
2432
+ (class extends (_b14$3 = AISDKError$4, _a14$5 = symbol14$5, _b14$3) {
2433
+ constructor({ functionality, message = `'${functionality}' functionality not supported.` }) {
2434
+ super({
2435
+ name: name13$5,
2436
+ message
2437
+ });
2438
+ this[_a14$5] = true;
2439
+ this.functionality = functionality;
2440
+ }
2441
+ static isInstance(error) {
2442
+ return AISDKError$4.hasMarker(error, marker14$5);
2443
+ }
2444
+ });
2445
+ //#endregion
2446
+ //#region ../../packages/_vendored/ai_v5/dist/index.js
2447
+ function getContext() {
2448
+ return { headers: {} };
2449
+ }
2450
+ async function getVercelOidcToken() {
2451
+ if (process.env.VERCEL_OIDC_TOKEN) return process.env.VERCEL_OIDC_TOKEN ?? "";
2452
+ throw new Error("@vercel/oidc is not available in the vendored @internal AI packages. Provide an API key instead.");
2453
+ }
2454
+ var symbol$1$6 = Symbol.for("vercel.ai.gateway.error");
2455
+ var _a$1$6;
2456
+ var _b$4;
2457
+ var GatewayError = class _GatewayError extends (_b$4 = Error, _a$1$6 = symbol$1$6, _b$4) {
2458
+ constructor({ message, statusCode = 500, cause }) {
2459
+ super(message);
2460
+ this[_a$1$6] = true;
2461
+ this.statusCode = statusCode;
2462
+ this.cause = cause;
2163
2463
  }
2464
+ /**
2465
+ * Checks if the given error is a Gateway Error.
2466
+ * @param {unknown} error - The error to check.
2467
+ * @returns {boolean} True if the error is a Gateway Error, false otherwise.
2468
+ */
2164
2469
  static isInstance(error) {
2165
- return GatewayError.hasMarker(error) && symbol4$1$1 in error;
2470
+ return _GatewayError.hasMarker(error);
2471
+ }
2472
+ static hasMarker(error) {
2473
+ return typeof error === "object" && error !== null && symbol$1$6 in error && error[symbol$1$6] === true;
2166
2474
  }
2167
2475
  };
2168
- var name4$1$1 = "GatewayRateLimitError";
2169
- var marker5$1$1 = `vercel.ai.gateway.error.${name4$1$1}`;
2170
- var symbol5$1$1 = Symbol.for(marker5$1$1);
2171
- var _a5$1$1;
2172
- var _b5$2;
2173
- var GatewayRateLimitError = class extends (_b5$2 = GatewayError, _a5$1$1 = symbol5$1$1, _b5$2) {
2476
+ var name$1$6 = "GatewayAuthenticationError";
2477
+ var marker2$1$6 = `vercel.ai.gateway.error.${name$1$6}`;
2478
+ var symbol2$1$6 = Symbol.for(marker2$1$6);
2479
+ var _a2$1$6;
2480
+ var _b2$3;
2481
+ var GatewayAuthenticationError = class _GatewayAuthenticationError extends (_b2$3 = GatewayError, _a2$1$6 = symbol2$1$6, _b2$3) {
2482
+ constructor({ message = "Authentication failed", statusCode = 401, cause } = {}) {
2483
+ super({
2484
+ message,
2485
+ statusCode,
2486
+ cause
2487
+ });
2488
+ this[_a2$1$6] = true;
2489
+ this.name = name$1$6;
2490
+ this.type = "authentication_error";
2491
+ }
2492
+ static isInstance(error) {
2493
+ return GatewayError.hasMarker(error) && symbol2$1$6 in error;
2494
+ }
2495
+ /**
2496
+ * Creates a contextual error message when authentication fails
2497
+ */
2498
+ static createContextualError({ apiKeyProvided, oidcTokenProvided, message = "Authentication failed", statusCode = 401, cause }) {
2499
+ let contextualMessage;
2500
+ if (apiKeyProvided) contextualMessage = `AI Gateway authentication failed: Invalid API key.
2501
+
2502
+ Create a new API key: https://vercel.com/d?to=%2F%5Bteam%5D%2F%7E%2Fai%2Fapi-keys
2503
+
2504
+ Provide via 'apiKey' option or 'AI_GATEWAY_API_KEY' environment variable.`;
2505
+ else if (oidcTokenProvided) contextualMessage = `AI Gateway authentication failed: Invalid OIDC token.
2506
+
2507
+ Run 'npx vercel link' to link your project, then 'vc env pull' to fetch the token.
2508
+
2509
+ Alternatively, use an API key: https://vercel.com/d?to=%2F%5Bteam%5D%2F%7E%2Fai%2Fapi-keys`;
2510
+ else contextualMessage = `AI Gateway authentication failed: No authentication provided.
2511
+
2512
+ Option 1 - API key:
2513
+ Create an API key: https://vercel.com/d?to=%2F%5Bteam%5D%2F%7E%2Fai%2Fapi-keys
2514
+ Provide via 'apiKey' option or 'AI_GATEWAY_API_KEY' environment variable.
2515
+
2516
+ Option 2 - OIDC token:
2517
+ Run 'npx vercel link' to link your project, then 'vc env pull' to fetch the token.`;
2518
+ return new _GatewayAuthenticationError({
2519
+ message: contextualMessage,
2520
+ statusCode,
2521
+ cause
2522
+ });
2523
+ }
2524
+ };
2525
+ var name2$1$6 = "GatewayForbiddenError";
2526
+ var marker3$1$6 = `vercel.ai.gateway.error.${name2$1$6}`;
2527
+ var symbol3$1$2 = Symbol.for(marker3$1$6);
2528
+ var forbiddenParamSchema = lazyValidator(() => zodSchema$2(z.object({ ruleId: z.string() })));
2529
+ var _a3$1$2;
2530
+ var _b3$3;
2531
+ var GatewayForbiddenError = class extends (_b3$3 = GatewayError, _a3$1$2 = symbol3$1$2, _b3$3) {
2532
+ constructor({ message = "Forbidden", statusCode = 403, cause, ruleId } = {}) {
2533
+ super({
2534
+ message,
2535
+ statusCode,
2536
+ cause
2537
+ });
2538
+ this[_a3$1$2] = true;
2539
+ this.name = name2$1$6;
2540
+ this.type = "forbidden";
2541
+ this.ruleId = ruleId;
2542
+ }
2543
+ static isInstance(error) {
2544
+ return GatewayError.hasMarker(error) && symbol3$1$2 in error;
2545
+ }
2546
+ };
2547
+ var name3$1$2 = "GatewayInvalidRequestError";
2548
+ var marker4$1$2 = `vercel.ai.gateway.error.${name3$1$2}`;
2549
+ var symbol4$1$2 = Symbol.for(marker4$1$2);
2550
+ var _a4$1$2;
2551
+ var _b4$3;
2552
+ var GatewayInvalidRequestError = class extends (_b4$3 = GatewayError, _a4$1$2 = symbol4$1$2, _b4$3) {
2553
+ constructor({ message = "Invalid request", statusCode = 400, cause } = {}) {
2554
+ super({
2555
+ message,
2556
+ statusCode,
2557
+ cause
2558
+ });
2559
+ this[_a4$1$2] = true;
2560
+ this.name = name3$1$2;
2561
+ this.type = "invalid_request_error";
2562
+ }
2563
+ static isInstance(error) {
2564
+ return GatewayError.hasMarker(error) && symbol4$1$2 in error;
2565
+ }
2566
+ };
2567
+ var name4$1$2 = "GatewayRateLimitError";
2568
+ var marker5$1$2 = `vercel.ai.gateway.error.${name4$1$2}`;
2569
+ var symbol5$1$2 = Symbol.for(marker5$1$2);
2570
+ var _a5$1$2;
2571
+ var _b5$3;
2572
+ var GatewayRateLimitError = class extends (_b5$3 = GatewayError, _a5$1$2 = symbol5$1$2, _b5$3) {
2174
2573
  constructor({ message = "Rate limit exceeded", statusCode = 429, cause } = {}) {
2175
2574
  super({
2176
2575
  message,
2177
2576
  statusCode,
2178
2577
  cause
2179
2578
  });
2180
- this[_a5$1$1] = true;
2181
- this.name = name4$1$1;
2579
+ this[_a5$1$2] = true;
2580
+ this.name = name4$1$2;
2182
2581
  this.type = "rate_limit_exceeded";
2183
2582
  }
2184
2583
  static isInstance(error) {
2185
- return GatewayError.hasMarker(error) && symbol5$1$1 in error;
2584
+ return GatewayError.hasMarker(error) && symbol5$1$2 in error;
2186
2585
  }
2187
2586
  };
2188
- var name5$1$1 = "GatewayModelNotFoundError";
2189
- var marker6$1$1 = `vercel.ai.gateway.error.${name5$1$1}`;
2190
- var symbol6$1$1 = Symbol.for(marker6$1$1);
2587
+ var name5$1$2 = "GatewayModelNotFoundError";
2588
+ var marker6$1$2 = `vercel.ai.gateway.error.${name5$1$2}`;
2589
+ var symbol6$1$2 = Symbol.for(marker6$1$2);
2191
2590
  var modelNotFoundParamSchema = lazyValidator(() => zodSchema$2(z.object({ modelId: z.string() })));
2192
- var _a6$1$1;
2193
- var _b6$2;
2194
- var GatewayModelNotFoundError = class extends (_b6$2 = GatewayError, _a6$1$1 = symbol6$1$1, _b6$2) {
2591
+ var _a6$1$2;
2592
+ var _b6$3;
2593
+ var GatewayModelNotFoundError = class extends (_b6$3 = GatewayError, _a6$1$2 = symbol6$1$2, _b6$3) {
2195
2594
  constructor({ message = "Model not found", statusCode = 404, modelId, cause } = {}) {
2196
2595
  super({
2197
2596
  message,
2198
2597
  statusCode,
2199
2598
  cause
2200
2599
  });
2201
- this[_a6$1$1] = true;
2202
- this.name = name5$1$1;
2600
+ this[_a6$1$2] = true;
2601
+ this.name = name5$1$2;
2203
2602
  this.type = "model_not_found";
2204
2603
  this.modelId = modelId;
2205
2604
  }
2206
2605
  static isInstance(error) {
2207
- return GatewayError.hasMarker(error) && symbol6$1$1 in error;
2606
+ return GatewayError.hasMarker(error) && symbol6$1$2 in error;
2208
2607
  }
2209
2608
  };
2210
- var name6$1$1 = "GatewayInternalServerError";
2211
- var marker7$1$1 = `vercel.ai.gateway.error.${name6$1$1}`;
2212
- var symbol7$1$1 = Symbol.for(marker7$1$1);
2213
- var _a7$1$1;
2214
- var _b7$2;
2215
- var GatewayInternalServerError = class extends (_b7$2 = GatewayError, _a7$1$1 = symbol7$1$1, _b7$2) {
2609
+ var name6$1$2 = "GatewayInternalServerError";
2610
+ var marker7$1$2 = `vercel.ai.gateway.error.${name6$1$2}`;
2611
+ var symbol7$1$2 = Symbol.for(marker7$1$2);
2612
+ var _a7$1$2;
2613
+ var _b7$3;
2614
+ var GatewayInternalServerError = class extends (_b7$3 = GatewayError, _a7$1$2 = symbol7$1$2, _b7$3) {
2216
2615
  constructor({ message = "Internal server error", statusCode = 500, cause } = {}) {
2217
2616
  super({
2218
2617
  message,
2219
2618
  statusCode,
2220
2619
  cause
2221
2620
  });
2222
- this[_a7$1$1] = true;
2223
- this.name = name6$1$1;
2621
+ this[_a7$1$2] = true;
2622
+ this.name = name6$1$2;
2224
2623
  this.type = "internal_server_error";
2225
2624
  }
2226
2625
  static isInstance(error) {
2227
- return GatewayError.hasMarker(error) && symbol7$1$1 in error;
2626
+ return GatewayError.hasMarker(error) && symbol7$1$2 in error;
2228
2627
  }
2229
2628
  };
2230
- var name7$1$1 = "GatewayResponseError";
2231
- var marker8$1$1 = `vercel.ai.gateway.error.${name7$1$1}`;
2232
- var symbol8$1$1 = Symbol.for(marker8$1$1);
2233
- var _a8$1$1;
2234
- var _b8$2;
2235
- var GatewayResponseError = class extends (_b8$2 = GatewayError, _a8$1$1 = symbol8$1$1, _b8$2) {
2629
+ var name7$1$2 = "GatewayResponseError";
2630
+ var marker8$1$2 = `vercel.ai.gateway.error.${name7$1$2}`;
2631
+ var symbol8$1$2 = Symbol.for(marker8$1$2);
2632
+ var _a8$1$2;
2633
+ var _b8$3;
2634
+ var GatewayResponseError = class extends (_b8$3 = GatewayError, _a8$1$2 = symbol8$1$2, _b8$3) {
2236
2635
  constructor({ message = "Invalid response from Gateway", statusCode = 502, response, validationError, cause } = {}) {
2237
2636
  super({
2238
2637
  message,
2239
2638
  statusCode,
2240
2639
  cause
2241
2640
  });
2242
- this[_a8$1$1] = true;
2243
- this.name = name7$1$1;
2641
+ this[_a8$1$2] = true;
2642
+ this.name = name7$1$2;
2244
2643
  this.type = "response_error";
2245
2644
  this.response = response;
2246
2645
  this.validationError = validationError;
2247
2646
  }
2248
2647
  static isInstance(error) {
2249
- return GatewayError.hasMarker(error) && symbol8$1$1 in error;
2648
+ return GatewayError.hasMarker(error) && symbol8$1$2 in error;
2250
2649
  }
2251
2650
  };
2252
2651
  async function createGatewayErrorFromResponse({ response, statusCode, defaultMessage = "Gateway request failed", cause, authMethod }) {
@@ -2332,24 +2731,24 @@ function extractApiCallResponse(error) {
2332
2731
  }
2333
2732
  return {};
2334
2733
  }
2335
- var name8$1$1 = "GatewayTimeoutError";
2336
- var marker9$1$1 = `vercel.ai.gateway.error.${name8$1$1}`;
2337
- var symbol9$1$1 = Symbol.for(marker9$1$1);
2338
- var _a9$1$1;
2339
- var _b9$2;
2340
- var GatewayTimeoutError = class _GatewayTimeoutError extends (_b9$2 = GatewayError, _a9$1$1 = symbol9$1$1, _b9$2) {
2734
+ var name8$1$2 = "GatewayTimeoutError";
2735
+ var marker9$1$2 = `vercel.ai.gateway.error.${name8$1$2}`;
2736
+ var symbol9$1$2 = Symbol.for(marker9$1$2);
2737
+ var _a9$1$2;
2738
+ var _b9$3;
2739
+ var GatewayTimeoutError = class _GatewayTimeoutError extends (_b9$3 = GatewayError, _a9$1$2 = symbol9$1$2, _b9$3) {
2341
2740
  constructor({ message = "Request timed out", statusCode = 408, cause } = {}) {
2342
2741
  super({
2343
2742
  message,
2344
2743
  statusCode,
2345
2744
  cause
2346
2745
  });
2347
- this[_a9$1$1] = true;
2348
- this.name = name8$1$1;
2746
+ this[_a9$1$2] = true;
2747
+ this.name = name8$1$2;
2349
2748
  this.type = "timeout_error";
2350
2749
  }
2351
2750
  static isInstance(error) {
2352
- return GatewayError.hasMarker(error) && symbol9$1$1 in error;
2751
+ return GatewayError.hasMarker(error) && symbol9$1$2 in error;
2353
2752
  }
2354
2753
  /**
2355
2754
  * Creates a helpful timeout error message with troubleshooting guidance
@@ -2382,7 +2781,7 @@ async function asGatewayError(error, authMethod) {
2382
2781
  originalMessage: error instanceof Error ? error.message : "Unknown error",
2383
2782
  cause: error
2384
2783
  });
2385
- if (APICallError$2.isInstance(error)) {
2784
+ if (APICallError$4.isInstance(error)) {
2386
2785
  if (error.cause && isTimeoutError(error.cause)) return GatewayTimeoutError.createTimeoutError({
2387
2786
  originalMessage: error.message,
2388
2787
  cause: error
@@ -3916,7 +4315,7 @@ var name6$4 = "AI_NoObjectGeneratedError";
3916
4315
  var marker6$4 = `vercel.ai.error.${name6$4}`;
3917
4316
  var symbol6$4 = Symbol.for(marker6$4);
3918
4317
  var _a6$4;
3919
- var NoObjectGeneratedError$2 = class extends AISDKError$2 {
4318
+ var NoObjectGeneratedError$2 = class extends AISDKError$4 {
3920
4319
  constructor({ message = "No object generated.", cause, text: text2, response, usage, finishReason }) {
3921
4320
  super({
3922
4321
  name: name6$4,
@@ -3930,7 +4329,7 @@ var NoObjectGeneratedError$2 = class extends AISDKError$2 {
3930
4329
  this.finishReason = finishReason;
3931
4330
  }
3932
4331
  static isInstance(error) {
3933
- return AISDKError$2.hasMarker(error, marker6$4);
4332
+ return AISDKError$4.hasMarker(error, marker6$4);
3934
4333
  }
3935
4334
  };
3936
4335
  _a6$4 = symbol6$4;
@@ -5027,12 +5426,12 @@ function createUIMessageStream$2({ execute, onError = () => "An error occurred."
5027
5426
  });
5028
5427
  }
5029
5428
  //#endregion
5030
- //#region ../../packages/_vendored/ai_v6/dist/dist-BJ8L5vTo.js
5031
- var marker$1$4 = "vercel.ai.error";
5032
- var symbol$1$4 = Symbol.for(marker$1$4);
5033
- var _a$1$4;
5034
- var _b$1$1;
5035
- var AISDKError$1 = class _AISDKError extends (_b$1$1 = Error, _a$1$4 = symbol$1$4, _b$1$1) {
5429
+ //#region ../../packages/_vendored/ai_v6/dist/dist--V1K8YWk.js
5430
+ var marker$2$1 = "vercel.ai.error";
5431
+ var symbol$2$2 = Symbol.for(marker$2$1);
5432
+ var _a$2$2;
5433
+ var _b$2$1;
5434
+ var AISDKError$1 = class _AISDKError extends (_b$2$1 = Error, _a$2$2 = symbol$2$2, _b$2$1) {
5036
5435
  /**
5037
5436
  * Creates an AI SDK Error.
5038
5437
  *
@@ -5043,7 +5442,7 @@ var AISDKError$1 = class _AISDKError extends (_b$1$1 = Error, _a$1$4 = symbol$1$
5043
5442
  */
5044
5443
  constructor({ name: name14, message, cause }) {
5045
5444
  super(message);
5046
- this[_a$1$4] = true;
5445
+ this[_a$2$2] = true;
5047
5446
  this.name = name14;
5048
5447
  this.cause = cause;
5049
5448
  }
@@ -5053,26 +5452,26 @@ var AISDKError$1 = class _AISDKError extends (_b$1$1 = Error, _a$1$4 = symbol$1$
5053
5452
  * @returns {boolean} True if the error is an AI SDK Error, false otherwise.
5054
5453
  */
5055
5454
  static isInstance(error) {
5056
- return _AISDKError.hasMarker(error, marker$1$4);
5455
+ return _AISDKError.hasMarker(error, marker$2$1);
5057
5456
  }
5058
5457
  static hasMarker(error, marker15) {
5059
5458
  const markerSymbol = Symbol.for(marker15);
5060
5459
  return error != null && typeof error === "object" && markerSymbol in error && typeof error[markerSymbol] === "boolean" && error[markerSymbol] === true;
5061
5460
  }
5062
5461
  };
5063
- var name$1$4 = "AI_APICallError";
5064
- var marker2$4 = `vercel.ai.error.${name$1$4}`;
5065
- var symbol2$4 = Symbol.for(marker2$4);
5066
- var _a2$4;
5067
- var _b2$2;
5068
- (class extends (_b2$2 = AISDKError$1, _a2$4 = symbol2$4, _b2$2) {
5462
+ var name$2$2 = "AI_APICallError";
5463
+ var marker2$1$4 = `vercel.ai.error.${name$2$2}`;
5464
+ var symbol2$1$4 = Symbol.for(marker2$1$4);
5465
+ var _a2$1$4;
5466
+ var _b2$1$3;
5467
+ (class extends (_b2$1$3 = AISDKError$1, _a2$1$4 = symbol2$1$4, _b2$1$3) {
5069
5468
  constructor({ message, url, requestBodyValues, statusCode, responseHeaders, responseBody, cause, isRetryable = statusCode != null && (statusCode === 408 || statusCode === 409 || statusCode === 429 || statusCode >= 500), data }) {
5070
5469
  super({
5071
- name: name$1$4,
5470
+ name: name$2$2,
5072
5471
  message,
5073
5472
  cause
5074
5473
  });
5075
- this[_a2$4] = true;
5474
+ this[_a2$1$4] = true;
5076
5475
  this.url = url;
5077
5476
  this.requestBodyValues = requestBodyValues;
5078
5477
  this.statusCode = statusCode;
@@ -5082,205 +5481,205 @@ var _b2$2;
5082
5481
  this.data = data;
5083
5482
  }
5084
5483
  static isInstance(error) {
5085
- return AISDKError$1.hasMarker(error, marker2$4);
5484
+ return AISDKError$1.hasMarker(error, marker2$1$4);
5086
5485
  }
5087
5486
  });
5088
- var name2$4 = "AI_EmptyResponseBodyError";
5089
- var marker3$3 = `vercel.ai.error.${name2$4}`;
5090
- var symbol3$3 = Symbol.for(marker3$3);
5091
- var _a3$3;
5092
- var _b3$1;
5093
- (class extends (_b3$1 = AISDKError$1, _a3$3 = symbol3$3, _b3$1) {
5487
+ var name2$1$4 = "AI_EmptyResponseBodyError";
5488
+ var marker3$1$4 = `vercel.ai.error.${name2$1$4}`;
5489
+ var symbol3$1$1 = Symbol.for(marker3$1$4);
5490
+ var _a3$1$1;
5491
+ var _b3$1$1;
5492
+ (class extends (_b3$1$1 = AISDKError$1, _a3$1$1 = symbol3$1$1, _b3$1$1) {
5094
5493
  constructor({ message = "Empty response body" } = {}) {
5095
5494
  super({
5096
- name: name2$4,
5495
+ name: name2$1$4,
5097
5496
  message
5098
5497
  });
5099
- this[_a3$3] = true;
5498
+ this[_a3$1$1] = true;
5100
5499
  }
5101
5500
  static isInstance(error) {
5102
- return AISDKError$1.hasMarker(error, marker3$3);
5501
+ return AISDKError$1.hasMarker(error, marker3$1$4);
5103
5502
  }
5104
5503
  });
5105
- function getErrorMessage$1(error) {
5504
+ function getErrorMessage$2(error) {
5106
5505
  if (error == null) return "unknown error";
5107
5506
  if (typeof error === "string") return error;
5108
5507
  if (error instanceof Error) return error.message;
5109
5508
  return JSON.stringify(error);
5110
5509
  }
5111
- var name3$3 = "AI_InvalidArgumentError";
5112
- var marker4$3 = `vercel.ai.error.${name3$3}`;
5113
- var symbol4$3 = Symbol.for(marker4$3);
5114
- var _a4$3;
5115
- var _b4$1;
5116
- var InvalidArgumentError$1 = class extends (_b4$1 = AISDKError$1, _a4$3 = symbol4$3, _b4$1) {
5510
+ var name3$1$1 = "AI_InvalidArgumentError";
5511
+ var marker4$1$1 = `vercel.ai.error.${name3$1$1}`;
5512
+ var symbol4$1$1 = Symbol.for(marker4$1$1);
5513
+ var _a4$1$1;
5514
+ var _b4$1$1;
5515
+ var InvalidArgumentError$1$1 = class extends (_b4$1$1 = AISDKError$1, _a4$1$1 = symbol4$1$1, _b4$1$1) {
5117
5516
  constructor({ message, cause, argument }) {
5118
5517
  super({
5119
- name: name3$3,
5518
+ name: name3$1$1,
5120
5519
  message,
5121
5520
  cause
5122
5521
  });
5123
- this[_a4$3] = true;
5522
+ this[_a4$1$1] = true;
5124
5523
  this.argument = argument;
5125
5524
  }
5126
5525
  static isInstance(error) {
5127
- return AISDKError$1.hasMarker(error, marker4$3);
5526
+ return AISDKError$1.hasMarker(error, marker4$1$1);
5128
5527
  }
5129
5528
  };
5130
- var name4$3 = "AI_InvalidPromptError";
5131
- var marker5$3 = `vercel.ai.error.${name4$3}`;
5132
- var symbol5$3 = Symbol.for(marker5$3);
5133
- var _a5$3;
5134
- var _b5$1;
5135
- (class extends (_b5$1 = AISDKError$1, _a5$3 = symbol5$3, _b5$1) {
5529
+ var name4$1$1 = "AI_InvalidPromptError";
5530
+ var marker5$1$1 = `vercel.ai.error.${name4$1$1}`;
5531
+ var symbol5$1$1 = Symbol.for(marker5$1$1);
5532
+ var _a5$1$1;
5533
+ var _b5$1$1;
5534
+ (class extends (_b5$1$1 = AISDKError$1, _a5$1$1 = symbol5$1$1, _b5$1$1) {
5136
5535
  constructor({ prompt, message, cause }) {
5137
5536
  super({
5138
- name: name4$3,
5537
+ name: name4$1$1,
5139
5538
  message: `Invalid prompt: ${message}`,
5140
5539
  cause
5141
5540
  });
5142
- this[_a5$3] = true;
5541
+ this[_a5$1$1] = true;
5143
5542
  this.prompt = prompt;
5144
5543
  }
5145
5544
  static isInstance(error) {
5146
- return AISDKError$1.hasMarker(error, marker5$3);
5545
+ return AISDKError$1.hasMarker(error, marker5$1$1);
5147
5546
  }
5148
5547
  });
5149
- var name5$3 = "AI_InvalidResponseDataError";
5150
- var marker6$3 = `vercel.ai.error.${name5$3}`;
5151
- var symbol6$3 = Symbol.for(marker6$3);
5152
- var _a6$3;
5153
- var _b6$1;
5154
- (class extends (_b6$1 = AISDKError$1, _a6$3 = symbol6$3, _b6$1) {
5548
+ var name5$1$1 = "AI_InvalidResponseDataError";
5549
+ var marker6$1$1 = `vercel.ai.error.${name5$1$1}`;
5550
+ var symbol6$1$1 = Symbol.for(marker6$1$1);
5551
+ var _a6$1$1;
5552
+ var _b6$1$1;
5553
+ (class extends (_b6$1$1 = AISDKError$1, _a6$1$1 = symbol6$1$1, _b6$1$1) {
5155
5554
  constructor({ data, message = `Invalid response data: ${JSON.stringify(data)}.` }) {
5156
5555
  super({
5157
- name: name5$3,
5556
+ name: name5$1$1,
5158
5557
  message
5159
5558
  });
5160
- this[_a6$3] = true;
5559
+ this[_a6$1$1] = true;
5161
5560
  this.data = data;
5162
5561
  }
5163
5562
  static isInstance(error) {
5164
- return AISDKError$1.hasMarker(error, marker6$3);
5563
+ return AISDKError$1.hasMarker(error, marker6$1$1);
5165
5564
  }
5166
5565
  });
5167
- var name6$3 = "AI_JSONParseError";
5168
- var marker7$3 = `vercel.ai.error.${name6$3}`;
5169
- var symbol7$3 = Symbol.for(marker7$3);
5170
- var _a7$3;
5171
- var _b7$1;
5172
- var JSONParseError$1 = class extends (_b7$1 = AISDKError$1, _a7$3 = symbol7$3, _b7$1) {
5566
+ var name6$1$1 = "AI_JSONParseError";
5567
+ var marker7$1$1 = `vercel.ai.error.${name6$1$1}`;
5568
+ var symbol7$1$1 = Symbol.for(marker7$1$1);
5569
+ var _a7$1$1;
5570
+ var _b7$1$1;
5571
+ var JSONParseError$1 = class extends (_b7$1$1 = AISDKError$1, _a7$1$1 = symbol7$1$1, _b7$1$1) {
5173
5572
  constructor({ text, cause }) {
5174
5573
  super({
5175
- name: name6$3,
5574
+ name: name6$1$1,
5176
5575
  message: `JSON parsing failed: Text: ${text}.
5177
- Error message: ${getErrorMessage$1(cause)}`,
5576
+ Error message: ${getErrorMessage$2(cause)}`,
5178
5577
  cause
5179
5578
  });
5180
- this[_a7$3] = true;
5579
+ this[_a7$1$1] = true;
5181
5580
  this.text = text;
5182
5581
  }
5183
5582
  static isInstance(error) {
5184
- return AISDKError$1.hasMarker(error, marker7$3);
5583
+ return AISDKError$1.hasMarker(error, marker7$1$1);
5185
5584
  }
5186
5585
  };
5187
- var name7$3 = "AI_LoadAPIKeyError";
5188
- var marker8$3 = `vercel.ai.error.${name7$3}`;
5189
- var symbol8$3 = Symbol.for(marker8$3);
5190
- var _a8$3;
5191
- var _b8$1;
5192
- (class extends (_b8$1 = AISDKError$1, _a8$3 = symbol8$3, _b8$1) {
5586
+ var name7$1$1 = "AI_LoadAPIKeyError";
5587
+ var marker8$1$1 = `vercel.ai.error.${name7$1$1}`;
5588
+ var symbol8$1$1 = Symbol.for(marker8$1$1);
5589
+ var _a8$1$1;
5590
+ var _b8$1$1;
5591
+ (class extends (_b8$1$1 = AISDKError$1, _a8$1$1 = symbol8$1$1, _b8$1$1) {
5193
5592
  constructor({ message }) {
5194
5593
  super({
5195
- name: name7$3,
5594
+ name: name7$1$1,
5196
5595
  message
5197
5596
  });
5198
- this[_a8$3] = true;
5597
+ this[_a8$1$1] = true;
5199
5598
  }
5200
5599
  static isInstance(error) {
5201
- return AISDKError$1.hasMarker(error, marker8$3);
5600
+ return AISDKError$1.hasMarker(error, marker8$1$1);
5202
5601
  }
5203
5602
  });
5204
- var name8$3 = "AI_LoadSettingError";
5205
- var marker9$3 = `vercel.ai.error.${name8$3}`;
5206
- var symbol9$3 = Symbol.for(marker9$3);
5207
- var _a9$3;
5208
- var _b9$1;
5209
- (class extends (_b9$1 = AISDKError$1, _a9$3 = symbol9$3, _b9$1) {
5603
+ var name8$1$1 = "AI_LoadSettingError";
5604
+ var marker9$1$1 = `vercel.ai.error.${name8$1$1}`;
5605
+ var symbol9$1$1 = Symbol.for(marker9$1$1);
5606
+ var _a9$1$1;
5607
+ var _b9$1$1;
5608
+ (class extends (_b9$1$1 = AISDKError$1, _a9$1$1 = symbol9$1$1, _b9$1$1) {
5210
5609
  constructor({ message }) {
5211
5610
  super({
5212
- name: name8$3,
5611
+ name: name8$1$1,
5213
5612
  message
5214
5613
  });
5215
- this[_a9$3] = true;
5614
+ this[_a9$1$1] = true;
5216
5615
  }
5217
5616
  static isInstance(error) {
5218
- return AISDKError$1.hasMarker(error, marker9$3);
5617
+ return AISDKError$1.hasMarker(error, marker9$1$1);
5219
5618
  }
5220
5619
  });
5221
- var name9$3 = "AI_NoContentGeneratedError";
5222
- var marker10$3 = `vercel.ai.error.${name9$3}`;
5223
- var symbol10$3 = Symbol.for(marker10$3);
5224
- var _a10$3;
5225
- var _b10$1;
5226
- (class extends (_b10$1 = AISDKError$1, _a10$3 = symbol10$3, _b10$1) {
5620
+ var name9$1$1 = "AI_NoContentGeneratedError";
5621
+ var marker10$1$1 = `vercel.ai.error.${name9$1$1}`;
5622
+ var symbol10$1$1 = Symbol.for(marker10$1$1);
5623
+ var _a10$1$1;
5624
+ var _b10$1$1;
5625
+ (class extends (_b10$1$1 = AISDKError$1, _a10$1$1 = symbol10$1$1, _b10$1$1) {
5227
5626
  constructor({ message = "No content generated." } = {}) {
5228
5627
  super({
5229
- name: name9$3,
5628
+ name: name9$1$1,
5230
5629
  message
5231
5630
  });
5232
- this[_a10$3] = true;
5631
+ this[_a10$1$1] = true;
5233
5632
  }
5234
5633
  static isInstance(error) {
5235
- return AISDKError$1.hasMarker(error, marker10$3);
5634
+ return AISDKError$1.hasMarker(error, marker10$1$1);
5236
5635
  }
5237
5636
  });
5238
- var name10$3 = "AI_NoSuchModelError";
5239
- var marker11$3 = `vercel.ai.error.${name10$3}`;
5240
- var symbol11$3 = Symbol.for(marker11$3);
5241
- var _a11$3;
5242
- var _b11$1;
5243
- (class extends (_b11$1 = AISDKError$1, _a11$3 = symbol11$3, _b11$1) {
5244
- constructor({ errorName = name10$3, modelId, modelType, message = `No such ${modelType}: ${modelId}` }) {
5637
+ var name10$1$1 = "AI_NoSuchModelError";
5638
+ var marker11$1$1 = `vercel.ai.error.${name10$1$1}`;
5639
+ var symbol11$1$1 = Symbol.for(marker11$1$1);
5640
+ var _a11$1$1;
5641
+ var _b11$1$1;
5642
+ (class extends (_b11$1$1 = AISDKError$1, _a11$1$1 = symbol11$1$1, _b11$1$1) {
5643
+ constructor({ errorName = name10$1$1, modelId, modelType, message = `No such ${modelType}: ${modelId}` }) {
5245
5644
  super({
5246
5645
  name: errorName,
5247
5646
  message
5248
5647
  });
5249
- this[_a11$3] = true;
5648
+ this[_a11$1$1] = true;
5250
5649
  this.modelId = modelId;
5251
5650
  this.modelType = modelType;
5252
5651
  }
5253
5652
  static isInstance(error) {
5254
- return AISDKError$1.hasMarker(error, marker11$3);
5653
+ return AISDKError$1.hasMarker(error, marker11$1$1);
5255
5654
  }
5256
5655
  });
5257
- var name11$3 = "AI_TooManyEmbeddingValuesForCallError";
5258
- var marker12$3 = `vercel.ai.error.${name11$3}`;
5259
- var symbol12$3 = Symbol.for(marker12$3);
5260
- var _a12$3;
5261
- var _b12$1;
5262
- (class extends (_b12$1 = AISDKError$1, _a12$3 = symbol12$3, _b12$1) {
5656
+ var name11$1$1 = "AI_TooManyEmbeddingValuesForCallError";
5657
+ var marker12$1$1 = `vercel.ai.error.${name11$1$1}`;
5658
+ var symbol12$1$1 = Symbol.for(marker12$1$1);
5659
+ var _a12$1$1;
5660
+ var _b12$1$1;
5661
+ (class extends (_b12$1$1 = AISDKError$1, _a12$1$1 = symbol12$1$1, _b12$1$1) {
5263
5662
  constructor(options) {
5264
5663
  super({
5265
- name: name11$3,
5664
+ name: name11$1$1,
5266
5665
  message: `Too many values for a single embedding call. The ${options.provider} model "${options.modelId}" can only embed up to ${options.maxEmbeddingsPerCall} values per call, but ${options.values.length} values were provided.`
5267
5666
  });
5268
- this[_a12$3] = true;
5667
+ this[_a12$1$1] = true;
5269
5668
  this.provider = options.provider;
5270
5669
  this.modelId = options.modelId;
5271
5670
  this.maxEmbeddingsPerCall = options.maxEmbeddingsPerCall;
5272
5671
  this.values = options.values;
5273
5672
  }
5274
5673
  static isInstance(error) {
5275
- return AISDKError$1.hasMarker(error, marker12$3);
5674
+ return AISDKError$1.hasMarker(error, marker12$1$1);
5276
5675
  }
5277
5676
  });
5278
- var name12$3 = "AI_TypeValidationError";
5279
- var marker13$3 = `vercel.ai.error.${name12$3}`;
5280
- var symbol13$3 = Symbol.for(marker13$3);
5281
- var _a13$3;
5282
- var _b13$1;
5283
- var TypeValidationError$1 = class _TypeValidationError extends (_b13$1 = AISDKError$1, _a13$3 = symbol13$3, _b13$1) {
5677
+ var name12$1$1 = "AI_TypeValidationError";
5678
+ var marker13$1$1 = `vercel.ai.error.${name12$1$1}`;
5679
+ var symbol13$1$1 = Symbol.for(marker13$1$1);
5680
+ var _a13$1$1;
5681
+ var _b13$1$1;
5682
+ var TypeValidationError$1 = class _TypeValidationError extends (_b13$1$1 = AISDKError$1, _a13$1$1 = symbol13$1$1, _b13$1$1) {
5284
5683
  constructor({ value, cause, context }) {
5285
5684
  let contextPrefix = "Type validation failed";
5286
5685
  if (context == null ? void 0 : context.field) contextPrefix += ` for ${context.field}`;
@@ -5293,17 +5692,17 @@ var TypeValidationError$1 = class _TypeValidationError extends (_b13$1 = AISDKEr
5293
5692
  contextPrefix += ")";
5294
5693
  }
5295
5694
  super({
5296
- name: name12$3,
5695
+ name: name12$1$1,
5297
5696
  message: `${contextPrefix}: Value: ${JSON.stringify(value)}.
5298
- Error message: ${getErrorMessage$1(cause)}`,
5697
+ Error message: ${getErrorMessage$2(cause)}`,
5299
5698
  cause
5300
5699
  });
5301
- this[_a13$3] = true;
5700
+ this[_a13$1$1] = true;
5302
5701
  this.value = value;
5303
5702
  this.context = context;
5304
5703
  }
5305
5704
  static isInstance(error) {
5306
- return AISDKError$1.hasMarker(error, marker13$3);
5705
+ return AISDKError$1.hasMarker(error, marker13$1$1);
5307
5706
  }
5308
5707
  /**
5309
5708
  * Wraps an error into a TypeValidationError.
@@ -5326,50 +5725,50 @@ Error message: ${getErrorMessage$1(cause)}`,
5326
5725
  });
5327
5726
  }
5328
5727
  };
5329
- var name13$3 = "AI_UnsupportedFunctionalityError";
5330
- var marker14$3 = `vercel.ai.error.${name13$3}`;
5331
- var symbol14$3 = Symbol.for(marker14$3);
5332
- var _a14$3;
5333
- var _b14$1;
5334
- (class extends (_b14$1 = AISDKError$1, _a14$3 = symbol14$3, _b14$1) {
5728
+ var name13$1$1 = "AI_UnsupportedFunctionalityError";
5729
+ var marker14$1$1 = `vercel.ai.error.${name13$1$1}`;
5730
+ var symbol14$1$1 = Symbol.for(marker14$1$1);
5731
+ var _a14$1$1;
5732
+ var _b14$1$1;
5733
+ (class extends (_b14$1$1 = AISDKError$1, _a14$1$1 = symbol14$1$1, _b14$1$1) {
5335
5734
  constructor({ functionality, message = `'${functionality}' functionality not supported.` }) {
5336
5735
  super({
5337
- name: name13$3,
5736
+ name: name13$1$1,
5338
5737
  message
5339
5738
  });
5340
- this[_a14$3] = true;
5739
+ this[_a14$1$1] = true;
5341
5740
  this.functionality = functionality;
5342
5741
  }
5343
5742
  static isInstance(error) {
5344
- return AISDKError$1.hasMarker(error, marker14$3);
5743
+ return AISDKError$1.hasMarker(error, marker14$1$1);
5345
5744
  }
5346
5745
  });
5347
5746
  TransformStream;
5348
5747
  var { btoa: btoa$2, atob: atob$2 } = globalThis;
5349
- var name$5 = "AI_DownloadError";
5350
- var marker$5 = `vercel.ai.error.${name$5}`;
5351
- var symbol$5 = Symbol.for(marker$5);
5352
- var _a$5;
5353
- var _b$2;
5354
- (class extends (_b$2 = AISDKError$1, _a$5 = symbol$5, _b$2) {
5748
+ var name$1$4 = "AI_DownloadError";
5749
+ var marker$1$3 = `vercel.ai.error.${name$1$4}`;
5750
+ var symbol$1$4 = Symbol.for(marker$1$3);
5751
+ var _a$1$4;
5752
+ var _b$1$3;
5753
+ (class extends (_b$1$3 = AISDKError$1, _a$1$4 = symbol$1$4, _b$1$3) {
5355
5754
  constructor({ url, statusCode, statusText, cause, message = cause == null ? `Failed to download ${url}: ${statusCode} ${statusText}` : `Failed to download ${url}: ${cause}` }) {
5356
5755
  super({
5357
- name: name$5,
5756
+ name: name$1$4,
5358
5757
  message,
5359
5758
  cause
5360
5759
  });
5361
- this[_a$5] = true;
5760
+ this[_a$1$4] = true;
5362
5761
  this.url = url;
5363
5762
  this.statusCode = statusCode;
5364
5763
  this.statusText = statusText;
5365
5764
  }
5366
5765
  static isInstance(error) {
5367
- return AISDKError$1.hasMarker(error, marker$5);
5766
+ return AISDKError$1.hasMarker(error, marker$1$3);
5368
5767
  }
5369
5768
  });
5370
- var initialGlobalFetch$1 = globalThis.fetch;
5371
- isNodeDefaultFetch$1(initialGlobalFetch$1);
5372
- function isNodeDefaultFetch$1(fetch) {
5769
+ var initialGlobalFetch = globalThis.fetch;
5770
+ isNodeDefaultFetch(initialGlobalFetch);
5771
+ function isNodeDefaultFetch(fetch) {
5373
5772
  if (typeof fetch !== "function") return false;
5374
5773
  const source = Function.prototype.toString.call(fetch);
5375
5774
  return source.includes("internal/deps/undici") || source.includes("lazy loading of undici");
@@ -5396,7 +5795,7 @@ var createIdGenerator$1 = ({ prefix, size = 16, alphabet = "0123456789ABCDEFGHIJ
5396
5795
  return chars.join("");
5397
5796
  };
5398
5797
  if (prefix == null) return generator;
5399
- if (alphabet.includes(separator)) throw new InvalidArgumentError$1({
5798
+ if (alphabet.includes(separator)) throw new InvalidArgumentError$1$1({
5400
5799
  argument: "separator",
5401
5800
  message: `The separator "${separator}" must not be part of the alphabet "${alphabet}".`
5402
5801
  });
@@ -5442,7 +5841,8 @@ function secureJsonParse$1(text) {
5442
5841
  }
5443
5842
  function addAdditionalPropertiesToJsonSchema$1(jsonSchema2) {
5444
5843
  if (jsonSchema2.type === "object" || Array.isArray(jsonSchema2.type) && jsonSchema2.type.includes("object")) {
5445
- jsonSchema2.additionalProperties = false;
5844
+ const { additionalProperties } = jsonSchema2;
5845
+ jsonSchema2.additionalProperties = additionalProperties != null && typeof additionalProperties !== "boolean" ? visit$1(additionalProperties) : false;
5446
5846
  const { properties } = jsonSchema2;
5447
5847
  if (properties != null) for (const key of Object.keys(properties)) properties[key] = visit$1(properties[key]);
5448
5848
  }
@@ -6472,35 +6872,351 @@ async function safeValidateTypes$1({ value, schema, context }) {
6472
6872
  rawValue: value
6473
6873
  };
6474
6874
  }
6475
- }
6476
- async function safeParseJSON$1({ text, schema }) {
6477
- try {
6478
- const value = secureJsonParse$1(text);
6479
- if (schema == null) return {
6480
- success: true,
6481
- value,
6482
- rawValue: value
6483
- };
6484
- return await safeValidateTypes$1({
6875
+ }
6876
+ async function safeParseJSON$1({ text, schema }) {
6877
+ try {
6878
+ const value = secureJsonParse$1(text);
6879
+ if (schema == null) return {
6880
+ success: true,
6881
+ value,
6882
+ rawValue: value
6883
+ };
6884
+ return await safeValidateTypes$1({
6885
+ value,
6886
+ schema
6887
+ });
6888
+ } catch (error) {
6889
+ return {
6890
+ success: false,
6891
+ error: JSONParseError$1.isInstance(error) ? error : new JSONParseError$1({
6892
+ text,
6893
+ cause: error
6894
+ }),
6895
+ rawValue: void 0
6896
+ };
6897
+ }
6898
+ }
6899
+ async function resolve$1(value) {
6900
+ if (typeof value === "function") value = value();
6901
+ return Promise.resolve(value);
6902
+ }
6903
+ new TextDecoder();
6904
+ var marker$3 = "vercel.ai.error";
6905
+ var symbol$5 = Symbol.for(marker$3);
6906
+ var _a$5;
6907
+ var _b$3;
6908
+ var AISDKError$2 = class _AISDKError extends (_b$3 = Error, _a$5 = symbol$5, _b$3) {
6909
+ /**
6910
+ * Creates an AI SDK Error.
6911
+ *
6912
+ * @param {Object} params - The parameters for creating the error.
6913
+ * @param {string} params.name - The name of the error.
6914
+ * @param {string} params.message - The error message.
6915
+ * @param {unknown} [params.cause] - The underlying cause of the error.
6916
+ */
6917
+ constructor({ name: name14, message, cause }) {
6918
+ super(message);
6919
+ this[_a$5] = true;
6920
+ this.name = name14;
6921
+ this.cause = cause;
6922
+ }
6923
+ /**
6924
+ * Checks if the given error is an AI SDK Error.
6925
+ * @param {unknown} error - The error to check.
6926
+ * @returns {boolean} True if the error is an AI SDK Error, false otherwise.
6927
+ */
6928
+ static isInstance(error) {
6929
+ return _AISDKError.hasMarker(error, marker$3);
6930
+ }
6931
+ static hasMarker(error, marker15) {
6932
+ const markerSymbol = Symbol.for(marker15);
6933
+ return error != null && typeof error === "object" && markerSymbol in error && typeof error[markerSymbol] === "boolean" && error[markerSymbol] === true;
6934
+ }
6935
+ };
6936
+ var name$5 = "AI_APICallError";
6937
+ var marker2$5 = `vercel.ai.error.${name$5}`;
6938
+ var symbol2$5 = Symbol.for(marker2$5);
6939
+ var _a2$5;
6940
+ var _b2$4;
6941
+ (class extends (_b2$4 = AISDKError$2, _a2$5 = symbol2$5, _b2$4) {
6942
+ constructor({ message, url, requestBodyValues, statusCode, responseHeaders, responseBody, cause, isRetryable = statusCode != null && (statusCode === 408 || statusCode === 409 || statusCode === 429 || statusCode >= 500), data }) {
6943
+ super({
6944
+ name: name$5,
6945
+ message,
6946
+ cause
6947
+ });
6948
+ this[_a2$5] = true;
6949
+ this.url = url;
6950
+ this.requestBodyValues = requestBodyValues;
6951
+ this.statusCode = statusCode;
6952
+ this.responseHeaders = responseHeaders;
6953
+ this.responseBody = responseBody;
6954
+ this.isRetryable = isRetryable;
6955
+ this.data = data;
6956
+ }
6957
+ static isInstance(error) {
6958
+ return AISDKError$2.hasMarker(error, marker2$5);
6959
+ }
6960
+ });
6961
+ var name2$5 = "AI_EmptyResponseBodyError";
6962
+ var marker3$5 = `vercel.ai.error.${name2$5}`;
6963
+ var symbol3$3 = Symbol.for(marker3$5);
6964
+ var _a3$3;
6965
+ var _b3$2;
6966
+ (class extends (_b3$2 = AISDKError$2, _a3$3 = symbol3$3, _b3$2) {
6967
+ constructor({ message = "Empty response body" } = {}) {
6968
+ super({
6969
+ name: name2$5,
6970
+ message
6971
+ });
6972
+ this[_a3$3] = true;
6973
+ }
6974
+ static isInstance(error) {
6975
+ return AISDKError$2.hasMarker(error, marker3$5);
6976
+ }
6977
+ });
6978
+ function getErrorMessage$1(error) {
6979
+ if (error == null) return "unknown error";
6980
+ if (typeof error === "string") return error;
6981
+ if (error instanceof Error) return error.message;
6982
+ return JSON.stringify(error);
6983
+ }
6984
+ var name3$3 = "AI_InvalidArgumentError";
6985
+ var marker4$3 = `vercel.ai.error.${name3$3}`;
6986
+ var symbol4$3 = Symbol.for(marker4$3);
6987
+ var _a4$3;
6988
+ var _b4$2;
6989
+ (class extends (_b4$2 = AISDKError$2, _a4$3 = symbol4$3, _b4$2) {
6990
+ constructor({ message, cause, argument }) {
6991
+ super({
6992
+ name: name3$3,
6993
+ message,
6994
+ cause
6995
+ });
6996
+ this[_a4$3] = true;
6997
+ this.argument = argument;
6998
+ }
6999
+ static isInstance(error) {
7000
+ return AISDKError$2.hasMarker(error, marker4$3);
7001
+ }
7002
+ });
7003
+ var name4$3 = "AI_InvalidPromptError";
7004
+ var marker5$3 = `vercel.ai.error.${name4$3}`;
7005
+ var symbol5$3 = Symbol.for(marker5$3);
7006
+ var _a5$3;
7007
+ var _b5$2;
7008
+ (class extends (_b5$2 = AISDKError$2, _a5$3 = symbol5$3, _b5$2) {
7009
+ constructor({ prompt, message, cause }) {
7010
+ super({
7011
+ name: name4$3,
7012
+ message: `Invalid prompt: ${message}`,
7013
+ cause
7014
+ });
7015
+ this[_a5$3] = true;
7016
+ this.prompt = prompt;
7017
+ }
7018
+ static isInstance(error) {
7019
+ return AISDKError$2.hasMarker(error, marker5$3);
7020
+ }
7021
+ });
7022
+ var name5$3 = "AI_InvalidResponseDataError";
7023
+ var marker6$3 = `vercel.ai.error.${name5$3}`;
7024
+ var symbol6$3 = Symbol.for(marker6$3);
7025
+ var _a6$3;
7026
+ var _b6$2;
7027
+ (class extends (_b6$2 = AISDKError$2, _a6$3 = symbol6$3, _b6$2) {
7028
+ constructor({ data, message = `Invalid response data: ${JSON.stringify(data)}.` }) {
7029
+ super({
7030
+ name: name5$3,
7031
+ message
7032
+ });
7033
+ this[_a6$3] = true;
7034
+ this.data = data;
7035
+ }
7036
+ static isInstance(error) {
7037
+ return AISDKError$2.hasMarker(error, marker6$3);
7038
+ }
7039
+ });
7040
+ var name6$3 = "AI_JSONParseError";
7041
+ var marker7$3 = `vercel.ai.error.${name6$3}`;
7042
+ var symbol7$3 = Symbol.for(marker7$3);
7043
+ var _a7$3;
7044
+ var _b7$2;
7045
+ (class extends (_b7$2 = AISDKError$2, _a7$3 = symbol7$3, _b7$2) {
7046
+ constructor({ text, cause }) {
7047
+ super({
7048
+ name: name6$3,
7049
+ message: `JSON parsing failed: Text: ${text}.
7050
+ Error message: ${getErrorMessage$1(cause)}`,
7051
+ cause
7052
+ });
7053
+ this[_a7$3] = true;
7054
+ this.text = text;
7055
+ }
7056
+ static isInstance(error) {
7057
+ return AISDKError$2.hasMarker(error, marker7$3);
7058
+ }
7059
+ });
7060
+ var name7$3 = "AI_LoadAPIKeyError";
7061
+ var marker8$3 = `vercel.ai.error.${name7$3}`;
7062
+ var symbol8$3 = Symbol.for(marker8$3);
7063
+ var _a8$3;
7064
+ var _b8$2;
7065
+ (class extends (_b8$2 = AISDKError$2, _a8$3 = symbol8$3, _b8$2) {
7066
+ constructor({ message }) {
7067
+ super({
7068
+ name: name7$3,
7069
+ message
7070
+ });
7071
+ this[_a8$3] = true;
7072
+ }
7073
+ static isInstance(error) {
7074
+ return AISDKError$2.hasMarker(error, marker8$3);
7075
+ }
7076
+ });
7077
+ var name8$3 = "AI_LoadSettingError";
7078
+ var marker9$3 = `vercel.ai.error.${name8$3}`;
7079
+ var symbol9$3 = Symbol.for(marker9$3);
7080
+ var _a9$3;
7081
+ var _b9$2;
7082
+ (class extends (_b9$2 = AISDKError$2, _a9$3 = symbol9$3, _b9$2) {
7083
+ constructor({ message }) {
7084
+ super({
7085
+ name: name8$3,
7086
+ message
7087
+ });
7088
+ this[_a9$3] = true;
7089
+ }
7090
+ static isInstance(error) {
7091
+ return AISDKError$2.hasMarker(error, marker9$3);
7092
+ }
7093
+ });
7094
+ var name9$3 = "AI_NoContentGeneratedError";
7095
+ var marker10$3 = `vercel.ai.error.${name9$3}`;
7096
+ var symbol10$3 = Symbol.for(marker10$3);
7097
+ var _a10$3;
7098
+ var _b10$2;
7099
+ (class extends (_b10$2 = AISDKError$2, _a10$3 = symbol10$3, _b10$2) {
7100
+ constructor({ message = "No content generated." } = {}) {
7101
+ super({
7102
+ name: name9$3,
7103
+ message
7104
+ });
7105
+ this[_a10$3] = true;
7106
+ }
7107
+ static isInstance(error) {
7108
+ return AISDKError$2.hasMarker(error, marker10$3);
7109
+ }
7110
+ });
7111
+ var name10$3 = "AI_NoSuchModelError";
7112
+ var marker11$3 = `vercel.ai.error.${name10$3}`;
7113
+ var symbol11$3 = Symbol.for(marker11$3);
7114
+ var _a11$3;
7115
+ var _b11$2;
7116
+ (class extends (_b11$2 = AISDKError$2, _a11$3 = symbol11$3, _b11$2) {
7117
+ constructor({ errorName = name10$3, modelId, modelType, message = `No such ${modelType}: ${modelId}` }) {
7118
+ super({
7119
+ name: errorName,
7120
+ message
7121
+ });
7122
+ this[_a11$3] = true;
7123
+ this.modelId = modelId;
7124
+ this.modelType = modelType;
7125
+ }
7126
+ static isInstance(error) {
7127
+ return AISDKError$2.hasMarker(error, marker11$3);
7128
+ }
7129
+ });
7130
+ var name11$3 = "AI_TooManyEmbeddingValuesForCallError";
7131
+ var marker12$3 = `vercel.ai.error.${name11$3}`;
7132
+ var symbol12$3 = Symbol.for(marker12$3);
7133
+ var _a12$3;
7134
+ var _b12$2;
7135
+ (class extends (_b12$2 = AISDKError$2, _a12$3 = symbol12$3, _b12$2) {
7136
+ constructor(options) {
7137
+ super({
7138
+ name: name11$3,
7139
+ message: `Too many values for a single embedding call. The ${options.provider} model "${options.modelId}" can only embed up to ${options.maxEmbeddingsPerCall} values per call, but ${options.values.length} values were provided.`
7140
+ });
7141
+ this[_a12$3] = true;
7142
+ this.provider = options.provider;
7143
+ this.modelId = options.modelId;
7144
+ this.maxEmbeddingsPerCall = options.maxEmbeddingsPerCall;
7145
+ this.values = options.values;
7146
+ }
7147
+ static isInstance(error) {
7148
+ return AISDKError$2.hasMarker(error, marker12$3);
7149
+ }
7150
+ });
7151
+ var name12$3 = "AI_TypeValidationError";
7152
+ var marker13$3 = `vercel.ai.error.${name12$3}`;
7153
+ var symbol13$3 = Symbol.for(marker13$3);
7154
+ var _a13$3;
7155
+ var _b13$2;
7156
+ var TypeValidationError$2 = class _TypeValidationError extends (_b13$2 = AISDKError$2, _a13$3 = symbol13$3, _b13$2) {
7157
+ constructor({ value, cause, context }) {
7158
+ let contextPrefix = "Type validation failed";
7159
+ if (context == null ? void 0 : context.field) contextPrefix += ` for ${context.field}`;
7160
+ if ((context == null ? void 0 : context.entityName) || (context == null ? void 0 : context.entityId)) {
7161
+ contextPrefix += " (";
7162
+ const parts = [];
7163
+ if (context.entityName) parts.push(context.entityName);
7164
+ if (context.entityId) parts.push(`id: "${context.entityId}"`);
7165
+ contextPrefix += parts.join(", ");
7166
+ contextPrefix += ")";
7167
+ }
7168
+ super({
7169
+ name: name12$3,
7170
+ message: `${contextPrefix}: Value: ${JSON.stringify(value)}.
7171
+ Error message: ${getErrorMessage$1(cause)}`,
7172
+ cause
7173
+ });
7174
+ this[_a13$3] = true;
7175
+ this.value = value;
7176
+ this.context = context;
7177
+ }
7178
+ static isInstance(error) {
7179
+ return AISDKError$2.hasMarker(error, marker13$3);
7180
+ }
7181
+ /**
7182
+ * Wraps an error into a TypeValidationError.
7183
+ * If the cause is already a TypeValidationError with the same value and context, it returns the cause.
7184
+ * Otherwise, it creates a new TypeValidationError.
7185
+ *
7186
+ * @param {Object} params - The parameters for wrapping the error.
7187
+ * @param {unknown} params.value - The value that failed validation.
7188
+ * @param {unknown} params.cause - The original error or cause of the validation failure.
7189
+ * @param {TypeValidationContext} params.context - Optional context about what is being validated.
7190
+ * @returns {TypeValidationError} A TypeValidationError instance.
7191
+ */
7192
+ static wrap({ value, cause, context }) {
7193
+ var _a15, _b15, _c;
7194
+ if (_TypeValidationError.isInstance(cause) && cause.value === value && ((_a15 = cause.context) == null ? void 0 : _a15.field) === (context == null ? void 0 : context.field) && ((_b15 = cause.context) == null ? void 0 : _b15.entityName) === (context == null ? void 0 : context.entityName) && ((_c = cause.context) == null ? void 0 : _c.entityId) === (context == null ? void 0 : context.entityId)) return cause;
7195
+ return new _TypeValidationError({
6485
7196
  value,
6486
- schema
7197
+ cause,
7198
+ context
6487
7199
  });
6488
- } catch (error) {
6489
- return {
6490
- success: false,
6491
- error: JSONParseError$1.isInstance(error) ? error : new JSONParseError$1({
6492
- text,
6493
- cause: error
6494
- }),
6495
- rawValue: void 0
6496
- };
6497
7200
  }
6498
- }
6499
- async function resolve$1(value) {
6500
- if (typeof value === "function") value = value();
6501
- return Promise.resolve(value);
6502
- }
6503
- new TextDecoder();
7201
+ };
7202
+ var name13$3 = "AI_UnsupportedFunctionalityError";
7203
+ var marker14$3 = `vercel.ai.error.${name13$3}`;
7204
+ var symbol14$3 = Symbol.for(marker14$3);
7205
+ var _a14$3;
7206
+ var _b14$2;
7207
+ (class extends (_b14$2 = AISDKError$2, _a14$3 = symbol14$3, _b14$2) {
7208
+ constructor({ functionality, message = `'${functionality}' functionality not supported.` }) {
7209
+ super({
7210
+ name: name13$3,
7211
+ message
7212
+ });
7213
+ this[_a14$3] = true;
7214
+ this.functionality = functionality;
7215
+ }
7216
+ static isInstance(error) {
7217
+ return AISDKError$2.hasMarker(error, marker14$3);
7218
+ }
7219
+ });
6504
7220
  //#endregion
6505
7221
  //#region ../../packages/_vendored/ai_v6/dist/index.js
6506
7222
  const VERSION$1 = "1.9.1";
@@ -7298,7 +8014,7 @@ var name9$2 = "AI_NoObjectGeneratedError";
7298
8014
  var marker9$2 = `vercel.ai.error.${name9$2}`;
7299
8015
  var symbol9$2 = Symbol.for(marker9$2);
7300
8016
  var _a9$2;
7301
- var NoObjectGeneratedError$1 = class extends AISDKError$1 {
8017
+ var NoObjectGeneratedError$1 = class extends AISDKError$2 {
7302
8018
  constructor({ message = "No object generated.", cause, text: text2, response, usage, finishReason }) {
7303
8019
  super({
7304
8020
  name: name9$2,
@@ -7312,29 +8028,29 @@ var NoObjectGeneratedError$1 = class extends AISDKError$1 {
7312
8028
  this.finishReason = finishReason;
7313
8029
  }
7314
8030
  static isInstance(error) {
7315
- return AISDKError$1.hasMarker(error, marker9$2);
8031
+ return AISDKError$2.hasMarker(error, marker9$2);
7316
8032
  }
7317
8033
  };
7318
8034
  _a9$2 = symbol9$2;
7319
8035
  var name16$1 = "AI_UIMessageStreamError";
7320
- var marker16$1 = `vercel.ai.error.${name16$1}`;
7321
- var symbol16$1 = Symbol.for(marker16$1);
7322
- var _a16$1;
7323
- var UIMessageStreamError$1 = class extends AISDKError$1 {
8036
+ var marker16$2 = `vercel.ai.error.${name16$1}`;
8037
+ var symbol16$2 = Symbol.for(marker16$2);
8038
+ var _a16$2;
8039
+ var UIMessageStreamError$1 = class extends AISDKError$2 {
7324
8040
  constructor({ chunkType, chunkId, message }) {
7325
8041
  super({
7326
8042
  name: name16$1,
7327
8043
  message
7328
8044
  });
7329
- this[_a16$1] = true;
8045
+ this[_a16$2] = true;
7330
8046
  this.chunkType = chunkType;
7331
8047
  this.chunkId = chunkId;
7332
8048
  }
7333
8049
  static isInstance(error) {
7334
- return AISDKError$1.hasMarker(error, marker16$1);
8050
+ return AISDKError$2.hasMarker(error, marker16$2);
7335
8051
  }
7336
8052
  };
7337
- _a16$1 = symbol16$1;
8053
+ _a16$2 = symbol16$2;
7338
8054
  function asArray(value) {
7339
8055
  return value === void 0 ? [] : Array.isArray(value) ? value : [value];
7340
8056
  }
@@ -7923,7 +8639,7 @@ var array$1 = ({ element: inputElementSchema, name: name22, description }) => {
7923
8639
  const outerValue = parseResult.value;
7924
8640
  if (outerValue == null || typeof outerValue !== "object" || !("elements" in outerValue) || !Array.isArray(outerValue.elements)) throw new NoObjectGeneratedError$1({
7925
8641
  message: "No object generated: response did not match schema.",
7926
- cause: new TypeValidationError$1({
8642
+ cause: new TypeValidationError$2({
7927
8643
  value: outerValue,
7928
8644
  cause: "response must be an object with an elements array"
7929
8645
  }),
@@ -8011,7 +8727,7 @@ var choice$1 = ({ options: choiceOptions, name: name22, description }) => {
8011
8727
  const outerValue = parseResult.value;
8012
8728
  if (outerValue == null || typeof outerValue !== "object" || !("result" in outerValue) || typeof outerValue.result !== "string" || !choiceOptions.includes(outerValue.result)) throw new NoObjectGeneratedError$1({
8013
8729
  message: "No object generated: response did not match schema.",
8014
- cause: new TypeValidationError$1({
8730
+ cause: new TypeValidationError$2({
8015
8731
  value: outerValue,
8016
8732
  cause: "response must be an object that contains a choice value."
8017
8733
  }),
@@ -8806,7 +9522,7 @@ var doWrap = ({ model, middleware: { transformParams, wrapGenerate, wrapStream,
8806
9522
  };
8807
9523
  };
8808
9524
  //#endregion
8809
- //#region ../../packages/_vendored/ai_v7/dist/dist-BWqbqY3Z.js
9525
+ //#region ../../packages/_vendored/ai_v7/dist/dist-DbEnL0ur.js
8810
9526
  var marker$1 = "vercel.ai.error";
8811
9527
  var symbol$1 = Symbol.for(marker$1);
8812
9528
  var _a$1;
@@ -8820,10 +9536,10 @@ var AISDKError = class _AISDKError extends (_b$1 = Error, _a$1 = symbol$1, _b$1)
8820
9536
  * @param {string} params.message - The error message.
8821
9537
  * @param {unknown} [params.cause] - The underlying cause of the error.
8822
9538
  */
8823
- constructor({ name: name15, message, cause }) {
9539
+ constructor({ name: name16, message, cause }) {
8824
9540
  super(message);
8825
9541
  this[_a$1] = true;
8826
- this.name = name15;
9542
+ this.name = name16;
8827
9543
  this.cause = cause;
8828
9544
  }
8829
9545
  /**
@@ -8834,8 +9550,8 @@ var AISDKError = class _AISDKError extends (_b$1 = Error, _a$1 = symbol$1, _b$1)
8834
9550
  static isInstance(error) {
8835
9551
  return _AISDKError.hasMarker(error, marker$1);
8836
9552
  }
8837
- static hasMarker(error, marker16) {
8838
- const markerSymbol = Symbol.for(marker16);
9553
+ static hasMarker(error, marker17) {
9554
+ const markerSymbol = Symbol.for(marker17);
8839
9555
  return error != null && typeof error === "object" && markerSymbol in error && typeof error[markerSymbol] === "boolean" && error[markerSymbol] === true;
8840
9556
  }
8841
9557
  };
@@ -8868,8 +9584,8 @@ var name2$1 = "AI_EmptyResponseBodyError";
8868
9584
  var marker3$1 = `vercel.ai.error.${name2$1}`;
8869
9585
  var symbol3$1 = Symbol.for(marker3$1);
8870
9586
  var _a3$1;
8871
- var _b3;
8872
- (class extends (_b3 = AISDKError, _a3$1 = symbol3$1, _b3) {
9587
+ var _b3$1;
9588
+ (class extends (_b3$1 = AISDKError, _a3$1 = symbol3$1, _b3$1) {
8873
9589
  constructor({ message = "Empty response body" } = {}) {
8874
9590
  super({
8875
9591
  name: name2$1,
@@ -8881,111 +9597,115 @@ var _b3;
8881
9597
  return AISDKError.hasMarker(error, marker3$1);
8882
9598
  }
8883
9599
  });
8884
- function getErrorMessage(error) {
8885
- if (error == null) return "unknown error";
8886
- if (typeof error === "string") return error;
8887
- if (error instanceof Error) return error.toString();
8888
- return JSON.stringify(error);
8889
- }
8890
- var name3$1 = "AI_InvalidArgumentError";
9600
+ var name3$1 = "AI_EvaluationUnsupportedQuestionTypeError";
8891
9601
  var marker4$1 = `vercel.ai.error.${name3$1}`;
8892
9602
  var symbol4$1 = Symbol.for(marker4$1);
8893
9603
  var _a4$1;
8894
- var _b4;
8895
- var InvalidArgumentError = class extends (_b4 = AISDKError, _a4$1 = symbol4$1, _b4) {
8896
- constructor({ message, cause, argument }) {
9604
+ var _b4$1;
9605
+ (class extends (_b4$1 = AISDKError, _a4$1 = symbol4$1, _b4$1) {
9606
+ constructor({ questionId, questionType, provider, modelId, message = `Question "${questionId}" has type "${questionType}", which is not supported by provider "${provider}" and model "${modelId}".` }) {
8897
9607
  super({
8898
9608
  name: name3$1,
8899
- message,
8900
- cause
9609
+ message
8901
9610
  });
8902
9611
  this[_a4$1] = true;
8903
- this.argument = argument;
9612
+ this.questionId = questionId;
9613
+ this.questionType = questionType;
9614
+ this.provider = provider;
9615
+ this.modelId = modelId;
8904
9616
  }
8905
9617
  static isInstance(error) {
8906
9618
  return AISDKError.hasMarker(error, marker4$1);
8907
9619
  }
8908
- };
8909
- var name4$1 = "AI_InvalidPromptError";
9620
+ });
9621
+ function getErrorMessage(error) {
9622
+ if (error == null) return "unknown error";
9623
+ if (typeof error === "string") return error;
9624
+ if (error instanceof Error) return error.toString();
9625
+ return JSON.stringify(error);
9626
+ }
9627
+ var name4$1 = "AI_InvalidArgumentError";
8910
9628
  var marker5$1 = `vercel.ai.error.${name4$1}`;
8911
9629
  var symbol5$1 = Symbol.for(marker5$1);
8912
9630
  var _a5$1;
8913
- var _b5;
8914
- (class extends (_b5 = AISDKError, _a5$1 = symbol5$1, _b5) {
8915
- constructor({ prompt, message, cause }) {
9631
+ var _b5$1;
9632
+ var InvalidArgumentError$1 = class extends (_b5$1 = AISDKError, _a5$1 = symbol5$1, _b5$1) {
9633
+ constructor({ message, cause, argument }) {
8916
9634
  super({
8917
9635
  name: name4$1,
8918
- message: `Invalid prompt: ${message}`,
9636
+ message,
8919
9637
  cause
8920
9638
  });
8921
9639
  this[_a5$1] = true;
8922
- this.prompt = prompt;
9640
+ this.argument = argument;
8923
9641
  }
8924
9642
  static isInstance(error) {
8925
9643
  return AISDKError.hasMarker(error, marker5$1);
8926
9644
  }
8927
- });
8928
- var name5$1 = "AI_InvalidResponseDataError";
9645
+ };
9646
+ var name5$1 = "AI_InvalidPromptError";
8929
9647
  var marker6$1 = `vercel.ai.error.${name5$1}`;
8930
9648
  var symbol6$1 = Symbol.for(marker6$1);
8931
9649
  var _a6$1;
8932
- var _b6;
8933
- (class extends (_b6 = AISDKError, _a6$1 = symbol6$1, _b6) {
8934
- constructor({ data, message = `Invalid response data: ${JSON.stringify(data)}.` }) {
9650
+ var _b6$1;
9651
+ (class extends (_b6$1 = AISDKError, _a6$1 = symbol6$1, _b6$1) {
9652
+ constructor({ prompt, message, cause }) {
8935
9653
  super({
8936
9654
  name: name5$1,
8937
- message
9655
+ message: `Invalid prompt: ${message}`,
9656
+ cause
8938
9657
  });
8939
9658
  this[_a6$1] = true;
8940
- this.data = data;
9659
+ this.prompt = prompt;
8941
9660
  }
8942
9661
  static isInstance(error) {
8943
9662
  return AISDKError.hasMarker(error, marker6$1);
8944
9663
  }
8945
9664
  });
8946
- var name6$1 = "AI_JSONParseError";
9665
+ var name6$1 = "AI_InvalidResponseDataError";
8947
9666
  var marker7$1 = `vercel.ai.error.${name6$1}`;
8948
9667
  var symbol7$1 = Symbol.for(marker7$1);
8949
9668
  var _a7$1;
8950
- var _b7;
8951
- var JSONParseError = class extends (_b7 = AISDKError, _a7$1 = symbol7$1, _b7) {
8952
- constructor({ text, cause }) {
9669
+ var _b7$1;
9670
+ (class extends (_b7$1 = AISDKError, _a7$1 = symbol7$1, _b7$1) {
9671
+ constructor({ data, message = `Invalid response data: ${JSON.stringify(data)}.` }) {
8953
9672
  super({
8954
9673
  name: name6$1,
8955
- message: `JSON parsing failed: Text: ${text}.
8956
- Error message: ${getErrorMessage(cause)}`,
8957
- cause
9674
+ message
8958
9675
  });
8959
9676
  this[_a7$1] = true;
8960
- this.text = text;
9677
+ this.data = data;
8961
9678
  }
8962
9679
  static isInstance(error) {
8963
9680
  return AISDKError.hasMarker(error, marker7$1);
8964
9681
  }
8965
- };
8966
- var name7$1 = "AI_LoadAPIKeyError";
9682
+ });
9683
+ var name7$1 = "AI_JSONParseError";
8967
9684
  var marker8$1 = `vercel.ai.error.${name7$1}`;
8968
9685
  var symbol8$1 = Symbol.for(marker8$1);
8969
9686
  var _a8$1;
8970
- var _b8;
8971
- (class extends (_b8 = AISDKError, _a8$1 = symbol8$1, _b8) {
8972
- constructor({ message }) {
9687
+ var _b8$1;
9688
+ var JSONParseError = class extends (_b8$1 = AISDKError, _a8$1 = symbol8$1, _b8$1) {
9689
+ constructor({ text, cause }) {
8973
9690
  super({
8974
9691
  name: name7$1,
8975
- message
9692
+ message: `JSON parsing failed: Text: ${text}.
9693
+ Error message: ${getErrorMessage(cause)}`,
9694
+ cause
8976
9695
  });
8977
9696
  this[_a8$1] = true;
9697
+ this.text = text;
8978
9698
  }
8979
9699
  static isInstance(error) {
8980
9700
  return AISDKError.hasMarker(error, marker8$1);
8981
9701
  }
8982
- });
8983
- var name8$1 = "AI_LoadSettingError";
9702
+ };
9703
+ var name8$1 = "AI_LoadAPIKeyError";
8984
9704
  var marker9$1 = `vercel.ai.error.${name8$1}`;
8985
9705
  var symbol9$1 = Symbol.for(marker9$1);
8986
9706
  var _a9$1;
8987
- var _b9;
8988
- (class extends (_b9 = AISDKError, _a9$1 = symbol9$1, _b9) {
9707
+ var _b9$1;
9708
+ (class extends (_b9$1 = AISDKError, _a9$1 = symbol9$1, _b9$1) {
8989
9709
  constructor({ message }) {
8990
9710
  super({
8991
9711
  name: name8$1,
@@ -8997,13 +9717,13 @@ var _b9;
8997
9717
  return AISDKError.hasMarker(error, marker9$1);
8998
9718
  }
8999
9719
  });
9000
- var name9$1 = "AI_NoContentGeneratedError";
9720
+ var name9$1 = "AI_LoadSettingError";
9001
9721
  var marker10$1 = `vercel.ai.error.${name9$1}`;
9002
9722
  var symbol10$1 = Symbol.for(marker10$1);
9003
9723
  var _a10$1;
9004
- var _b10;
9005
- (class extends (_b10 = AISDKError, _a10$1 = symbol10$1, _b10) {
9006
- constructor({ message = "No content generated." } = {}) {
9724
+ var _b10$1;
9725
+ (class extends (_b10$1 = AISDKError, _a10$1 = symbol10$1, _b10$1) {
9726
+ constructor({ message }) {
9007
9727
  super({
9008
9728
  name: name9$1,
9009
9729
  message
@@ -9014,71 +9734,88 @@ var _b10;
9014
9734
  return AISDKError.hasMarker(error, marker10$1);
9015
9735
  }
9016
9736
  });
9017
- var name10$1 = "AI_NoSuchModelError";
9737
+ var name10$1 = "AI_NoContentGeneratedError";
9018
9738
  var marker11$1 = `vercel.ai.error.${name10$1}`;
9019
9739
  var symbol11$1 = Symbol.for(marker11$1);
9020
9740
  var _a11$1;
9021
- var _b11;
9022
- (class extends (_b11 = AISDKError, _a11$1 = symbol11$1, _b11) {
9023
- constructor({ errorName = name10$1, modelId, modelType, message = `No such ${modelType}: ${modelId}` }) {
9741
+ var _b11$1;
9742
+ (class extends (_b11$1 = AISDKError, _a11$1 = symbol11$1, _b11$1) {
9743
+ constructor({ message = "No content generated." } = {}) {
9024
9744
  super({
9025
- name: errorName,
9745
+ name: name10$1,
9026
9746
  message
9027
9747
  });
9028
9748
  this[_a11$1] = true;
9029
- this.modelId = modelId;
9030
- this.modelType = modelType;
9031
9749
  }
9032
9750
  static isInstance(error) {
9033
9751
  return AISDKError.hasMarker(error, marker11$1);
9034
9752
  }
9035
9753
  });
9036
- var name11$1 = "AI_NoSuchProviderReferenceError";
9754
+ var name11$1 = "AI_NoSuchModelError";
9037
9755
  var marker12$1 = `vercel.ai.error.${name11$1}`;
9038
9756
  var symbol12$1 = Symbol.for(marker12$1);
9039
9757
  var _a12$1;
9040
- var _b12;
9041
- (class extends (_b12 = AISDKError, _a12$1 = symbol12$1, _b12) {
9042
- constructor({ provider, reference, message = `No provider reference found for provider '${provider}'. Available providers: ${Object.keys(reference).join(", ")}` }) {
9758
+ var _b12$1;
9759
+ var NoSuchModelError = class extends (_b12$1 = AISDKError, _a12$1 = symbol12$1, _b12$1) {
9760
+ constructor({ errorName = name11$1, modelId, modelType, message = `No such ${modelType}: ${modelId}` }) {
9043
9761
  super({
9044
- name: name11$1,
9762
+ name: errorName,
9045
9763
  message
9046
9764
  });
9047
9765
  this[_a12$1] = true;
9048
- this.provider = provider;
9049
- this.reference = reference;
9766
+ this.modelId = modelId;
9767
+ this.modelType = modelType;
9050
9768
  }
9051
9769
  static isInstance(error) {
9052
9770
  return AISDKError.hasMarker(error, marker12$1);
9053
9771
  }
9054
- });
9055
- var name12$1 = "AI_TooManyEmbeddingValuesForCallError";
9772
+ };
9773
+ var name12$1 = "AI_NoSuchProviderReferenceError";
9056
9774
  var marker13$1 = `vercel.ai.error.${name12$1}`;
9057
9775
  var symbol13$1 = Symbol.for(marker13$1);
9058
9776
  var _a13$1;
9059
- var _b13;
9060
- (class extends (_b13 = AISDKError, _a13$1 = symbol13$1, _b13) {
9777
+ var _b13$1;
9778
+ (class extends (_b13$1 = AISDKError, _a13$1 = symbol13$1, _b13$1) {
9779
+ constructor({ provider, reference, message = `No provider reference found for provider '${provider}'. Available providers: ${Object.keys(reference).join(", ")}` }) {
9780
+ super({
9781
+ name: name12$1,
9782
+ message
9783
+ });
9784
+ this[_a13$1] = true;
9785
+ this.provider = provider;
9786
+ this.reference = reference;
9787
+ }
9788
+ static isInstance(error) {
9789
+ return AISDKError.hasMarker(error, marker13$1);
9790
+ }
9791
+ });
9792
+ var name13$1 = "AI_TooManyEmbeddingValuesForCallError";
9793
+ var marker14$1 = `vercel.ai.error.${name13$1}`;
9794
+ var symbol14$1 = Symbol.for(marker14$1);
9795
+ var _a14$1;
9796
+ var _b14$1;
9797
+ (class extends (_b14$1 = AISDKError, _a14$1 = symbol14$1, _b14$1) {
9061
9798
  constructor(options) {
9062
9799
  super({
9063
- name: name12$1,
9800
+ name: name13$1,
9064
9801
  message: `Too many values for a single embedding call. The ${options.provider} model "${options.modelId}" can only embed up to ${options.maxEmbeddingsPerCall} values per call, but ${options.values.length} values were provided.`
9065
9802
  });
9066
- this[_a13$1] = true;
9803
+ this[_a14$1] = true;
9067
9804
  this.provider = options.provider;
9068
9805
  this.modelId = options.modelId;
9069
9806
  this.maxEmbeddingsPerCall = options.maxEmbeddingsPerCall;
9070
9807
  this.values = options.values;
9071
9808
  }
9072
9809
  static isInstance(error) {
9073
- return AISDKError.hasMarker(error, marker13$1);
9810
+ return AISDKError.hasMarker(error, marker14$1);
9074
9811
  }
9075
9812
  });
9076
- var name13$1 = "AI_TypeValidationError";
9077
- var marker14$1 = `vercel.ai.error.${name13$1}`;
9078
- var symbol14$1 = Symbol.for(marker14$1);
9079
- var _a14$1;
9080
- var _b14;
9081
- var TypeValidationError = class _TypeValidationError extends (_b14 = AISDKError, _a14$1 = symbol14$1, _b14) {
9813
+ var name14$1 = "AI_TypeValidationError";
9814
+ var marker15$1 = `vercel.ai.error.${name14$1}`;
9815
+ var symbol15$1 = Symbol.for(marker15$1);
9816
+ var _a15$1;
9817
+ var _b15$1;
9818
+ var TypeValidationError = class _TypeValidationError extends (_b15$1 = AISDKError, _a15$1 = symbol15$1, _b15$1) {
9082
9819
  constructor({ value, cause, context }) {
9083
9820
  let contextPrefix = "Type validation failed";
9084
9821
  if (context == null ? void 0 : context.field) contextPrefix += ` for ${context.field}`;
@@ -9091,17 +9828,17 @@ var TypeValidationError = class _TypeValidationError extends (_b14 = AISDKError,
9091
9828
  contextPrefix += ")";
9092
9829
  }
9093
9830
  super({
9094
- name: name13$1,
9831
+ name: name14$1,
9095
9832
  message: `${contextPrefix}: Value: ${JSON.stringify(value)}.
9096
9833
  Error message: ${getErrorMessage(cause)}`,
9097
9834
  cause
9098
9835
  });
9099
- this[_a14$1] = true;
9836
+ this[_a15$1] = true;
9100
9837
  this.value = value;
9101
9838
  this.context = context;
9102
9839
  }
9103
9840
  static isInstance(error) {
9104
- return AISDKError.hasMarker(error, marker14$1);
9841
+ return AISDKError.hasMarker(error, marker15$1);
9105
9842
  }
9106
9843
  /**
9107
9844
  * Wraps an error into a TypeValidationError.
@@ -9115,8 +9852,8 @@ Error message: ${getErrorMessage(cause)}`,
9115
9852
  * @returns {TypeValidationError} A TypeValidationError instance.
9116
9853
  */
9117
9854
  static wrap({ value, cause, context }) {
9118
- var _a16, _b16, _c;
9119
- if (_TypeValidationError.isInstance(cause) && cause.value === value && ((_a16 = cause.context) == null ? void 0 : _a16.field) === (context == null ? void 0 : context.field) && ((_b16 = cause.context) == null ? void 0 : _b16.entityName) === (context == null ? void 0 : context.entityName) && ((_c = cause.context) == null ? void 0 : _c.entityId) === (context == null ? void 0 : context.entityId)) return cause;
9855
+ var _a17, _b17, _c;
9856
+ if (_TypeValidationError.isInstance(cause) && cause.value === value && ((_a17 = cause.context) == null ? void 0 : _a17.field) === (context == null ? void 0 : context.field) && ((_b17 = cause.context) == null ? void 0 : _b17.entityName) === (context == null ? void 0 : context.entityName) && ((_c = cause.context) == null ? void 0 : _c.entityId) === (context == null ? void 0 : context.entityId)) return cause;
9120
9857
  return new _TypeValidationError({
9121
9858
  value,
9122
9859
  cause,
@@ -9124,33 +9861,33 @@ Error message: ${getErrorMessage(cause)}`,
9124
9861
  });
9125
9862
  }
9126
9863
  };
9127
- var name14$1 = "AI_UnsupportedFunctionalityError";
9128
- var marker15$1 = `vercel.ai.error.${name14$1}`;
9129
- var symbol15$1 = Symbol.for(marker15$1);
9130
- var _a15$1;
9131
- var _b15;
9132
- (class extends (_b15 = AISDKError, _a15$1 = symbol15$1, _b15) {
9864
+ var name15$1 = "AI_UnsupportedFunctionalityError";
9865
+ var marker16$1 = `vercel.ai.error.${name15$1}`;
9866
+ var symbol16$1 = Symbol.for(marker16$1);
9867
+ var _a16$1;
9868
+ var _b16$1;
9869
+ (class extends (_b16$1 = AISDKError, _a16$1 = symbol16$1, _b16$1) {
9133
9870
  constructor({ functionality, message = `'${functionality}' functionality not supported.` }) {
9134
9871
  super({
9135
- name: name14$1,
9872
+ name: name15$1,
9136
9873
  message
9137
9874
  });
9138
- this[_a15$1] = true;
9875
+ this[_a16$1] = true;
9139
9876
  this.functionality = functionality;
9140
9877
  }
9141
9878
  static isInstance(error) {
9142
- return AISDKError.hasMarker(error, marker15$1);
9879
+ return AISDKError.hasMarker(error, marker16$1);
9143
9880
  }
9144
9881
  });
9145
9882
  TransformStream;
9146
9883
  new TextDecoder();
9147
9884
  var { btoa: btoa$1, atob: atob$1 } = globalThis;
9148
9885
  var name$2 = "AI_DownloadError";
9149
- var marker$2 = `vercel.ai.error.${name$2}`;
9150
- var symbol$2 = Symbol.for(marker$2);
9886
+ var marker2$2 = `vercel.ai.error.${name$2}`;
9887
+ var symbol$2 = Symbol.for(marker2$2);
9151
9888
  var _a$2;
9152
- var _b;
9153
- (class extends (_b = AISDKError, _a$2 = symbol$2, _b) {
9889
+ var _b$2;
9890
+ (class extends (_b$2 = AISDKError, _a$2 = symbol$2, _b$2) {
9154
9891
  constructor({ url, statusCode, statusText, cause, message = cause == null ? `Failed to download ${url}: ${statusCode} ${statusText}` : `Failed to download ${url}: ${cause}` }) {
9155
9892
  super({
9156
9893
  name: name$2,
@@ -9163,15 +9900,9 @@ var _b;
9163
9900
  this.statusText = statusText;
9164
9901
  }
9165
9902
  static isInstance(error) {
9166
- return AISDKError.hasMarker(error, marker$2);
9903
+ return AISDKError.hasMarker(error, marker2$2);
9167
9904
  }
9168
9905
  });
9169
- var initialGlobalFetch = globalThis.fetch;
9170
- isNodeDefaultFetch(initialGlobalFetch);
9171
- function isNodeDefaultFetch(fetch) {
9172
- const source = Function.prototype.toString.call(fetch);
9173
- return source.includes("internal/deps/undici") || source.includes("lazy loading of undici");
9174
- }
9175
9906
  function getCurrentModulePath() {
9176
9907
  const originalPrepareStackTrace = Error.prepareStackTrace;
9177
9908
  try {
@@ -9194,7 +9925,7 @@ var createIdGenerator = ({ prefix, size = 16, alphabet = "0123456789ABCDEFGHIJKL
9194
9925
  return chars.join("");
9195
9926
  };
9196
9927
  if (prefix == null) return generator;
9197
- if (alphabet.includes(separator)) throw new InvalidArgumentError({
9928
+ if (alphabet.includes(separator)) throw new InvalidArgumentError$1({
9198
9929
  argument: "separator",
9199
9930
  message: `The separator "${separator}" must not be part of the alphabet "${alphabet}".`
9200
9931
  });
@@ -9244,7 +9975,8 @@ function secureJsonParse(text) {
9244
9975
  }
9245
9976
  function addAdditionalPropertiesToJsonSchema(jsonSchema2) {
9246
9977
  if (jsonSchema2.type === "object" || Array.isArray(jsonSchema2.type) && jsonSchema2.type.includes("object")) {
9247
- jsonSchema2.additionalProperties = false;
9978
+ const { additionalProperties } = jsonSchema2;
9979
+ jsonSchema2.additionalProperties = additionalProperties != null && typeof additionalProperties !== "boolean" ? visit(additionalProperties) : false;
9248
9980
  const { properties } = jsonSchema2;
9249
9981
  if (properties != null) for (const key of Object.keys(properties)) properties[key] = visit(properties[key]);
9250
9982
  }
@@ -10205,12 +10937,12 @@ function zod3Schema(zodSchema2, options) {
10205
10937
  function zod4Schema(zodSchema2, options) {
10206
10938
  var _a3;
10207
10939
  const useReferences = (_a3 = options == null ? void 0 : options.useReferences) != null ? _a3 : false;
10208
- return jsonSchema(() => addAdditionalPropertiesToJsonSchema(z4.toJSONSchema(zodSchema2, {
10940
+ return jsonSchema(() => addAdditionalPropertiesToJsonSchema(toJSONSchema(zodSchema2, {
10209
10941
  target: "draft-7",
10210
10942
  io: "input",
10211
10943
  reused: useReferences ? "ref" : "inline"
10212
10944
  })), { validate: async (value) => {
10213
- const result = await z4.safeParseAsync(zodSchema2, value);
10945
+ const result = await safeParseAsync(zodSchema2, value);
10214
10946
  return result.success ? {
10215
10947
  success: true,
10216
10948
  value: result.data
@@ -10304,73 +11036,542 @@ async function resolve(value) {
10304
11036
  }
10305
11037
  new TextDecoder();
10306
11038
  var name2$2 = "AI_SerializationError";
10307
- var marker2$2 = `vercel.ai.error.${name2$2}`;
10308
- var symbol2$2 = Symbol.for(marker2$2);
11039
+ var marker3$2 = `vercel.ai.error.${name2$2}`;
11040
+ var symbol2$2 = Symbol.for(marker3$2);
10309
11041
  var _a2$2;
10310
- var _b2;
10311
- (class extends (_b2 = AISDKError, _a2$2 = symbol2$2, _b2) {
11042
+ var _b2$2;
11043
+ (class extends (_b2$2 = AISDKError, _a2$2 = symbol2$2, _b2$2) {
10312
11044
  constructor({ message = "Failed to serialize value.", cause } = {}) {
10313
11045
  super({
10314
11046
  name: name2$2,
10315
11047
  message,
10316
11048
  cause
10317
11049
  });
10318
- this[_a2$2] = true;
11050
+ this[_a2$2] = true;
11051
+ }
11052
+ static isInstance(error) {
11053
+ return AISDKError.hasMarker(error, marker3$2);
11054
+ }
11055
+ });
11056
+ //#endregion
11057
+ //#region ../../packages/_vendored/ai_v7/dist/index.js
11058
+ var __defProp = Object.defineProperty;
11059
+ var __export = (target, all) => {
11060
+ for (var name25 in all) __defProp(target, name25, {
11061
+ get: all[name25],
11062
+ enumerable: true
11063
+ });
11064
+ };
11065
+ var name = "AI_InvalidArgumentError";
11066
+ var marker = `vercel.ai.error.${name}`;
11067
+ var symbol = Symbol.for(marker);
11068
+ var _a;
11069
+ var _b;
11070
+ var InvalidArgumentError = class extends (_b = AISDKError, _a = symbol, _b) {
11071
+ constructor({ parameter, value, message }) {
11072
+ super({
11073
+ name,
11074
+ message: `Invalid argument for parameter ${parameter}: ${message}`
11075
+ });
11076
+ this[_a] = true;
11077
+ this.parameter = parameter;
11078
+ this.value = value;
11079
+ }
11080
+ static isInstance(error) {
11081
+ return AISDKError.hasMarker(error, marker);
11082
+ }
11083
+ };
11084
+ var name2 = "AI_InvalidStreamPartError";
11085
+ var marker2 = `vercel.ai.error.${name2}`;
11086
+ var symbol2 = Symbol.for(marker2);
11087
+ var _a2;
11088
+ var _b2;
11089
+ (class extends (_b2 = AISDKError, _a2 = symbol2, _b2) {
11090
+ constructor({ chunk, message }) {
11091
+ super({
11092
+ name: name2,
11093
+ message
11094
+ });
11095
+ this[_a2] = true;
11096
+ this.chunk = chunk;
11097
+ }
11098
+ static isInstance(error) {
11099
+ return AISDKError.hasMarker(error, marker2);
11100
+ }
11101
+ });
11102
+ var name3 = "AI_InvalidToolApprovalError";
11103
+ var marker3 = `vercel.ai.error.${name3}`;
11104
+ var symbol3 = Symbol.for(marker3);
11105
+ var _a3;
11106
+ var _b3;
11107
+ (class extends (_b3 = AISDKError, _a3 = symbol3, _b3) {
11108
+ constructor({ approvalId }) {
11109
+ super({
11110
+ name: name3,
11111
+ message: `Tool approval response references unknown approvalId: "${approvalId}". No matching tool-approval-request found in message history.`
11112
+ });
11113
+ this[_a3] = true;
11114
+ this.approvalId = approvalId;
11115
+ }
11116
+ static isInstance(error) {
11117
+ return AISDKError.hasMarker(error, marker3);
11118
+ }
11119
+ });
11120
+ var name4 = "AI_InvalidToolApprovalSignatureError";
11121
+ var marker4 = `vercel.ai.error.${name4}`;
11122
+ var symbol4 = Symbol.for(marker4);
11123
+ var _a4;
11124
+ var _b4;
11125
+ (class extends (_b4 = AISDKError, _a4 = symbol4, _b4) {
11126
+ constructor({ approvalId, toolCallId, reason }) {
11127
+ super({
11128
+ name: name4,
11129
+ message: `Tool approval signature verification failed for approval "${approvalId}" (tool call "${toolCallId}"): ${reason}`
11130
+ });
11131
+ this[_a4] = true;
11132
+ this.approvalId = approvalId;
11133
+ this.toolCallId = toolCallId;
11134
+ }
11135
+ static isInstance(error) {
11136
+ return AISDKError.hasMarker(error, marker4);
11137
+ }
11138
+ });
11139
+ var name5 = "AI_InvalidToolInputError";
11140
+ var marker5 = `vercel.ai.error.${name5}`;
11141
+ var symbol5 = Symbol.for(marker5);
11142
+ var _a5;
11143
+ var _b5;
11144
+ (class extends (_b5 = AISDKError, _a5 = symbol5, _b5) {
11145
+ constructor({ toolInput, toolName, cause, message = `Invalid input for tool ${toolName}: ${getErrorMessage(cause)}` }) {
11146
+ super({
11147
+ name: name5,
11148
+ message,
11149
+ cause
11150
+ });
11151
+ this[_a5] = true;
11152
+ this.toolInput = toolInput;
11153
+ this.toolName = toolName;
11154
+ }
11155
+ static isInstance(error) {
11156
+ return AISDKError.hasMarker(error, marker5);
11157
+ }
11158
+ });
11159
+ var name6 = "AI_ToolCallNotFoundForApprovalError";
11160
+ var marker6 = `vercel.ai.error.${name6}`;
11161
+ var symbol6 = Symbol.for(marker6);
11162
+ var _a6;
11163
+ var _b6;
11164
+ (class extends (_b6 = AISDKError, _a6 = symbol6, _b6) {
11165
+ constructor({ toolCallId, approvalId }) {
11166
+ super({
11167
+ name: name6,
11168
+ message: `Tool call "${toolCallId}" not found for approval request "${approvalId}".`
11169
+ });
11170
+ this[_a6] = true;
11171
+ this.toolCallId = toolCallId;
11172
+ this.approvalId = approvalId;
11173
+ }
11174
+ static isInstance(error) {
11175
+ return AISDKError.hasMarker(error, marker6);
11176
+ }
11177
+ });
11178
+ var name7 = "AI_MissingToolResultsError";
11179
+ var marker7 = `vercel.ai.error.${name7}`;
11180
+ var symbol7 = Symbol.for(marker7);
11181
+ var _a7;
11182
+ var _b7;
11183
+ (class extends (_b7 = AISDKError, _a7 = symbol7, _b7) {
11184
+ constructor({ toolCallIds }) {
11185
+ super({
11186
+ name: name7,
11187
+ message: `Tool result${toolCallIds.length > 1 ? "s are" : " is"} missing for tool call${toolCallIds.length > 1 ? "s" : ""} ${toolCallIds.join(", ")}.`
11188
+ });
11189
+ this[_a7] = true;
11190
+ this.toolCallIds = toolCallIds;
11191
+ }
11192
+ static isInstance(error) {
11193
+ return AISDKError.hasMarker(error, marker7);
11194
+ }
11195
+ });
11196
+ var name8 = "AI_NoImageGeneratedError";
11197
+ var marker8 = `vercel.ai.error.${name8}`;
11198
+ var symbol8 = Symbol.for(marker8);
11199
+ var _a8;
11200
+ var _b8;
11201
+ (class extends (_b8 = AISDKError, _a8 = symbol8, _b8) {
11202
+ constructor({ message = "No image generated.", cause, calls, responses }) {
11203
+ super({
11204
+ name: name8,
11205
+ message,
11206
+ cause
11207
+ });
11208
+ this[_a8] = true;
11209
+ this.calls = calls;
11210
+ this.responses = responses;
11211
+ }
11212
+ static isInstance(error) {
11213
+ return AISDKError.hasMarker(error, marker8);
11214
+ }
11215
+ });
11216
+ var name9 = "AI_NoObjectGeneratedError";
11217
+ var marker9 = `vercel.ai.error.${name9}`;
11218
+ var symbol9 = Symbol.for(marker9);
11219
+ var _a9;
11220
+ var _b9;
11221
+ var NoObjectGeneratedError = class extends (_b9 = AISDKError, _a9 = symbol9, _b9) {
11222
+ constructor({ message = "No object generated.", cause, text: text2, response, usage, finishReason }) {
11223
+ super({
11224
+ name: name9,
11225
+ message,
11226
+ cause
11227
+ });
11228
+ this[_a9] = true;
11229
+ this.text = text2;
11230
+ this.response = response;
11231
+ this.usage = usage;
11232
+ this.finishReason = finishReason;
11233
+ }
11234
+ static isInstance(error) {
11235
+ return AISDKError.hasMarker(error, marker9);
11236
+ }
11237
+ };
11238
+ var name10 = "AI_NoOutputGeneratedError";
11239
+ var marker10 = `vercel.ai.error.${name10}`;
11240
+ var symbol10 = Symbol.for(marker10);
11241
+ var _a10;
11242
+ var _b10;
11243
+ (class extends (_b10 = AISDKError, _a10 = symbol10, _b10) {
11244
+ constructor({ message = "No output generated.", cause } = {}) {
11245
+ super({
11246
+ name: name10,
11247
+ message,
11248
+ cause
11249
+ });
11250
+ this[_a10] = true;
11251
+ }
11252
+ static isInstance(error) {
11253
+ return AISDKError.hasMarker(error, marker10);
11254
+ }
11255
+ });
11256
+ var name11 = "AI_NoSpeechGeneratedError";
11257
+ var marker11 = `vercel.ai.error.${name11}`;
11258
+ var symbol11 = Symbol.for(marker11);
11259
+ var _a11;
11260
+ var _b11;
11261
+ (class extends (_b11 = AISDKError, _a11 = symbol11, _b11) {
11262
+ constructor(options) {
11263
+ super({
11264
+ name: name11,
11265
+ message: "No speech audio generated."
11266
+ });
11267
+ this[_a11] = true;
11268
+ this.responses = options.responses;
11269
+ }
11270
+ static isInstance(error) {
11271
+ return AISDKError.hasMarker(error, marker11);
11272
+ }
11273
+ });
11274
+ var name12 = "AI_NoTranscriptGeneratedError";
11275
+ var marker12 = `vercel.ai.error.${name12}`;
11276
+ var symbol12 = Symbol.for(marker12);
11277
+ var _a12;
11278
+ var _b12;
11279
+ (class extends (_b12 = AISDKError, _a12 = symbol12, _b12) {
11280
+ constructor(options) {
11281
+ super({
11282
+ name: name12,
11283
+ message: "No transcript generated."
11284
+ });
11285
+ this[_a12] = true;
11286
+ this.responses = options.responses;
11287
+ }
11288
+ static isInstance(error) {
11289
+ return AISDKError.hasMarker(error, marker12);
11290
+ }
11291
+ });
11292
+ var name13 = "AI_NoTranslationGeneratedError";
11293
+ var marker13 = `vercel.ai.error.${name13}`;
11294
+ var symbol13 = Symbol.for(marker13);
11295
+ var _a13;
11296
+ var _b13;
11297
+ (class extends (_b13 = AISDKError, _a13 = symbol13, _b13) {
11298
+ constructor(options) {
11299
+ super({
11300
+ name: name13,
11301
+ message: "No translation generated."
11302
+ });
11303
+ this[_a13] = true;
11304
+ this.response = options.response;
11305
+ }
11306
+ static isInstance(error) {
11307
+ return AISDKError.hasMarker(error, marker13);
11308
+ }
11309
+ });
11310
+ var name14 = "AI_NoVideoGeneratedError";
11311
+ var marker14 = `vercel.ai.error.${name14}`;
11312
+ var symbol14 = Symbol.for(marker14);
11313
+ var _a14;
11314
+ var _b14;
11315
+ (class extends (_b14 = AISDKError, _a14 = symbol14, _b14) {
11316
+ constructor({ message = "No video generated.", cause, responses }) {
11317
+ super({
11318
+ name: name14,
11319
+ message,
11320
+ cause
11321
+ });
11322
+ this[_a14] = true;
11323
+ this.responses = responses;
11324
+ }
11325
+ static isInstance(error) {
11326
+ return AISDKError.hasMarker(error, marker14);
11327
+ }
11328
+ /**
11329
+ * @deprecated use `isInstance` instead
11330
+ */
11331
+ static isNoVideoGeneratedError(error) {
11332
+ return error instanceof Error && error.name === name14 && typeof error.responses !== "undefined" ? true : false;
11333
+ }
11334
+ /**
11335
+ * @deprecated Do not use this method. It will be removed in the next major version.
11336
+ */
11337
+ toJSON() {
11338
+ return {
11339
+ name: this.name,
11340
+ message: this.message,
11341
+ stack: this.stack,
11342
+ cause: this.cause,
11343
+ responses: this.responses
11344
+ };
11345
+ }
11346
+ });
11347
+ var name15 = "AI_NoSuchToolError";
11348
+ var marker15 = `vercel.ai.error.${name15}`;
11349
+ var symbol15 = Symbol.for(marker15);
11350
+ var _a15;
11351
+ var _b15;
11352
+ (class extends (_b15 = AISDKError, _a15 = symbol15, _b15) {
11353
+ constructor({ toolName, availableTools = void 0, message = `Model tried to call unavailable tool '${toolName}'. ${availableTools === void 0 ? "No tools are available." : `Available tools: ${availableTools.join(", ")}.`}` }) {
11354
+ super({
11355
+ name: name15,
11356
+ message
11357
+ });
11358
+ this[_a15] = true;
11359
+ this.toolName = toolName;
11360
+ this.availableTools = availableTools;
11361
+ }
11362
+ static isInstance(error) {
11363
+ return AISDKError.hasMarker(error, marker15);
11364
+ }
11365
+ });
11366
+ var name16 = "AI_StreamProviderError";
11367
+ var marker16 = `vercel.ai.error.${name16}`;
11368
+ var symbol16 = Symbol.for(marker16);
11369
+ var _a16;
11370
+ var _b16;
11371
+ (class extends (_b16 = AISDKError, _a16 = symbol16, _b16) {
11372
+ constructor({ message, type, code, statusCode, isRetryable = isRetryableStatusCode(statusCode), data, cause }) {
11373
+ super({
11374
+ name: name16,
11375
+ message,
11376
+ cause
11377
+ });
11378
+ this[_a16] = true;
11379
+ this.type = type;
11380
+ this.code = code;
11381
+ this.statusCode = statusCode;
11382
+ this.isRetryable = isRetryable;
11383
+ this.data = data;
11384
+ }
11385
+ static isInstance(error) {
11386
+ return AISDKError.hasMarker(error, marker16);
11387
+ }
11388
+ });
11389
+ function isRetryableStatusCode(statusCode) {
11390
+ return statusCode != null && (statusCode === 408 || statusCode === 409 || statusCode === 429 || statusCode >= 500);
11391
+ }
11392
+ var name17 = "AI_ToolCallRepairError";
11393
+ var marker17 = `vercel.ai.error.${name17}`;
11394
+ var symbol17 = Symbol.for(marker17);
11395
+ var _a17;
11396
+ var _b17;
11397
+ (class extends (_b17 = AISDKError, _a17 = symbol17, _b17) {
11398
+ constructor({ cause, originalError, message = `Error repairing tool call: ${getErrorMessage(cause)}` }) {
11399
+ super({
11400
+ name: name17,
11401
+ message,
11402
+ cause
11403
+ });
11404
+ this[_a17] = true;
11405
+ this.originalError = originalError;
11406
+ }
11407
+ static isInstance(error) {
11408
+ return AISDKError.hasMarker(error, marker17);
11409
+ }
11410
+ });
11411
+ var name18 = "AI_ToolChoiceViolationError";
11412
+ var marker18 = `vercel.ai.error.${name18}`;
11413
+ var symbol18 = Symbol.for(marker18);
11414
+ var _a18;
11415
+ var _b18;
11416
+ (class extends (_b18 = AISDKError, _a18 = symbol18, _b18) {
11417
+ constructor({ toolChoice, finishReason, provider, modelId, content, message = toolChoice.type === "required" ? "Model response did not contain a tool call even though tool choice was required." : `Model response did not contain a call to the required tool '${toolChoice.toolName}'.` }) {
11418
+ super({
11419
+ name: name18,
11420
+ message
11421
+ });
11422
+ this[_a18] = true;
11423
+ this.toolChoice = toolChoice;
11424
+ this.finishReason = finishReason;
11425
+ this.provider = provider;
11426
+ this.modelId = modelId;
11427
+ this.content = content;
11428
+ }
11429
+ static isInstance(error) {
11430
+ return AISDKError.hasMarker(error, marker18);
11431
+ }
11432
+ });
11433
+ var name19 = "AI_UIMessageStreamError";
11434
+ var marker19 = `vercel.ai.error.${name19}`;
11435
+ var symbol19 = Symbol.for(marker19);
11436
+ var _a19;
11437
+ var _b19;
11438
+ var UIMessageStreamError = class extends (_b19 = AISDKError, _a19 = symbol19, _b19) {
11439
+ constructor({ chunkType, chunkId, message }) {
11440
+ super({
11441
+ name: name19,
11442
+ message
11443
+ });
11444
+ this[_a19] = true;
11445
+ this.chunkType = chunkType;
11446
+ this.chunkId = chunkId;
11447
+ }
11448
+ static isInstance(error) {
11449
+ return AISDKError.hasMarker(error, marker19);
11450
+ }
11451
+ };
11452
+ var name20 = "AI_InvalidDataContentError";
11453
+ var marker20 = `vercel.ai.error.${name20}`;
11454
+ var symbol20 = Symbol.for(marker20);
11455
+ var _a20;
11456
+ var _b20;
11457
+ (class extends (_b20 = AISDKError, _a20 = symbol20, _b20) {
11458
+ constructor({ content, cause, message = `Invalid data content. Expected a base64 string, Uint8Array, ArrayBuffer, or Buffer, but got ${typeof content}.` }) {
11459
+ super({
11460
+ name: name20,
11461
+ message,
11462
+ cause
11463
+ });
11464
+ this[_a20] = true;
11465
+ this.content = content;
11466
+ }
11467
+ static isInstance(error) {
11468
+ return AISDKError.hasMarker(error, marker20);
11469
+ }
11470
+ });
11471
+ var name21 = "AI_InvalidMessageRoleError";
11472
+ var marker21 = `vercel.ai.error.${name21}`;
11473
+ var symbol21 = Symbol.for(marker21);
11474
+ var _a21;
11475
+ var _b21;
11476
+ (class extends (_b21 = AISDKError, _a21 = symbol21, _b21) {
11477
+ constructor({ role, message = `Invalid message role: '${role}'. Must be one of: "system", "user", "assistant", "tool".` }) {
11478
+ super({
11479
+ name: name21,
11480
+ message
11481
+ });
11482
+ this[_a21] = true;
11483
+ this.role = role;
10319
11484
  }
10320
11485
  static isInstance(error) {
10321
- return AISDKError.hasMarker(error, marker2$2);
11486
+ return AISDKError.hasMarker(error, marker21);
10322
11487
  }
10323
11488
  });
10324
- //#endregion
10325
- //#region ../../packages/_vendored/ai_v7/dist/index.js
10326
- var __defProp = Object.defineProperty;
10327
- var __export = (target, all) => {
10328
- for (var name23 in all) __defProp(target, name23, {
10329
- get: all[name23],
10330
- enumerable: true
10331
- });
10332
- };
10333
- var name9 = "AI_NoObjectGeneratedError";
10334
- var marker9 = `vercel.ai.error.${name9}`;
10335
- var symbol9 = Symbol.for(marker9);
10336
- var _a9;
10337
- var NoObjectGeneratedError = class extends AISDKError {
10338
- constructor({ message = "No object generated.", cause, text: text2, response, usage, finishReason }) {
11489
+ var name22 = "AI_MessageConversionError";
11490
+ var marker22 = `vercel.ai.error.${name22}`;
11491
+ var symbol22 = Symbol.for(marker22);
11492
+ var _a22;
11493
+ var _b22;
11494
+ (class extends (_b22 = AISDKError, _a22 = symbol22, _b22) {
11495
+ constructor({ originalMessage, message }) {
10339
11496
  super({
10340
- name: name9,
10341
- message,
10342
- cause
11497
+ name: name22,
11498
+ message
10343
11499
  });
10344
- this[_a9] = true;
10345
- this.text = text2;
10346
- this.response = response;
10347
- this.usage = usage;
10348
- this.finishReason = finishReason;
11500
+ this[_a22] = true;
11501
+ this.originalMessage = originalMessage;
10349
11502
  }
10350
11503
  static isInstance(error) {
10351
- return AISDKError.hasMarker(error, marker9);
11504
+ return AISDKError.hasMarker(error, marker22);
10352
11505
  }
10353
- };
10354
- _a9 = symbol9;
10355
- var name17 = "AI_UIMessageStreamError";
10356
- var marker17 = `vercel.ai.error.${name17}`;
10357
- var symbol17 = Symbol.for(marker17);
10358
- var _a17;
10359
- var UIMessageStreamError = class extends AISDKError {
10360
- constructor({ chunkType, chunkId, message }) {
11506
+ });
11507
+ var name23 = "AI_RetryError";
11508
+ var marker23 = `vercel.ai.error.${name23}`;
11509
+ var symbol23 = Symbol.for(marker23);
11510
+ var _a23;
11511
+ var _b23;
11512
+ (class extends (_b23 = AISDKError, _a23 = symbol23, _b23) {
11513
+ constructor({ message, reason, errors }) {
10361
11514
  super({
10362
- name: name17,
11515
+ name: name23,
10363
11516
  message
10364
11517
  });
10365
- this[_a17] = true;
10366
- this.chunkType = chunkType;
10367
- this.chunkId = chunkId;
11518
+ this[_a23] = true;
11519
+ this.reason = reason;
11520
+ this.errors = errors;
11521
+ this.lastError = errors[errors.length - 1];
10368
11522
  }
10369
11523
  static isInstance(error) {
10370
- return AISDKError.hasMarker(error, marker17);
11524
+ return AISDKError.hasMarker(error, marker23);
11525
+ }
11526
+ });
11527
+ function formatWarning({ warning, provider, model }) {
11528
+ const prefix = `AI SDK Warning${provider != null && model != null ? ` (${provider} / ${model})` : ""}:`;
11529
+ switch (warning.type) {
11530
+ case "unsupported": {
11531
+ let message = `${prefix} The feature "${warning.feature}" is not supported.`;
11532
+ if (warning.details) message += ` ${warning.details}`;
11533
+ return message;
11534
+ }
11535
+ case "compatibility": {
11536
+ let message = `${prefix} The feature "${warning.feature}" is used in a compatibility mode.`;
11537
+ if (warning.details) message += ` ${warning.details}`;
11538
+ return message;
11539
+ }
11540
+ case "deprecated": return `${prefix} Deprecated: "${warning.setting}". ${warning.message}`;
11541
+ case "other": return `${prefix} ${warning.message}`;
11542
+ default: return `${prefix} ${JSON.stringify(warning, null, 2)}`;
11543
+ }
11544
+ }
11545
+ var FIRST_WARNING_INFO_MESSAGE = "AI SDK Warning System: To turn off warning logging, set the AI_SDK_LOG_WARNINGS global to false.";
11546
+ var hasLoggedBefore = false;
11547
+ function emitWarning({ message, type }) {
11548
+ if (typeof process !== "undefined" && typeof process.emitWarning === "function") process.emitWarning(message, { type });
11549
+ else console.warn(message);
11550
+ }
11551
+ var logWarnings = (options) => {
11552
+ if (options.warnings.length === 0) return;
11553
+ const logger = globalThis.AI_SDK_LOG_WARNINGS;
11554
+ if (logger === false) return;
11555
+ if (typeof logger === "function") {
11556
+ logger(options);
11557
+ return;
11558
+ }
11559
+ if (!hasLoggedBefore) {
11560
+ hasLoggedBefore = true;
11561
+ emitWarning({
11562
+ message: FIRST_WARNING_INFO_MESSAGE,
11563
+ type: "Warning"
11564
+ });
10371
11565
  }
11566
+ for (const warning of options.warnings) emitWarning({
11567
+ message: formatWarning({
11568
+ warning,
11569
+ provider: options.provider,
11570
+ model: options.model
11571
+ }),
11572
+ type: warning.type === "deprecated" ? "DeprecationWarning" : "Warning"
11573
+ });
10372
11574
  };
10373
- _a17 = symbol17;
10374
11575
  function mergeObjects(base, overrides) {
10375
11576
  if (base === void 0 && overrides === void 0) return;
10376
11577
  if (base === void 0) return overrides;
@@ -10390,229 +11591,249 @@ function mergeObjects(base, overrides) {
10390
11591
  }
10391
11592
  return result;
10392
11593
  }
10393
- var jsonValueSchema = z.lazy(() => z.union([
10394
- z.null(),
10395
- z.string(),
10396
- z.number(),
10397
- z.boolean(),
10398
- z.record(z.string(), jsonValueSchema.optional()),
10399
- z.array(jsonValueSchema)
11594
+ var z$2 = {
11595
+ array,
11596
+ boolean,
11597
+ custom,
11598
+ discriminatedUnion,
11599
+ enum: enum$1,
11600
+ instanceof: instanceof$1,
11601
+ lazy,
11602
+ literal,
11603
+ looseObject,
11604
+ never,
11605
+ null: null$1,
11606
+ number,
11607
+ object,
11608
+ record,
11609
+ string,
11610
+ union,
11611
+ unknown
11612
+ };
11613
+ var jsonValueSchema = z$2.lazy(() => z$2.union([
11614
+ z$2.null(),
11615
+ z$2.string(),
11616
+ z$2.number(),
11617
+ z$2.boolean(),
11618
+ z$2.record(z$2.string(), jsonValueSchema.optional()),
11619
+ z$2.array(jsonValueSchema)
10400
11620
  ]));
10401
- var providerMetadataSchema = z.record(z.string(), z.record(z.string(), jsonValueSchema.optional()));
10402
- var fileInlineDataSchema = z.union([
10403
- z.string(),
10404
- z.instanceof(Uint8Array),
10405
- z.instanceof(ArrayBuffer),
10406
- z.custom(isBuffer, { message: "Must be a Buffer" })
11621
+ var providerMetadataSchema = z$2.record(z$2.string(), z$2.record(z$2.string(), jsonValueSchema.optional()));
11622
+ var fileInlineDataSchema = z$2.union([
11623
+ z$2.string(),
11624
+ z$2.instanceof(Uint8Array),
11625
+ z$2.instanceof(ArrayBuffer),
11626
+ z$2.custom(isBuffer, { message: "Must be a Buffer" })
10407
11627
  ]);
10408
- var providerReferenceSchema = z.record(z.string(), z.string());
10409
- var textPartSchema = z.object({
10410
- type: z.literal("text"),
10411
- text: z.string(),
11628
+ var providerReferenceSchema = z$2.record(z$2.string(), z$2.string());
11629
+ var textPartSchema = z$2.object({
11630
+ type: z$2.literal("text"),
11631
+ text: z$2.string(),
10412
11632
  providerOptions: providerMetadataSchema.optional()
10413
11633
  });
10414
- var imagePartSchema = z.object({
10415
- type: z.literal("image"),
10416
- image: z.union([
11634
+ var imagePartSchema = z$2.object({
11635
+ type: z$2.literal("image"),
11636
+ image: z$2.union([
10417
11637
  fileInlineDataSchema,
10418
- z.instanceof(URL),
11638
+ z$2.instanceof(URL),
10419
11639
  providerReferenceSchema
10420
11640
  ]),
10421
- mediaType: z.string().optional(),
11641
+ mediaType: z$2.string().optional(),
10422
11642
  providerOptions: providerMetadataSchema.optional()
10423
11643
  });
10424
- var taggedFileDataSchema = z.discriminatedUnion("type", [
10425
- z.object({
10426
- type: z.literal("data"),
11644
+ var taggedFileDataSchema = z$2.discriminatedUnion("type", [
11645
+ z$2.object({
11646
+ type: z$2.literal("data"),
10427
11647
  data: fileInlineDataSchema
10428
11648
  }),
10429
- z.object({
10430
- type: z.literal("url"),
10431
- url: z.instanceof(URL)
11649
+ z$2.object({
11650
+ type: z$2.literal("url"),
11651
+ url: z$2.instanceof(URL)
10432
11652
  }),
10433
- z.object({
10434
- type: z.literal("reference"),
11653
+ z$2.object({
11654
+ type: z$2.literal("reference"),
10435
11655
  reference: providerReferenceSchema
10436
11656
  }),
10437
- z.object({
10438
- type: z.literal("text"),
10439
- text: z.string()
11657
+ z$2.object({
11658
+ type: z$2.literal("text"),
11659
+ text: z$2.string()
10440
11660
  })
10441
11661
  ]);
10442
- var taggedReasoningFileDataSchema = z.discriminatedUnion("type", [z.object({
10443
- type: z.literal("data"),
11662
+ var taggedReasoningFileDataSchema = z$2.discriminatedUnion("type", [z$2.object({
11663
+ type: z$2.literal("data"),
10444
11664
  data: fileInlineDataSchema
10445
- }), z.object({
10446
- type: z.literal("url"),
10447
- url: z.instanceof(URL)
11665
+ }), z$2.object({
11666
+ type: z$2.literal("url"),
11667
+ url: z$2.instanceof(URL)
10448
11668
  })]);
10449
- var filePartSchema = z.object({
10450
- type: z.literal("file"),
10451
- data: z.union([
11669
+ var filePartSchema = z$2.object({
11670
+ type: z$2.literal("file"),
11671
+ data: z$2.union([
10452
11672
  taggedFileDataSchema,
10453
11673
  fileInlineDataSchema,
10454
- z.instanceof(URL),
11674
+ z$2.instanceof(URL),
10455
11675
  providerReferenceSchema
10456
11676
  ]),
10457
- filename: z.string().optional(),
10458
- mediaType: z.string(),
11677
+ filename: z$2.string().optional(),
11678
+ mediaType: z$2.string(),
10459
11679
  providerOptions: providerMetadataSchema.optional()
10460
11680
  });
10461
- var reasoningPartSchema = z.object({
10462
- type: z.literal("reasoning"),
10463
- text: z.string(),
11681
+ var reasoningPartSchema = z$2.object({
11682
+ type: z$2.literal("reasoning"),
11683
+ text: z$2.string(),
10464
11684
  providerOptions: providerMetadataSchema.optional()
10465
11685
  });
10466
- var customPartSchema = z.object({
10467
- type: z.literal("custom"),
10468
- kind: z.string().transform((value) => value),
11686
+ var customPartSchema = z$2.object({
11687
+ type: z$2.literal("custom"),
11688
+ kind: z$2.string().transform((value) => value),
10469
11689
  providerOptions: providerMetadataSchema.optional()
10470
11690
  });
10471
- var reasoningFilePartSchema = z.object({
10472
- type: z.literal("reasoning-file"),
10473
- data: z.union([
11691
+ var reasoningFilePartSchema = z$2.object({
11692
+ type: z$2.literal("reasoning-file"),
11693
+ data: z$2.union([
10474
11694
  taggedReasoningFileDataSchema,
10475
11695
  fileInlineDataSchema,
10476
- z.instanceof(URL)
11696
+ z$2.instanceof(URL)
10477
11697
  ]),
10478
- mediaType: z.string(),
11698
+ mediaType: z$2.string(),
10479
11699
  providerOptions: providerMetadataSchema.optional()
10480
11700
  });
10481
- var toolCallPartSchema = z.object({
10482
- type: z.literal("tool-call"),
10483
- toolCallId: z.string(),
10484
- toolName: z.string(),
10485
- input: z.unknown(),
11701
+ var toolCallPartSchema = z$2.object({
11702
+ type: z$2.literal("tool-call"),
11703
+ toolCallId: z$2.string(),
11704
+ toolName: z$2.string(),
11705
+ input: z$2.unknown(),
10486
11706
  providerOptions: providerMetadataSchema.optional(),
10487
- providerExecuted: z.boolean().optional()
11707
+ providerExecuted: z$2.boolean().optional()
10488
11708
  });
10489
- var outputSchema = z.discriminatedUnion("type", [
10490
- z.object({
10491
- type: z.literal("text"),
10492
- value: z.string(),
11709
+ var outputSchema = z$2.discriminatedUnion("type", [
11710
+ z$2.object({
11711
+ type: z$2.literal("text"),
11712
+ value: z$2.string(),
10493
11713
  providerOptions: providerMetadataSchema.optional()
10494
11714
  }),
10495
- z.object({
10496
- type: z.literal("json"),
11715
+ z$2.object({
11716
+ type: z$2.literal("json"),
10497
11717
  value: jsonValueSchema,
10498
11718
  providerOptions: providerMetadataSchema.optional()
10499
11719
  }),
10500
- z.object({
10501
- type: z.literal("execution-denied"),
10502
- reason: z.string().optional(),
11720
+ z$2.object({
11721
+ type: z$2.literal("execution-denied"),
11722
+ reason: z$2.string().optional(),
10503
11723
  providerOptions: providerMetadataSchema.optional()
10504
11724
  }),
10505
- z.object({
10506
- type: z.literal("error-text"),
10507
- value: z.string(),
11725
+ z$2.object({
11726
+ type: z$2.literal("error-text"),
11727
+ value: z$2.string(),
10508
11728
  providerOptions: providerMetadataSchema.optional()
10509
11729
  }),
10510
- z.object({
10511
- type: z.literal("error-json"),
11730
+ z$2.object({
11731
+ type: z$2.literal("error-json"),
10512
11732
  value: jsonValueSchema,
10513
11733
  providerOptions: providerMetadataSchema.optional()
10514
11734
  }),
10515
- z.object({
10516
- type: z.literal("content"),
10517
- value: z.array(z.union([
10518
- z.object({
10519
- type: z.literal("text"),
10520
- text: z.string(),
11735
+ z$2.object({
11736
+ type: z$2.literal("content"),
11737
+ value: z$2.array(z$2.union([
11738
+ z$2.object({
11739
+ type: z$2.literal("text"),
11740
+ text: z$2.string(),
10521
11741
  providerOptions: providerMetadataSchema.optional()
10522
11742
  }),
10523
- z.object({
10524
- type: z.literal("file"),
11743
+ z$2.object({
11744
+ type: z$2.literal("file"),
10525
11745
  data: taggedFileDataSchema,
10526
- mediaType: z.string(),
10527
- filename: z.string().optional(),
11746
+ mediaType: z$2.string(),
11747
+ filename: z$2.string().optional(),
10528
11748
  providerOptions: providerMetadataSchema.optional()
10529
11749
  }),
10530
- z.object({
10531
- type: z.literal("file-data"),
10532
- data: z.string(),
10533
- mediaType: z.string(),
10534
- filename: z.string().optional(),
11750
+ z$2.object({
11751
+ type: z$2.literal("file-data"),
11752
+ data: z$2.string(),
11753
+ mediaType: z$2.string(),
11754
+ filename: z$2.string().optional(),
10535
11755
  providerOptions: providerMetadataSchema.optional()
10536
11756
  }),
10537
- z.object({
10538
- type: z.literal("file-url"),
10539
- url: z.string(),
10540
- mediaType: z.string().optional(),
11757
+ z$2.object({
11758
+ type: z$2.literal("file-url"),
11759
+ url: z$2.string(),
11760
+ mediaType: z$2.string().optional(),
10541
11761
  providerOptions: providerMetadataSchema.optional()
10542
11762
  }),
10543
- z.object({
10544
- type: z.literal("file-id"),
10545
- fileId: z.union([z.string(), z.record(z.string(), z.string())]),
11763
+ z$2.object({
11764
+ type: z$2.literal("file-id"),
11765
+ fileId: z$2.union([z$2.string(), z$2.record(z$2.string(), z$2.string())]),
10546
11766
  providerOptions: providerMetadataSchema.optional()
10547
11767
  }),
10548
- z.object({
10549
- type: z.literal("file-reference"),
10550
- providerReference: z.record(z.string(), z.string()),
11768
+ z$2.object({
11769
+ type: z$2.literal("file-reference"),
11770
+ providerReference: z$2.record(z$2.string(), z$2.string()),
10551
11771
  providerOptions: providerMetadataSchema.optional()
10552
11772
  }),
10553
- z.object({
10554
- type: z.literal("image-data"),
10555
- data: z.string(),
10556
- mediaType: z.string(),
11773
+ z$2.object({
11774
+ type: z$2.literal("image-data"),
11775
+ data: z$2.string(),
11776
+ mediaType: z$2.string(),
10557
11777
  providerOptions: providerMetadataSchema.optional()
10558
11778
  }),
10559
- z.object({
10560
- type: z.literal("image-url"),
10561
- url: z.string(),
11779
+ z$2.object({
11780
+ type: z$2.literal("image-url"),
11781
+ url: z$2.string(),
10562
11782
  providerOptions: providerMetadataSchema.optional()
10563
11783
  }),
10564
- z.object({
10565
- type: z.literal("image-file-id"),
10566
- fileId: z.union([z.string(), z.record(z.string(), z.string())]),
11784
+ z$2.object({
11785
+ type: z$2.literal("image-file-id"),
11786
+ fileId: z$2.union([z$2.string(), z$2.record(z$2.string(), z$2.string())]),
10567
11787
  providerOptions: providerMetadataSchema.optional()
10568
11788
  }),
10569
- z.object({
10570
- type: z.literal("image-file-reference"),
10571
- providerReference: z.record(z.string(), z.string()),
11789
+ z$2.object({
11790
+ type: z$2.literal("image-file-reference"),
11791
+ providerReference: z$2.record(z$2.string(), z$2.string()),
10572
11792
  providerOptions: providerMetadataSchema.optional()
10573
11793
  }),
10574
- z.object({
10575
- type: z.literal("custom"),
11794
+ z$2.object({
11795
+ type: z$2.literal("custom"),
10576
11796
  providerOptions: providerMetadataSchema.optional()
10577
11797
  })
10578
11798
  ]))
10579
11799
  })
10580
11800
  ]);
10581
- var toolResultPartSchema = z.object({
10582
- type: z.literal("tool-result"),
10583
- toolCallId: z.string(),
10584
- toolName: z.string(),
11801
+ var toolResultPartSchema = z$2.object({
11802
+ type: z$2.literal("tool-result"),
11803
+ toolCallId: z$2.string(),
11804
+ toolName: z$2.string(),
10585
11805
  output: outputSchema,
10586
11806
  providerOptions: providerMetadataSchema.optional()
10587
11807
  });
10588
- var toolApprovalRequestSchema = z.object({
10589
- type: z.literal("tool-approval-request"),
10590
- approvalId: z.string(),
10591
- toolCallId: z.string()
11808
+ var toolApprovalRequestSchema = z$2.object({
11809
+ type: z$2.literal("tool-approval-request"),
11810
+ approvalId: z$2.string(),
11811
+ toolCallId: z$2.string(),
11812
+ reason: z$2.string().optional()
10592
11813
  });
10593
- var toolApprovalResponseSchema = z.object({
10594
- type: z.literal("tool-approval-response"),
10595
- approvalId: z.string(),
10596
- approved: z.boolean(),
10597
- reason: z.string().optional()
11814
+ var toolApprovalResponseSchema = z$2.object({
11815
+ type: z$2.literal("tool-approval-response"),
11816
+ approvalId: z$2.string(),
11817
+ approved: z$2.boolean(),
11818
+ reason: z$2.string().optional()
10598
11819
  });
10599
- var systemModelMessageSchema = z.object({
10600
- role: z.literal("system"),
10601
- content: z.string(),
11820
+ var systemModelMessageSchema = z$2.object({
11821
+ role: z$2.literal("system"),
11822
+ content: z$2.string(),
10602
11823
  providerOptions: providerMetadataSchema.optional()
10603
11824
  });
10604
- var userModelMessageSchema = z.object({
10605
- role: z.literal("user"),
10606
- content: z.union([z.string(), z.array(z.union([
11825
+ var userModelMessageSchema = z$2.object({
11826
+ role: z$2.literal("user"),
11827
+ content: z$2.union([z$2.string(), z$2.array(z$2.union([
10607
11828
  textPartSchema,
10608
11829
  imagePartSchema,
10609
11830
  filePartSchema
10610
11831
  ]))]),
10611
11832
  providerOptions: providerMetadataSchema.optional()
10612
11833
  });
10613
- var assistantModelMessageSchema = z.object({
10614
- role: z.literal("assistant"),
10615
- content: z.union([z.string(), z.array(z.union([
11834
+ var assistantModelMessageSchema = z$2.object({
11835
+ role: z$2.literal("assistant"),
11836
+ content: z$2.union([z$2.string(), z$2.array(z$2.union([
10616
11837
  textPartSchema,
10617
11838
  customPartSchema,
10618
11839
  filePartSchema,
@@ -10624,22 +11845,22 @@ var assistantModelMessageSchema = z.object({
10624
11845
  ]))]),
10625
11846
  providerOptions: providerMetadataSchema.optional()
10626
11847
  });
10627
- var toolModelMessageSchema = z.object({
10628
- role: z.literal("tool"),
10629
- content: z.array(z.union([toolResultPartSchema, toolApprovalResponseSchema])),
11848
+ var toolModelMessageSchema = z$2.object({
11849
+ role: z$2.literal("tool"),
11850
+ content: z$2.array(z$2.union([toolResultPartSchema, toolApprovalResponseSchema])),
10630
11851
  providerOptions: providerMetadataSchema.optional()
10631
11852
  });
10632
- z.union([
11853
+ z$2.union([
10633
11854
  systemModelMessageSchema,
10634
11855
  userModelMessageSchema,
10635
11856
  assistantModelMessageSchema,
10636
11857
  toolModelMessageSchema
10637
11858
  ]);
10638
11859
  __export({}, {
10639
- array: () => array,
11860
+ array: () => array2,
10640
11861
  choice: () => choice,
10641
11862
  json: () => json,
10642
- object: () => object,
11863
+ object: () => object2,
10643
11864
  text: () => text
10644
11865
  });
10645
11866
  function fixJson(input) {
@@ -10936,14 +12157,14 @@ var text = () => ({
10936
12157
  },
10937
12158
  createElementStreamTransform() {}
10938
12159
  });
10939
- var object = ({ schema: inputSchema, name: name23, description }) => {
12160
+ var object2 = ({ schema: inputSchema, name: name25, description }) => {
10940
12161
  const schema = asSchema(inputSchema);
10941
12162
  return {
10942
12163
  name: "object",
10943
- responseFormat: resolve(schema.jsonSchema).then((jsonSchema2) => ({
12164
+ responseFormat: resolve(schema.jsonSchema).then((jsonSchema3) => ({
10944
12165
  type: "json",
10945
- schema: jsonSchema2,
10946
- ...name23 != null && { name: name23 },
12166
+ schema: jsonSchema3,
12167
+ ...name25 != null && { name: name25 },
10947
12168
  ...description != null && { description }
10948
12169
  })),
10949
12170
  async parseCompleteOutput({ text: text2 }, context) {
@@ -10982,25 +12203,42 @@ var object = ({ schema: inputSchema, name: name23, description }) => {
10982
12203
  createElementStreamTransform() {}
10983
12204
  };
10984
12205
  };
10985
- var array = ({ element: inputElementSchema, name: name23, description }) => {
12206
+ var array2 = ({ element: inputElementSchema, minItems, maxItems, name: name25, description }) => {
12207
+ validateArrayBound({
12208
+ name: "minItems",
12209
+ value: minItems
12210
+ });
12211
+ validateArrayBound({
12212
+ name: "maxItems",
12213
+ value: maxItems
12214
+ });
12215
+ if (minItems != null && maxItems != null && minItems > maxItems) throw new InvalidArgumentError({
12216
+ parameter: "minItems",
12217
+ value: minItems,
12218
+ message: "minItems must be less than or equal to maxItems"
12219
+ });
10986
12220
  const elementSchema = asSchema(inputElementSchema);
10987
12221
  return {
10988
12222
  name: "array",
10989
- responseFormat: resolve(elementSchema.jsonSchema).then((jsonSchema2) => {
10990
- const { $schema: _$schema, ...itemSchema } = jsonSchema2;
12223
+ responseFormat: resolve(elementSchema.jsonSchema).then((jsonSchema3) => {
12224
+ const { $schema: _$schema, definitions, $defs, ...itemSchema } = jsonSchema3;
10991
12225
  return {
10992
12226
  type: "json",
10993
12227
  schema: {
10994
12228
  $schema: "http://json-schema.org/draft-07/schema#",
12229
+ ...definitions != null && { definitions },
12230
+ ...$defs != null && { $defs },
10995
12231
  type: "object",
10996
12232
  properties: { elements: {
10997
12233
  type: "array",
10998
- items: itemSchema
12234
+ items: itemSchema,
12235
+ ...minItems != null && { minItems },
12236
+ ...maxItems != null && { maxItems }
10999
12237
  } },
11000
12238
  required: ["elements"],
11001
12239
  additionalProperties: false
11002
12240
  },
11003
- ...name23 != null && { name: name23 },
12241
+ ...name25 != null && { name: name25 },
11004
12242
  ...description != null && { description }
11005
12243
  };
11006
12244
  }),
@@ -11026,6 +12264,19 @@ var array = ({ element: inputElementSchema, name: name23, description }) => {
11026
12264
  usage: context.usage,
11027
12265
  finishReason: context.finishReason
11028
12266
  });
12267
+ const lengthValidationError = getArrayLengthValidationError({
12268
+ value: outerValue.elements,
12269
+ minItems,
12270
+ maxItems
12271
+ });
12272
+ if (lengthValidationError != null) throw new NoObjectGeneratedError({
12273
+ message: "No object generated: response did not match schema.",
12274
+ cause: lengthValidationError,
12275
+ text: text2,
12276
+ response: context.response,
12277
+ usage: context.usage,
12278
+ finishReason: context.finishReason
12279
+ });
11029
12280
  const validatedElements = [];
11030
12281
  for (const element of outerValue.elements) {
11031
12282
  const validationResult = await safeValidateTypes({
@@ -11069,12 +12320,44 @@ var array = ({ element: inputElementSchema, name: name23, description }) => {
11069
12320
  createElementStreamTransform() {
11070
12321
  let publishedElements = 0;
11071
12322
  return new TransformStream({ transform({ partialOutput }, controller) {
11072
- if (partialOutput != null) for (; publishedElements < partialOutput.length; publishedElements++) controller.enqueue(partialOutput[publishedElements]);
12323
+ if (partialOutput != null) for (; publishedElements < partialOutput.length; publishedElements++) {
12324
+ if (maxItems != null && publishedElements >= maxItems) {
12325
+ controller.error(getArrayLengthValidationError({
12326
+ value: partialOutput,
12327
+ maxItems
12328
+ }));
12329
+ return;
12330
+ }
12331
+ controller.enqueue(partialOutput[publishedElements]);
12332
+ }
11073
12333
  } });
11074
12334
  }
11075
12335
  };
11076
12336
  };
11077
- var choice = ({ options: choiceOptions, name: name23, description }) => {
12337
+ function validateArrayBound({ name: name25, value }) {
12338
+ if (value == null) return;
12339
+ if (!Number.isInteger(value)) throw new InvalidArgumentError({
12340
+ parameter: name25,
12341
+ value,
12342
+ message: `${name25} must be an integer`
12343
+ });
12344
+ if (value < 0) throw new InvalidArgumentError({
12345
+ parameter: name25,
12346
+ value,
12347
+ message: `${name25} must be greater than or equal to 0`
12348
+ });
12349
+ }
12350
+ function getArrayLengthValidationError({ value, minItems, maxItems }) {
12351
+ if (minItems != null && value.length < minItems) return new TypeValidationError({
12352
+ value,
12353
+ cause: `elements array must contain at least ${minItems} items`
12354
+ });
12355
+ if (maxItems != null && value.length > maxItems) return new TypeValidationError({
12356
+ value,
12357
+ cause: `elements array must contain at most ${maxItems} items`
12358
+ });
12359
+ }
12360
+ var choice = ({ options: choiceOptions, name: name25, description }) => {
11078
12361
  return {
11079
12362
  name: "choice",
11080
12363
  responseFormat: Promise.resolve({
@@ -11089,7 +12372,7 @@ var choice = ({ options: choiceOptions, name: name23, description }) => {
11089
12372
  required: ["result"],
11090
12373
  additionalProperties: false
11091
12374
  },
11092
- ...name23 != null && { name: name23 },
12375
+ ...name25 != null && { name: name25 },
11093
12376
  ...description != null && { description }
11094
12377
  }),
11095
12378
  async parseCompleteOutput({ text: text2 }, context) {
@@ -11134,12 +12417,12 @@ var choice = ({ options: choiceOptions, name: name23, description }) => {
11134
12417
  createElementStreamTransform() {}
11135
12418
  };
11136
12419
  };
11137
- var json = ({ name: name23, description } = {}) => {
12420
+ var json = ({ name: name25, description } = {}) => {
11138
12421
  return {
11139
12422
  name: "json",
11140
12423
  responseFormat: Promise.resolve({
11141
12424
  type: "json",
11142
- ...name23 != null && { name: name23 },
12425
+ ...name25 != null && { name: name25 },
11143
12426
  ...description != null && { description }
11144
12427
  }),
11145
12428
  async parseCompleteOutput({ text: text2 }, context) {
@@ -11215,7 +12498,7 @@ function createUIMessageStreamResponse({ status, statusText, headers, stream, co
11215
12498
  headers: prepareHeaders(headers, UI_MESSAGE_STREAM_HEADERS)
11216
12499
  });
11217
12500
  }
11218
- z.record(z.string(), jsonValueSchema.optional());
12501
+ z$2.record(z$2.string(), jsonValueSchema.optional());
11219
12502
  function isDataUIMessageChunk(chunk) {
11220
12503
  return chunk.type.startsWith("data-");
11221
12504
  }
@@ -11234,6 +12517,14 @@ function isToolUIPart(part) {
11234
12517
  function getStaticToolName(part) {
11235
12518
  return part.type.split("-").slice(1).join("-");
11236
12519
  }
12520
+ var rawInputDeprecationWarning = {
12521
+ type: "deprecated",
12522
+ setting: "rawInput in output-error UI message parts",
12523
+ message: "Use the \"input\" field instead. The \"rawInput\" field will be removed in the next major version."
12524
+ };
12525
+ function warnIfUIMessageHasDeprecatedRawInput(messages) {
12526
+ if (messages.some((message) => message.parts.some((part) => part != null && typeof part === "object" && "type" in part && typeof part.type === "string" && (part.type === "dynamic-tool" || part.type.startsWith("tool-")) && "state" in part && part.state === "output-error" && Object.prototype.hasOwnProperty.call(part, "rawInput") && "rawInput" in part && part.rawInput !== void 0))) logWarnings({ warnings: [rawInputDeprecationWarning] });
12527
+ }
11237
12528
  function createStreamingUIMessageState({ lastMessage, messageId }) {
11238
12529
  return {
11239
12530
  message: (lastMessage == null ? void 0 : lastMessage.role) === "assistant" ? lastMessage : {
@@ -11250,7 +12541,7 @@ function createStreamingUIMessageState({ lastMessage, messageId }) {
11250
12541
  function processUIMessageStream({ stream, messageMetadataSchema, dataPartSchemas, runUpdateMessageJob, onError, onToolCall, onData }) {
11251
12542
  return stream.pipeThrough(new TransformStream({ async transform(chunk, controller) {
11252
12543
  await runUpdateMessageJob(async ({ state, write }) => {
11253
- var _a23, _b, _c, _d;
12544
+ var _a25, _b25, _c, _d;
11254
12545
  function getCurrentStepParts() {
11255
12546
  const parts = state.message.parts;
11256
12547
  let currentStepStartIndex = parts.length - 1;
@@ -11281,8 +12572,8 @@ function processUIMessageStream({ stream, messageMetadataSchema, dataPartSchemas
11281
12572
  }
11282
12573
  function getToolInvocationByApprovalId(approvalId) {
11283
12574
  const toolInvocation = state.message.parts.filter(isToolUIPart).find((invocation) => {
11284
- var _a24;
11285
- return ((_a24 = invocation.approval) == null ? void 0 : _a24.id) === approvalId;
12575
+ var _a26;
12576
+ return ((_a26 = invocation.approval) == null ? void 0 : _a26.id) === approvalId;
11286
12577
  });
11287
12578
  if (toolInvocation == null) throw new UIMessageStreamError({
11288
12579
  chunkType: "tool-approval-response",
@@ -11292,7 +12583,7 @@ function processUIMessageStream({ stream, messageMetadataSchema, dataPartSchemas
11292
12583
  return toolInvocation;
11293
12584
  }
11294
12585
  function updateToolPart(options, existingPart) {
11295
- var _a24;
12586
+ var _a26;
11296
12587
  const part = existingPart != null ? existingPart : getCurrentStepParts().find((part2) => isStaticToolUIPart(part2) && part2.toolCallId === options.toolCallId);
11297
12588
  const anyOptions = options;
11298
12589
  const anyPart = part;
@@ -11305,7 +12596,7 @@ function processUIMessageStream({ stream, messageMetadataSchema, dataPartSchemas
11305
12596
  anyPart.preliminary = anyOptions.preliminary;
11306
12597
  if (options.title !== void 0) anyPart.title = options.title;
11307
12598
  if (options.toolMetadata !== void 0) anyPart.toolMetadata = options.toolMetadata;
11308
- anyPart.providerExecuted = (_a24 = anyOptions.providerExecuted) != null ? _a24 : part.providerExecuted;
12599
+ anyPart.providerExecuted = (_a26 = anyOptions.providerExecuted) != null ? _a26 : part.providerExecuted;
11309
12600
  const providerMetadata = anyOptions.providerMetadata;
11310
12601
  if (providerMetadata != null) if (options.state === "output-available" || options.state === "output-error") {
11311
12602
  const resultPart = part;
@@ -11328,7 +12619,7 @@ function processUIMessageStream({ stream, messageMetadataSchema, dataPartSchemas
11328
12619
  });
11329
12620
  }
11330
12621
  function updateDynamicToolPart(options, existingPart) {
11331
- var _a24, _b2;
12622
+ var _a26, _b26;
11332
12623
  const part = existingPart != null ? existingPart : getCurrentStepParts().find((part2) => part2.type === "dynamic-tool" && part2.toolCallId === options.toolCallId);
11333
12624
  const anyOptions = options;
11334
12625
  const anyPart = part;
@@ -11338,11 +12629,11 @@ function processUIMessageStream({ stream, messageMetadataSchema, dataPartSchemas
11338
12629
  anyPart.input = anyOptions.input;
11339
12630
  anyPart.output = anyOptions.output;
11340
12631
  anyPart.errorText = anyOptions.errorText;
11341
- anyPart.rawInput = (_a24 = anyOptions.rawInput) != null ? _a24 : anyPart.rawInput;
12632
+ anyPart.rawInput = (_a26 = anyOptions.rawInput) != null ? _a26 : anyPart.rawInput;
11342
12633
  anyPart.preliminary = anyOptions.preliminary;
11343
12634
  if (options.title !== void 0) anyPart.title = options.title;
11344
12635
  if (options.toolMetadata !== void 0) anyPart.toolMetadata = options.toolMetadata;
11345
- anyPart.providerExecuted = (_b2 = anyOptions.providerExecuted) != null ? _b2 : part.providerExecuted;
12636
+ anyPart.providerExecuted = (_b26 = anyOptions.providerExecuted) != null ? _b26 : part.providerExecuted;
11346
12637
  const providerMetadata = anyOptions.providerMetadata;
11347
12638
  if (providerMetadata != null) if (options.state === "output-available" || options.state === "output-error") {
11348
12639
  const resultPart = part;
@@ -11399,7 +12690,7 @@ function processUIMessageStream({ stream, messageMetadataSchema, dataPartSchemas
11399
12690
  message: `Received text-delta for missing text part with ID "${chunk.id}". Ensure a "text-start" chunk is sent before any "text-delta" chunks.`
11400
12691
  });
11401
12692
  textPart.text += chunk.delta;
11402
- textPart.providerMetadata = (_a23 = chunk.providerMetadata) != null ? _a23 : textPart.providerMetadata;
12693
+ textPart.providerMetadata = (_a25 = chunk.providerMetadata) != null ? _a25 : textPart.providerMetadata;
11403
12694
  write();
11404
12695
  break;
11405
12696
  }
@@ -11411,7 +12702,7 @@ function processUIMessageStream({ stream, messageMetadataSchema, dataPartSchemas
11411
12702
  message: `Received text-end for missing text part with ID "${chunk.id}". Ensure a "text-start" chunk is sent before any "text-end" chunks.`
11412
12703
  });
11413
12704
  textPart.state = "done";
11414
- textPart.providerMetadata = (_b = chunk.providerMetadata) != null ? _b : textPart.providerMetadata;
12705
+ textPart.providerMetadata = (_b25 = chunk.providerMetadata) != null ? _b25 : textPart.providerMetadata;
11415
12706
  delete state.activeTextParts[chunk.id];
11416
12707
  write();
11417
12708
  break;
@@ -11429,6 +12720,7 @@ function processUIMessageStream({ stream, messageMetadataSchema, dataPartSchemas
11429
12720
  case "reasoning-start": {
11430
12721
  const reasoningPart = {
11431
12722
  type: "reasoning",
12723
+ id: chunk.id,
11432
12724
  text: "",
11433
12725
  providerMetadata: chunk.providerMetadata,
11434
12726
  state: "streaming"
@@ -11591,17 +12883,20 @@ function processUIMessageStream({ stream, messageMetadataSchema, dataPartSchemas
11591
12883
  providerMetadata: chunk.providerMetadata,
11592
12884
  toolMetadata: chunk.toolMetadata
11593
12885
  });
11594
- else updateToolPart({
11595
- toolCallId: chunk.toolCallId,
11596
- toolName: chunk.toolName,
11597
- state: "output-error",
11598
- input: void 0,
11599
- rawInput: chunk.input,
11600
- errorText: chunk.errorText,
11601
- providerExecuted: chunk.providerExecuted,
11602
- providerMetadata: chunk.providerMetadata,
11603
- toolMetadata: chunk.toolMetadata
11604
- });
12886
+ else {
12887
+ updateToolPart({
12888
+ toolCallId: chunk.toolCallId,
12889
+ toolName: chunk.toolName,
12890
+ state: "output-error",
12891
+ input: void 0,
12892
+ rawInput: chunk.input,
12893
+ errorText: chunk.errorText,
12894
+ providerExecuted: chunk.providerExecuted,
12895
+ providerMetadata: chunk.providerMetadata,
12896
+ toolMetadata: chunk.toolMetadata
12897
+ });
12898
+ warnIfUIMessageHasDeprecatedRawInput([state.message]);
12899
+ }
11605
12900
  write();
11606
12901
  break;
11607
12902
  }
@@ -11610,6 +12905,8 @@ function processUIMessageStream({ stream, messageMetadataSchema, dataPartSchemas
11610
12905
  toolInvocation.state = "approval-requested";
11611
12906
  toolInvocation.approval = {
11612
12907
  id: chunk.approvalId,
12908
+ ...chunk.approvalDescriptor != null ? { descriptor: chunk.approvalDescriptor } : {},
12909
+ ...chunk.reason != null ? { requestReason: chunk.reason } : {},
11613
12910
  ...chunk.isAutomatic === true ? { isAutomatic: true } : {},
11614
12911
  ...chunk.signature != null ? { signature: chunk.signature } : {}
11615
12912
  };
@@ -11621,11 +12918,10 @@ function processUIMessageStream({ stream, messageMetadataSchema, dataPartSchemas
11621
12918
  const approval = toolInvocation.approval == null ? { id: chunk.approvalId } : toolInvocation.approval;
11622
12919
  toolInvocation.state = "approval-responded";
11623
12920
  toolInvocation.approval = {
12921
+ ...approval,
11624
12922
  id: chunk.approvalId,
11625
12923
  approved: chunk.approved,
11626
- ...chunk.reason != null ? { reason: chunk.reason } : {},
11627
- ...approval.isAutomatic === true ? { isAutomatic: true } : {},
11628
- ...approval.signature != null ? { signature: approval.signature } : {}
12924
+ ...chunk.reason != null ? { reason: chunk.reason } : {}
11629
12925
  };
11630
12926
  if (chunk.providerExecuted != null) toolInvocation.providerExecuted = chunk.providerExecuted;
11631
12927
  if (chunk.providerMetadata != null) toolInvocation.callProviderMetadata = chunk.providerMetadata;
@@ -11698,14 +12994,22 @@ function processUIMessageStream({ stream, messageMetadataSchema, dataPartSchemas
11698
12994
  case "start-step":
11699
12995
  state.message.parts.push({ type: "step-start" });
11700
12996
  break;
11701
- case "finish-step":
12997
+ case "finish-step": break;
12998
+ case "reset-step": {
12999
+ const currentStepParts = getCurrentStepParts();
11702
13000
  state.activeTextParts = createIdMap();
11703
13001
  state.activeReasoningParts = createIdMap();
13002
+ state.partialToolCalls = createIdMap();
13003
+ if (currentStepParts.length > 0) {
13004
+ state.message.parts.splice(state.message.parts.length - currentStepParts.length, currentStepParts.length);
13005
+ write();
13006
+ }
11704
13007
  break;
13008
+ }
11705
13009
  case "start":
11706
13010
  if (chunk.messageId != null) state.message.id = chunk.messageId;
11707
13011
  await updateMessageMetadata(chunk.messageMetadata);
11708
- if (chunk.messageId != null || chunk.messageMetadata != null) write();
13012
+ if (chunk.messageId != null || chunk.messageMetadata != null) write({ updateStatus: false });
11709
13013
  break;
11710
13014
  case "finish":
11711
13015
  if (chunk.finishReason != null) state.finishReason = chunk.finishReason;
@@ -11749,18 +13053,33 @@ function processUIMessageStream({ stream, messageMetadataSchema, dataPartSchemas
11749
13053
  });
11750
13054
  } }));
11751
13055
  }
11752
- function handleUIMessageStreamFinish({ messageId, originalMessages = [], onStepEnd, onStepFinish, onEnd, onFinish, onError, stream }) {
13056
+ function handleUIMessageStreamFinish({ messageId, originalMessages = [], onStepEnd, onStepFinish, onEnd, onFinish, onError, stream, getOutcome }) {
11753
13057
  let lastMessage = originalMessages == null ? void 0 : originalMessages[originalMessages.length - 1];
11754
13058
  if ((lastMessage == null ? void 0 : lastMessage.role) !== "assistant") lastMessage = void 0;
11755
13059
  else messageId = lastMessage.id;
11756
13060
  let isAborted = false;
13061
+ let hasProcessingFailure = false;
13062
+ let processingError;
13063
+ const recordProcessingFailure = (error) => {
13064
+ hasProcessingFailure = true;
13065
+ processingError = error;
13066
+ };
11757
13067
  const idInjectedStream = stream.pipeThrough(new TransformStream({ transform(chunk, controller) {
11758
- if (chunk.type === "start") {
11759
- const startChunk = chunk;
11760
- if (startChunk.messageId == null && messageId != null) startChunk.messageId = messageId;
13068
+ try {
13069
+ let outputChunk = chunk;
13070
+ if (chunk.type === "start") {
13071
+ const startChunk = chunk;
13072
+ if (startChunk.messageId == null && messageId != null) outputChunk = {
13073
+ ...startChunk,
13074
+ messageId
13075
+ };
13076
+ }
13077
+ if (chunk.type === "abort") isAborted = true;
13078
+ controller.enqueue(outputChunk);
13079
+ } catch (error) {
13080
+ recordProcessingFailure(error);
13081
+ throw error;
11761
13082
  }
11762
- if (chunk.type === "abort") isAborted = true;
11763
- controller.enqueue(chunk);
11764
13083
  } }));
11765
13084
  const resolvedOnStepEnd = onStepEnd != null ? onStepEnd : onStepFinish;
11766
13085
  const resolvedOnEnd = onEnd != null ? onEnd : onFinish;
@@ -11770,19 +13089,33 @@ function handleUIMessageStreamFinish({ messageId, originalMessages = [], onStepE
11770
13089
  messageId: messageId != null ? messageId : ""
11771
13090
  });
11772
13091
  const runUpdateMessageJob = async (job) => {
11773
- await job({
11774
- state,
11775
- write: () => {}
11776
- });
13092
+ try {
13093
+ await job({
13094
+ state,
13095
+ write: () => {}
13096
+ });
13097
+ } catch (error) {
13098
+ recordProcessingFailure(error);
13099
+ throw error;
13100
+ }
11777
13101
  };
11778
13102
  let finishCalled = false;
11779
- const callOnEnd = async () => {
13103
+ const callOnEnd = async ({ isCancelled }) => {
13104
+ var _a25;
11780
13105
  if (finishCalled || !resolvedOnEnd) return;
11781
13106
  finishCalled = true;
11782
13107
  const isContinuation = state.message.id === (lastMessage == null ? void 0 : lastMessage.id);
13108
+ const declaredOutcome = (_a25 = getOutcome == null ? void 0 : getOutcome()) != null ? _a25 : { status: "unknown" };
13109
+ const outcome = hasProcessingFailure ? {
13110
+ status: "failed",
13111
+ error: processingError
13112
+ } : declaredOutcome.status === "unknown" && isAborted ? { status: "aborted" } : declaredOutcome;
13113
+ const isConsumerCancellation = isCancelled && outcome.status === "unknown";
11783
13114
  await resolvedOnEnd({
11784
- isAborted,
13115
+ isAborted: isAborted || outcome.status === "aborted",
13116
+ ...isConsumerCancellation ? { isCancelled: true } : {},
11785
13117
  isContinuation,
13118
+ outcome,
11786
13119
  responseMessage: state.message,
11787
13120
  messages: [...isContinuation ? originalMessages.slice(0, -1) : originalMessages, state.message],
11788
13121
  finishReason: state.finishReason
@@ -11811,10 +13144,10 @@ function handleUIMessageStreamFinish({ messageId, originalMessages = [], onStepE
11811
13144
  controller.enqueue(chunk);
11812
13145
  },
11813
13146
  async cancel() {
11814
- await callOnEnd();
13147
+ await callOnEnd({ isCancelled: true });
11815
13148
  },
11816
13149
  async flush() {
11817
- await callOnEnd();
13150
+ await callOnEnd({ isCancelled: false });
11818
13151
  }
11819
13152
  }));
11820
13153
  }
@@ -11834,9 +13167,10 @@ createIdGenerator({
11834
13167
  prefix: "call",
11835
13168
  size: 24
11836
13169
  });
11837
- function createUIMessageStream({ execute, onError = () => "An error occurred.", originalMessages, onStepEnd, onStepFinish, onEnd, onFinish, generateId: generateId2 = generateId }) {
13170
+ function createUIMessageStream({ execute, onError = () => "An error occurred.", originalMessages, onStepEnd, onStepFinish, onEnd, onFinish, generateId: generateId5 = generateId }) {
11838
13171
  let controller;
11839
13172
  const ongoingStreamPromises = [];
13173
+ let outcome = { status: "unknown" };
11840
13174
  const stream = new ReadableStream({ start(controllerArg) {
11841
13175
  controller = controllerArg;
11842
13176
  } });
@@ -11845,6 +13179,35 @@ function createUIMessageStream({ execute, onError = () => "An error occurred.",
11845
13179
  controller.enqueue(data);
11846
13180
  } catch (e) {}
11847
13181
  }
13182
+ function setOutcome(newOutcome) {
13183
+ if (outcome.status === "unknown" && newOutcome.status !== "unknown") outcome = newOutcome;
13184
+ }
13185
+ function failOutcome(error) {
13186
+ outcome = {
13187
+ status: "failed",
13188
+ error
13189
+ };
13190
+ }
13191
+ function safeError(error) {
13192
+ try {
13193
+ controller.error(error);
13194
+ } catch (e) {}
13195
+ }
13196
+ function handleError(error) {
13197
+ failOutcome(error);
13198
+ let errorText;
13199
+ try {
13200
+ errorText = onError(error);
13201
+ } catch (onErrorError) {
13202
+ failOutcome(onErrorError);
13203
+ safeError(onErrorError);
13204
+ return;
13205
+ }
13206
+ safeEnqueue({
13207
+ type: "error",
13208
+ errorText
13209
+ });
13210
+ }
11848
13211
  try {
11849
13212
  const result = execute({ writer: {
11850
13213
  write(part) {
@@ -11859,49 +13222,46 @@ function createUIMessageStream({ execute, onError = () => "An error occurred.",
11859
13222
  safeEnqueue(value);
11860
13223
  }
11861
13224
  })().catch((error) => {
11862
- safeEnqueue({
11863
- type: "error",
11864
- errorText: onError(error)
11865
- });
13225
+ handleError(error);
11866
13226
  }));
11867
13227
  },
13228
+ setOutcome,
11868
13229
  onError
11869
13230
  } });
11870
13231
  if (result) ongoingStreamPromises.push(result.catch((error) => {
11871
- safeEnqueue({
11872
- type: "error",
11873
- errorText: onError(error)
11874
- });
13232
+ handleError(error);
11875
13233
  }));
11876
13234
  } catch (error) {
11877
- safeEnqueue({
11878
- type: "error",
11879
- errorText: onError(error)
11880
- });
13235
+ handleError(error);
11881
13236
  }
11882
- new Promise(async (resolve3) => {
13237
+ (async () => {
11883
13238
  while (ongoingStreamPromises.length > 0) await ongoingStreamPromises.shift();
11884
- resolve3();
11885
- }).finally(() => {
13239
+ })().finally(() => {
11886
13240
  try {
11887
13241
  controller.close();
11888
13242
  } catch (e) {}
11889
13243
  });
11890
13244
  return handleUIMessageStreamFinish({
11891
13245
  stream,
11892
- messageId: generateId2(),
13246
+ messageId: generateId5(),
11893
13247
  originalMessages,
11894
13248
  onStepEnd: onStepEnd != null ? onStepEnd : onStepFinish,
11895
13249
  onEnd: onEnd != null ? onEnd : onFinish,
11896
- onError
13250
+ onError,
13251
+ getOutcome: () => outcome
11897
13252
  });
11898
13253
  }
11899
- z.record(z.string(), jsonValueSchema.optional());
11900
- z.record(z.string(), z.string());
13254
+ z$2.record(z$2.string(), jsonValueSchema.optional());
13255
+ z$2.record(z$2.string(), z$2.string());
13256
+ createIdGenerator({
13257
+ prefix: "call",
13258
+ size: 24
13259
+ });
11901
13260
  createIdGenerator({
11902
13261
  prefix: "call",
11903
13262
  size: 24
11904
13263
  });
13264
+ new TextEncoder();
11905
13265
  createIdGenerator({
11906
13266
  prefix: "call",
11907
13267
  size: 24
@@ -11910,10 +13270,50 @@ createIdGenerator({
11910
13270
  prefix: "aiobj",
11911
13271
  size: 24
11912
13272
  });
13273
+ var { atob: atob2 } = globalThis;
11913
13274
  createIdGenerator({
11914
13275
  prefix: "aiobj",
11915
13276
  size: 24
11916
13277
  });
13278
+ z$2.object({
13279
+ token: z$2.string().refine((value) => value.trim().length > 0),
13280
+ url: z$2.string().refine((value) => {
13281
+ try {
13282
+ const url = new URL(value);
13283
+ return (url.protocol === "ws:" || url.protocol === "wss:") && url.hostname !== "";
13284
+ } catch (e) {
13285
+ return false;
13286
+ }
13287
+ }),
13288
+ expiresAt: z$2.number().positive().max(Number.MAX_SAFE_INTEGER).optional(),
13289
+ tools: z$2.array(z$2.object({
13290
+ type: z$2.literal("function"),
13291
+ name: z$2.string().min(1),
13292
+ description: z$2.string().optional(),
13293
+ parameters: z$2.record(z$2.string(), z$2.unknown())
13294
+ })).optional()
13295
+ });
13296
+ var name24 = "AI_NoSuchProviderError";
13297
+ var marker24 = `vercel.ai.error.${name24}`;
13298
+ var symbol24 = Symbol.for(marker24);
13299
+ var _a24;
13300
+ var _b24;
13301
+ (class extends (_b24 = NoSuchModelError, _a24 = symbol24, _b24) {
13302
+ constructor({ modelId, modelType, providerId, availableProviders, message = `No such provider: ${providerId} (available providers: ${availableProviders.join()})` }) {
13303
+ super({
13304
+ errorName: name24,
13305
+ modelId,
13306
+ modelType,
13307
+ message
13308
+ });
13309
+ this[_a24] = true;
13310
+ this.providerId = providerId;
13311
+ this.availableProviders = availableProviders;
13312
+ }
13313
+ static isInstance(error) {
13314
+ return AISDKError.hasMarker(error, marker24);
13315
+ }
13316
+ });
11917
13317
  createIdGenerator({
11918
13318
  prefix: "call",
11919
13319
  size: 24