@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/__tests__/v7-ui-message-types.test-d.d.ts +2 -0
- package/dist/__tests__/v7-ui-message-types.test-d.d.ts.map +1 -0
- package/dist/_types/@internal_ai-sdk-v5/dist/index.d.ts +367 -25
- package/dist/_types/@internal_ai-v6/dist/index.d.ts +686 -37
- package/dist/_types/@internal_ai-v7/dist/index.d.ts +3058 -7038
- package/dist/index.cjs +2259 -859
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +2260 -860
- package/dist/index.js.map +1 -1
- package/package.json +12 -12
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-
|
|
13
|
-
var marker$
|
|
14
|
-
var symbol$
|
|
15
|
-
var _a$
|
|
16
|
-
var _b$
|
|
17
|
-
var AISDKError$
|
|
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$
|
|
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$
|
|
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$
|
|
46
|
-
var marker2$
|
|
47
|
-
var symbol2$
|
|
48
|
-
var _a2$
|
|
49
|
-
var _b2$
|
|
50
|
-
var APICallError$
|
|
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$
|
|
54
|
+
name: name$2$3,
|
|
54
55
|
message,
|
|
55
56
|
cause
|
|
56
57
|
});
|
|
57
|
-
this[_a2$
|
|
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$
|
|
68
|
+
return AISDKError$1$3.hasMarker(error, marker2$1$7);
|
|
68
69
|
}
|
|
69
70
|
};
|
|
70
|
-
var name2$
|
|
71
|
-
var marker3$
|
|
72
|
-
var symbol3$
|
|
73
|
-
var _a3$
|
|
74
|
-
var _b3$
|
|
75
|
-
var EmptyResponseBodyError$
|
|
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$
|
|
79
|
+
name: name2$1$7,
|
|
79
80
|
message
|
|
80
81
|
});
|
|
81
|
-
this[_a3$
|
|
82
|
+
this[_a3$1$3] = true;
|
|
82
83
|
}
|
|
83
84
|
static isInstance(error) {
|
|
84
|
-
return AISDKError$
|
|
85
|
+
return AISDKError$1$3.hasMarker(error, marker3$1$7);
|
|
85
86
|
}
|
|
86
87
|
};
|
|
87
|
-
function getErrorMessage$
|
|
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$
|
|
94
|
-
var marker4$
|
|
95
|
-
var symbol4$
|
|
96
|
-
var _a4$
|
|
97
|
-
var _b4$
|
|
98
|
-
var InvalidArgumentError$2 = class extends (_b4$
|
|
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$
|
|
102
|
+
name: name3$1$3,
|
|
102
103
|
message,
|
|
103
104
|
cause
|
|
104
105
|
});
|
|
105
|
-
this[_a4$
|
|
106
|
+
this[_a4$1$3] = true;
|
|
106
107
|
this.argument = argument;
|
|
107
108
|
}
|
|
108
109
|
static isInstance(error) {
|
|
109
|
-
return AISDKError$
|
|
110
|
+
return AISDKError$1$3.hasMarker(error, marker4$1$3);
|
|
110
111
|
}
|
|
111
112
|
};
|
|
112
|
-
var name4$
|
|
113
|
-
var marker5$
|
|
114
|
-
var symbol5$
|
|
115
|
-
var _a5$
|
|
116
|
-
var _b5$
|
|
117
|
-
(class extends (_b5$
|
|
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$
|
|
121
|
+
name: name4$1$3,
|
|
121
122
|
message: `Invalid prompt: ${message}`,
|
|
122
123
|
cause
|
|
123
124
|
});
|
|
124
|
-
this[_a5$
|
|
125
|
+
this[_a5$1$3] = true;
|
|
125
126
|
this.prompt = prompt;
|
|
126
127
|
}
|
|
127
128
|
static isInstance(error) {
|
|
128
|
-
return AISDKError$
|
|
129
|
+
return AISDKError$1$3.hasMarker(error, marker5$1$3);
|
|
129
130
|
}
|
|
130
131
|
});
|
|
131
|
-
var name5$
|
|
132
|
-
var marker6$
|
|
133
|
-
var symbol6$
|
|
134
|
-
var _a6$
|
|
135
|
-
var _b6$
|
|
136
|
-
(class extends (_b6$
|
|
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$
|
|
140
|
+
name: name5$1$3,
|
|
140
141
|
message
|
|
141
142
|
});
|
|
142
|
-
this[_a6$
|
|
143
|
+
this[_a6$1$3] = true;
|
|
143
144
|
this.data = data;
|
|
144
145
|
}
|
|
145
146
|
static isInstance(error) {
|
|
146
|
-
return AISDKError$
|
|
147
|
+
return AISDKError$1$3.hasMarker(error, marker6$1$3);
|
|
147
148
|
}
|
|
148
149
|
});
|
|
149
|
-
var name6$
|
|
150
|
-
var marker7$
|
|
151
|
-
var symbol7$
|
|
152
|
-
var _a7$
|
|
153
|
-
var _b7$
|
|
154
|
-
var JSONParseError$
|
|
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$
|
|
158
|
+
name: name6$1$3,
|
|
158
159
|
message: `JSON parsing failed: Text: ${text}.
|
|
159
|
-
Error message: ${getErrorMessage$
|
|
160
|
+
Error message: ${getErrorMessage$2$1(cause)}`,
|
|
160
161
|
cause
|
|
161
162
|
});
|
|
162
|
-
this[_a7$
|
|
163
|
+
this[_a7$1$3] = true;
|
|
163
164
|
this.text = text;
|
|
164
165
|
}
|
|
165
166
|
static isInstance(error) {
|
|
166
|
-
return AISDKError$
|
|
167
|
+
return AISDKError$1$3.hasMarker(error, marker7$1$3);
|
|
167
168
|
}
|
|
168
169
|
};
|
|
169
|
-
var name7$
|
|
170
|
-
var marker8$
|
|
171
|
-
var symbol8$
|
|
172
|
-
var _a8$
|
|
173
|
-
var _b8$
|
|
174
|
-
(class extends (_b8$
|
|
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$
|
|
178
|
+
name: name7$1$3,
|
|
178
179
|
message
|
|
179
180
|
});
|
|
180
|
-
this[_a8$
|
|
181
|
+
this[_a8$1$3] = true;
|
|
181
182
|
}
|
|
182
183
|
static isInstance(error) {
|
|
183
|
-
return AISDKError$
|
|
184
|
+
return AISDKError$1$3.hasMarker(error, marker8$1$3);
|
|
184
185
|
}
|
|
185
186
|
});
|
|
186
|
-
var name8$
|
|
187
|
-
var marker9$
|
|
188
|
-
var symbol9$
|
|
189
|
-
var _a9$
|
|
190
|
-
var _b9$
|
|
191
|
-
(class extends (_b9$
|
|
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$
|
|
195
|
+
name: name8$1$3,
|
|
195
196
|
message
|
|
196
197
|
});
|
|
197
|
-
this[_a9$
|
|
198
|
+
this[_a9$1$3] = true;
|
|
198
199
|
}
|
|
199
200
|
static isInstance(error) {
|
|
200
|
-
return AISDKError$
|
|
201
|
+
return AISDKError$1$3.hasMarker(error, marker9$1$3);
|
|
201
202
|
}
|
|
202
203
|
});
|
|
203
|
-
var name9$
|
|
204
|
-
var marker10$
|
|
205
|
-
var symbol10$
|
|
206
|
-
var _a10$
|
|
207
|
-
var _b10$2;
|
|
208
|
-
(class extends (_b10$2 = AISDKError$
|
|
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$
|
|
212
|
+
name: name9$1$2,
|
|
212
213
|
message
|
|
213
214
|
});
|
|
214
|
-
this[_a10$
|
|
215
|
+
this[_a10$1$2] = true;
|
|
215
216
|
}
|
|
216
217
|
static isInstance(error) {
|
|
217
|
-
return AISDKError$
|
|
218
|
+
return AISDKError$1$3.hasMarker(error, marker10$1$2);
|
|
218
219
|
}
|
|
219
220
|
});
|
|
220
|
-
var name10$
|
|
221
|
-
var marker11$
|
|
222
|
-
var symbol11$
|
|
223
|
-
var _a11$
|
|
224
|
-
var _b11$2;
|
|
225
|
-
(class extends (_b11$2 = AISDKError$
|
|
226
|
-
constructor({ errorName = name10$
|
|
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$
|
|
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$
|
|
237
|
+
return AISDKError$1$3.hasMarker(error, marker11$1$2);
|
|
237
238
|
}
|
|
238
239
|
});
|
|
239
|
-
var name11$
|
|
240
|
-
var marker12$
|
|
241
|
-
var symbol12$
|
|
242
|
-
var _a12$
|
|
243
|
-
var _b12$2;
|
|
244
|
-
(class extends (_b12$2 = AISDKError$
|
|
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$
|
|
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$
|
|
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$
|
|
258
|
+
return AISDKError$1$3.hasMarker(error, marker12$1$2);
|
|
258
259
|
}
|
|
259
260
|
});
|
|
260
|
-
var name12$
|
|
261
|
-
var marker13$
|
|
262
|
-
var symbol13$
|
|
263
|
-
var _a13$
|
|
264
|
-
var _b13$2;
|
|
265
|
-
var TypeValidationError$
|
|
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$
|
|
269
|
+
name: name12$1$2,
|
|
269
270
|
message: `Type validation failed: Value: ${JSON.stringify(value)}.
|
|
270
|
-
Error message: ${getErrorMessage$
|
|
271
|
+
Error message: ${getErrorMessage$2$1(cause)}`,
|
|
271
272
|
cause
|
|
272
273
|
});
|
|
273
|
-
this[_a13$
|
|
274
|
+
this[_a13$1$2] = true;
|
|
274
275
|
this.value = value;
|
|
275
276
|
}
|
|
276
277
|
static isInstance(error) {
|
|
277
|
-
return AISDKError$
|
|
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$
|
|
297
|
-
var marker14$
|
|
298
|
-
var symbol14$
|
|
299
|
-
var _a14$
|
|
300
|
-
var _b14$2;
|
|
301
|
-
(class extends (_b14$2 = AISDKError$
|
|
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$
|
|
305
|
+
name: name13$1$2,
|
|
305
306
|
message
|
|
306
307
|
});
|
|
307
|
-
this[_a14$
|
|
308
|
+
this[_a14$1$2] = true;
|
|
308
309
|
this.functionality = functionality;
|
|
309
310
|
}
|
|
310
311
|
static isInstance(error) {
|
|
311
|
-
return AISDKError$
|
|
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$
|
|
510
|
-
var marker$
|
|
511
|
-
var symbol$
|
|
512
|
-
var _a$
|
|
513
|
-
var _b$5;
|
|
514
|
-
var DownloadError$2 = class extends (_b$5 = AISDKError$
|
|
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$
|
|
518
|
+
name: name$1$7,
|
|
518
519
|
message,
|
|
519
520
|
cause
|
|
520
521
|
});
|
|
521
|
-
this[_a$
|
|
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$
|
|
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$
|
|
537
|
-
isNodeDefaultFetch$
|
|
538
|
-
function isNodeDefaultFetch$
|
|
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$
|
|
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.
|
|
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$
|
|
680
|
-
throw new APICallError$
|
|
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$
|
|
744
|
+
if (isAbortError(error) || APICallError$1$3.isInstance(error)) throw error;
|
|
700
745
|
}
|
|
701
|
-
throw new APICallError$
|
|
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$
|
|
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$
|
|
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$
|
|
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$
|
|
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$
|
|
851
|
-
throw new JSONParseError$
|
|
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$
|
|
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$
|
|
924
|
-
throw new APICallError$
|
|
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$
|
|
988
|
+
if (isAbortError(error) || APICallError$1$3.isInstance(error)) throw error;
|
|
944
989
|
}
|
|
945
|
-
throw new APICallError$
|
|
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$
|
|
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$
|
|
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$
|
|
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$
|
|
1135
|
+
if (response.body == null) throw new EmptyResponseBodyError$1$3({});
|
|
1045
1136
|
return {
|
|
1046
1137
|
responseHeaders,
|
|
1047
1138
|
value: parseJsonEventStream({
|
|
1048
|
-
stream:
|
|
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$
|
|
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
|
-
|
|
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
|
-
|
|
2047
|
-
|
|
2048
|
-
|
|
2049
|
-
|
|
2050
|
-
|
|
2051
|
-
|
|
2052
|
-
|
|
2053
|
-
|
|
2054
|
-
}
|
|
2055
|
-
|
|
2056
|
-
|
|
2057
|
-
|
|
2058
|
-
|
|
2059
|
-
constructor({
|
|
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$
|
|
2062
|
-
this.
|
|
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
|
|
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
|
|
2166
|
+
* @returns {boolean} True if the error is an AI SDK Error, false otherwise.
|
|
2069
2167
|
*/
|
|
2070
2168
|
static isInstance(error) {
|
|
2071
|
-
return
|
|
2169
|
+
return _AISDKError.hasMarker(error, marker$6);
|
|
2072
2170
|
}
|
|
2073
|
-
static hasMarker(error) {
|
|
2074
|
-
|
|
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$
|
|
2078
|
-
var marker2$
|
|
2079
|
-
var symbol2$
|
|
2080
|
-
var _a2$
|
|
2081
|
-
var _b2$
|
|
2082
|
-
var
|
|
2083
|
-
constructor({ message
|
|
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$
|
|
2090
|
-
this.
|
|
2091
|
-
this.
|
|
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
|
|
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$
|
|
2127
|
-
var marker3$
|
|
2128
|
-
var symbol3$
|
|
2129
|
-
var
|
|
2130
|
-
var
|
|
2131
|
-
|
|
2132
|
-
|
|
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
|
-
|
|
2136
|
-
|
|
2137
|
-
cause
|
|
2209
|
+
name: name2$8,
|
|
2210
|
+
message
|
|
2138
2211
|
});
|
|
2139
|
-
this[_a3$
|
|
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
|
|
2215
|
+
return AISDKError$4.hasMarker(error, marker3$8);
|
|
2146
2216
|
}
|
|
2147
|
-
};
|
|
2148
|
-
|
|
2149
|
-
|
|
2150
|
-
|
|
2151
|
-
|
|
2152
|
-
|
|
2153
|
-
|
|
2154
|
-
|
|
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$
|
|
2161
|
-
this.
|
|
2162
|
-
|
|
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
|
|
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
|
|
2169
|
-
var
|
|
2170
|
-
var
|
|
2171
|
-
var
|
|
2172
|
-
var
|
|
2173
|
-
var
|
|
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$
|
|
2181
|
-
this.name = name4$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$
|
|
2584
|
+
return GatewayError.hasMarker(error) && symbol5$1$2 in error;
|
|
2186
2585
|
}
|
|
2187
2586
|
};
|
|
2188
|
-
var name5$1$
|
|
2189
|
-
var marker6$1$
|
|
2190
|
-
var symbol6$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$
|
|
2193
|
-
var _b6$
|
|
2194
|
-
var GatewayModelNotFoundError = class extends (_b6$
|
|
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$
|
|
2202
|
-
this.name = name5$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$
|
|
2606
|
+
return GatewayError.hasMarker(error) && symbol6$1$2 in error;
|
|
2208
2607
|
}
|
|
2209
2608
|
};
|
|
2210
|
-
var name6$1$
|
|
2211
|
-
var marker7$1$
|
|
2212
|
-
var symbol7$1$
|
|
2213
|
-
var _a7$1$
|
|
2214
|
-
var _b7$
|
|
2215
|
-
var GatewayInternalServerError = class extends (_b7$
|
|
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$
|
|
2223
|
-
this.name = name6$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$
|
|
2626
|
+
return GatewayError.hasMarker(error) && symbol7$1$2 in error;
|
|
2228
2627
|
}
|
|
2229
2628
|
};
|
|
2230
|
-
var name7$1$
|
|
2231
|
-
var marker8$1$
|
|
2232
|
-
var symbol8$1$
|
|
2233
|
-
var _a8$1$
|
|
2234
|
-
var _b8$
|
|
2235
|
-
var GatewayResponseError = class extends (_b8$
|
|
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$
|
|
2243
|
-
this.name = name7$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$
|
|
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$
|
|
2336
|
-
var marker9$1$
|
|
2337
|
-
var symbol9$1$
|
|
2338
|
-
var _a9$1$
|
|
2339
|
-
var _b9$
|
|
2340
|
-
var GatewayTimeoutError = class _GatewayTimeoutError extends (_b9$
|
|
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$
|
|
2348
|
-
this.name = name8$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$
|
|
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$
|
|
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$
|
|
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$
|
|
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
|
|
5031
|
-
var marker$1
|
|
5032
|
-
var symbol$
|
|
5033
|
-
var _a$
|
|
5034
|
-
var _b$
|
|
5035
|
-
var AISDKError$1 = class _AISDKError extends (_b$
|
|
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$
|
|
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
|
|
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$
|
|
5064
|
-
var marker2$4 = `vercel.ai.error.${name$
|
|
5065
|
-
var symbol2$4 = Symbol.for(marker2$4);
|
|
5066
|
-
var _a2$4;
|
|
5067
|
-
var _b2$
|
|
5068
|
-
(class extends (_b2$
|
|
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$
|
|
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$
|
|
5090
|
-
var symbol3$
|
|
5091
|
-
var _a3$
|
|
5092
|
-
var _b3$1;
|
|
5093
|
-
(class extends (_b3$1 = AISDKError$1, _a3$
|
|
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$
|
|
5498
|
+
this[_a3$1$1] = true;
|
|
5100
5499
|
}
|
|
5101
5500
|
static isInstance(error) {
|
|
5102
|
-
return AISDKError$1.hasMarker(error, marker3$
|
|
5501
|
+
return AISDKError$1.hasMarker(error, marker3$1$4);
|
|
5103
5502
|
}
|
|
5104
5503
|
});
|
|
5105
|
-
function getErrorMessage$
|
|
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$
|
|
5112
|
-
var marker4$
|
|
5113
|
-
var symbol4$
|
|
5114
|
-
var _a4$
|
|
5115
|
-
var _b4$1;
|
|
5116
|
-
var InvalidArgumentError$1 = class extends (_b4$1 = AISDKError$1, _a4$
|
|
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$
|
|
5518
|
+
name: name3$1$1,
|
|
5120
5519
|
message,
|
|
5121
5520
|
cause
|
|
5122
5521
|
});
|
|
5123
|
-
this[_a4$
|
|
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$
|
|
5526
|
+
return AISDKError$1.hasMarker(error, marker4$1$1);
|
|
5128
5527
|
}
|
|
5129
5528
|
};
|
|
5130
|
-
var name4$
|
|
5131
|
-
var marker5$
|
|
5132
|
-
var symbol5$
|
|
5133
|
-
var _a5$
|
|
5134
|
-
var _b5$1;
|
|
5135
|
-
(class extends (_b5$1 = AISDKError$1, _a5$
|
|
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$
|
|
5537
|
+
name: name4$1$1,
|
|
5139
5538
|
message: `Invalid prompt: ${message}`,
|
|
5140
5539
|
cause
|
|
5141
5540
|
});
|
|
5142
|
-
this[_a5$
|
|
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$
|
|
5545
|
+
return AISDKError$1.hasMarker(error, marker5$1$1);
|
|
5147
5546
|
}
|
|
5148
5547
|
});
|
|
5149
|
-
var name5$
|
|
5150
|
-
var marker6$
|
|
5151
|
-
var symbol6$
|
|
5152
|
-
var _a6$
|
|
5153
|
-
var _b6$1;
|
|
5154
|
-
(class extends (_b6$1 = AISDKError$1, _a6$
|
|
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$
|
|
5556
|
+
name: name5$1$1,
|
|
5158
5557
|
message
|
|
5159
5558
|
});
|
|
5160
|
-
this[_a6$
|
|
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$
|
|
5563
|
+
return AISDKError$1.hasMarker(error, marker6$1$1);
|
|
5165
5564
|
}
|
|
5166
5565
|
});
|
|
5167
|
-
var name6$
|
|
5168
|
-
var marker7$
|
|
5169
|
-
var symbol7$
|
|
5170
|
-
var _a7$
|
|
5171
|
-
var _b7$1;
|
|
5172
|
-
var JSONParseError$1 = class extends (_b7$1 = AISDKError$1, _a7$
|
|
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$
|
|
5574
|
+
name: name6$1$1,
|
|
5176
5575
|
message: `JSON parsing failed: Text: ${text}.
|
|
5177
|
-
Error message: ${getErrorMessage$
|
|
5576
|
+
Error message: ${getErrorMessage$2(cause)}`,
|
|
5178
5577
|
cause
|
|
5179
5578
|
});
|
|
5180
|
-
this[_a7$
|
|
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$
|
|
5583
|
+
return AISDKError$1.hasMarker(error, marker7$1$1);
|
|
5185
5584
|
}
|
|
5186
5585
|
};
|
|
5187
|
-
var name7$
|
|
5188
|
-
var marker8$
|
|
5189
|
-
var symbol8$
|
|
5190
|
-
var _a8$
|
|
5191
|
-
var _b8$1;
|
|
5192
|
-
(class extends (_b8$1 = AISDKError$1, _a8$
|
|
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$
|
|
5594
|
+
name: name7$1$1,
|
|
5196
5595
|
message
|
|
5197
5596
|
});
|
|
5198
|
-
this[_a8$
|
|
5597
|
+
this[_a8$1$1] = true;
|
|
5199
5598
|
}
|
|
5200
5599
|
static isInstance(error) {
|
|
5201
|
-
return AISDKError$1.hasMarker(error, marker8$
|
|
5600
|
+
return AISDKError$1.hasMarker(error, marker8$1$1);
|
|
5202
5601
|
}
|
|
5203
5602
|
});
|
|
5204
|
-
var name8$
|
|
5205
|
-
var marker9$
|
|
5206
|
-
var symbol9$
|
|
5207
|
-
var _a9$
|
|
5208
|
-
var _b9$1;
|
|
5209
|
-
(class extends (_b9$1 = AISDKError$1, _a9$
|
|
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$
|
|
5611
|
+
name: name8$1$1,
|
|
5213
5612
|
message
|
|
5214
5613
|
});
|
|
5215
|
-
this[_a9$
|
|
5614
|
+
this[_a9$1$1] = true;
|
|
5216
5615
|
}
|
|
5217
5616
|
static isInstance(error) {
|
|
5218
|
-
return AISDKError$1.hasMarker(error, marker9$
|
|
5617
|
+
return AISDKError$1.hasMarker(error, marker9$1$1);
|
|
5219
5618
|
}
|
|
5220
5619
|
});
|
|
5221
|
-
var name9$
|
|
5222
|
-
var marker10$
|
|
5223
|
-
var symbol10$
|
|
5224
|
-
var _a10$
|
|
5225
|
-
var _b10$1;
|
|
5226
|
-
(class extends (_b10$1 = AISDKError$1, _a10$
|
|
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$
|
|
5628
|
+
name: name9$1$1,
|
|
5230
5629
|
message
|
|
5231
5630
|
});
|
|
5232
|
-
this[_a10$
|
|
5631
|
+
this[_a10$1$1] = true;
|
|
5233
5632
|
}
|
|
5234
5633
|
static isInstance(error) {
|
|
5235
|
-
return AISDKError$1.hasMarker(error, marker10$
|
|
5634
|
+
return AISDKError$1.hasMarker(error, marker10$1$1);
|
|
5236
5635
|
}
|
|
5237
5636
|
});
|
|
5238
|
-
var name10$
|
|
5239
|
-
var marker11$
|
|
5240
|
-
var symbol11$
|
|
5241
|
-
var _a11$
|
|
5242
|
-
var _b11$1;
|
|
5243
|
-
(class extends (_b11$1 = AISDKError$1, _a11$
|
|
5244
|
-
constructor({ errorName = name10$
|
|
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$
|
|
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$
|
|
5653
|
+
return AISDKError$1.hasMarker(error, marker11$1$1);
|
|
5255
5654
|
}
|
|
5256
5655
|
});
|
|
5257
|
-
var name11$
|
|
5258
|
-
var marker12$
|
|
5259
|
-
var symbol12$
|
|
5260
|
-
var _a12$
|
|
5261
|
-
var _b12$1;
|
|
5262
|
-
(class extends (_b12$1 = AISDKError$1, _a12$
|
|
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$
|
|
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$
|
|
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$
|
|
5674
|
+
return AISDKError$1.hasMarker(error, marker12$1$1);
|
|
5276
5675
|
}
|
|
5277
5676
|
});
|
|
5278
|
-
var name12$
|
|
5279
|
-
var marker13$
|
|
5280
|
-
var symbol13$
|
|
5281
|
-
var _a13$
|
|
5282
|
-
var _b13$1;
|
|
5283
|
-
var TypeValidationError$1 = class _TypeValidationError extends (_b13$1 = AISDKError$1, _a13$
|
|
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$
|
|
5695
|
+
name: name12$1$1,
|
|
5297
5696
|
message: `${contextPrefix}: Value: ${JSON.stringify(value)}.
|
|
5298
|
-
Error message: ${getErrorMessage$
|
|
5697
|
+
Error message: ${getErrorMessage$2(cause)}`,
|
|
5299
5698
|
cause
|
|
5300
5699
|
});
|
|
5301
|
-
this[_a13$
|
|
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$
|
|
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$
|
|
5330
|
-
var marker14$
|
|
5331
|
-
var symbol14$
|
|
5332
|
-
var _a14$
|
|
5333
|
-
var _b14$1;
|
|
5334
|
-
(class extends (_b14$1 = AISDKError$1, _a14$
|
|
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$
|
|
5736
|
+
name: name13$1$1,
|
|
5338
5737
|
message
|
|
5339
5738
|
});
|
|
5340
|
-
this[_a14$
|
|
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$
|
|
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$
|
|
5350
|
-
var marker$
|
|
5351
|
-
var symbol$
|
|
5352
|
-
var _a$
|
|
5353
|
-
var _b$
|
|
5354
|
-
(class extends (_b$
|
|
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$
|
|
5756
|
+
name: name$1$4,
|
|
5358
5757
|
message,
|
|
5359
5758
|
cause
|
|
5360
5759
|
});
|
|
5361
|
-
this[_a$
|
|
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$
|
|
5766
|
+
return AISDKError$1.hasMarker(error, marker$1$3);
|
|
5368
5767
|
}
|
|
5369
5768
|
});
|
|
5370
|
-
var initialGlobalFetch
|
|
5371
|
-
isNodeDefaultFetch
|
|
5372
|
-
function isNodeDefaultFetch
|
|
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
|
-
|
|
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
|
-
|
|
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
|
-
|
|
6500
|
-
|
|
6501
|
-
|
|
6502
|
-
|
|
6503
|
-
|
|
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$
|
|
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$
|
|
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$
|
|
7321
|
-
var symbol16$
|
|
7322
|
-
var _a16$
|
|
7323
|
-
var UIMessageStreamError$1 = class extends AISDKError$
|
|
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$
|
|
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$
|
|
8050
|
+
return AISDKError$2.hasMarker(error, marker16$2);
|
|
7335
8051
|
}
|
|
7336
8052
|
};
|
|
7337
|
-
_a16$
|
|
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$
|
|
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$
|
|
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-
|
|
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:
|
|
9539
|
+
constructor({ name: name16, message, cause }) {
|
|
8824
9540
|
super(message);
|
|
8825
9541
|
this[_a$1] = true;
|
|
8826
|
-
this.name =
|
|
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,
|
|
8838
|
-
const markerSymbol = Symbol.for(
|
|
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
|
-
|
|
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
|
-
|
|
8896
|
-
constructor({
|
|
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.
|
|
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
|
-
|
|
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
|
-
|
|
8915
|
-
constructor({
|
|
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
|
|
9636
|
+
message,
|
|
8919
9637
|
cause
|
|
8920
9638
|
});
|
|
8921
9639
|
this[_a5$1] = true;
|
|
8922
|
-
this.
|
|
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 = "
|
|
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({
|
|
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.
|
|
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 = "
|
|
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
|
-
|
|
8952
|
-
constructor({
|
|
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
|
|
8956
|
-
Error message: ${getErrorMessage(cause)}`,
|
|
8957
|
-
cause
|
|
9674
|
+
message
|
|
8958
9675
|
});
|
|
8959
9676
|
this[_a7$1] = true;
|
|
8960
|
-
this.
|
|
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 = "
|
|
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
|
-
|
|
8972
|
-
constructor({
|
|
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 = "
|
|
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 = "
|
|
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
|
|
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 = "
|
|
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({
|
|
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:
|
|
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 = "
|
|
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
|
-
|
|
9042
|
-
constructor({
|
|
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:
|
|
9762
|
+
name: errorName,
|
|
9045
9763
|
message
|
|
9046
9764
|
});
|
|
9047
9765
|
this[_a12$1] = true;
|
|
9048
|
-
this.
|
|
9049
|
-
this.
|
|
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 = "
|
|
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:
|
|
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[
|
|
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,
|
|
9810
|
+
return AISDKError.hasMarker(error, marker14$1);
|
|
9074
9811
|
}
|
|
9075
9812
|
});
|
|
9076
|
-
var
|
|
9077
|
-
var
|
|
9078
|
-
var
|
|
9079
|
-
var
|
|
9080
|
-
var
|
|
9081
|
-
var TypeValidationError = class _TypeValidationError extends (
|
|
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:
|
|
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[
|
|
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,
|
|
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
|
|
9119
|
-
if (_TypeValidationError.isInstance(cause) && cause.value === value && ((
|
|
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
|
|
9128
|
-
var
|
|
9129
|
-
var
|
|
9130
|
-
var
|
|
9131
|
-
var
|
|
9132
|
-
(class extends (
|
|
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:
|
|
9872
|
+
name: name15$1,
|
|
9136
9873
|
message
|
|
9137
9874
|
});
|
|
9138
|
-
this[
|
|
9875
|
+
this[_a16$1] = true;
|
|
9139
9876
|
this.functionality = functionality;
|
|
9140
9877
|
}
|
|
9141
9878
|
static isInstance(error) {
|
|
9142
|
-
return AISDKError.hasMarker(error,
|
|
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
|
|
9150
|
-
var symbol$2 = Symbol.for(
|
|
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,
|
|
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
|
-
|
|
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(
|
|
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
|
|
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
|
|
10308
|
-
var symbol2$2 = Symbol.for(
|
|
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,
|
|
11486
|
+
return AISDKError.hasMarker(error, marker21);
|
|
10322
11487
|
}
|
|
10323
11488
|
});
|
|
10324
|
-
|
|
10325
|
-
|
|
10326
|
-
var
|
|
10327
|
-
var
|
|
10328
|
-
|
|
10329
|
-
|
|
10330
|
-
|
|
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:
|
|
10341
|
-
message
|
|
10342
|
-
cause
|
|
11497
|
+
name: name22,
|
|
11498
|
+
message
|
|
10343
11499
|
});
|
|
10344
|
-
this[
|
|
10345
|
-
this.
|
|
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,
|
|
11504
|
+
return AISDKError.hasMarker(error, marker22);
|
|
10352
11505
|
}
|
|
10353
|
-
};
|
|
10354
|
-
|
|
10355
|
-
var
|
|
10356
|
-
var
|
|
10357
|
-
var
|
|
10358
|
-
var
|
|
10359
|
-
|
|
10360
|
-
constructor({
|
|
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:
|
|
11515
|
+
name: name23,
|
|
10363
11516
|
message
|
|
10364
11517
|
});
|
|
10365
|
-
this[
|
|
10366
|
-
this.
|
|
10367
|
-
this.
|
|
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,
|
|
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
|
|
10394
|
-
|
|
10395
|
-
|
|
10396
|
-
|
|
10397
|
-
|
|
10398
|
-
|
|
10399
|
-
|
|
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: () =>
|
|
11860
|
+
array: () => array2,
|
|
10640
11861
|
choice: () => choice,
|
|
10641
11862
|
json: () => json,
|
|
10642
|
-
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
|
|
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((
|
|
12164
|
+
responseFormat: resolve(schema.jsonSchema).then((jsonSchema3) => ({
|
|
10944
12165
|
type: "json",
|
|
10945
|
-
schema:
|
|
10946
|
-
...
|
|
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
|
|
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((
|
|
10990
|
-
const { $schema: _$schema, ...itemSchema } =
|
|
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
|
-
...
|
|
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++)
|
|
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
|
-
|
|
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
|
-
...
|
|
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:
|
|
12420
|
+
var json = ({ name: name25, description } = {}) => {
|
|
11138
12421
|
return {
|
|
11139
12422
|
name: "json",
|
|
11140
12423
|
responseFormat: Promise.resolve({
|
|
11141
12424
|
type: "json",
|
|
11142
|
-
...
|
|
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
|
|
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
|
|
11285
|
-
return ((
|
|
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
|
|
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 = (
|
|
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
|
|
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 = (
|
|
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 = (
|
|
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 = (
|
|
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 = (
|
|
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
|
|
11595
|
-
|
|
11596
|
-
|
|
11597
|
-
|
|
11598
|
-
|
|
11599
|
-
|
|
11600
|
-
|
|
11601
|
-
|
|
11602
|
-
|
|
11603
|
-
|
|
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
|
-
|
|
11759
|
-
|
|
11760
|
-
if (
|
|
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
|
-
|
|
11774
|
-
|
|
11775
|
-
|
|
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:
|
|
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
|
-
|
|
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
|
-
|
|
11872
|
-
type: "error",
|
|
11873
|
-
errorText: onError(error)
|
|
11874
|
-
});
|
|
13232
|
+
handleError(error);
|
|
11875
13233
|
}));
|
|
11876
13234
|
} catch (error) {
|
|
11877
|
-
|
|
11878
|
-
type: "error",
|
|
11879
|
-
errorText: onError(error)
|
|
11880
|
-
});
|
|
13235
|
+
handleError(error);
|
|
11881
13236
|
}
|
|
11882
|
-
|
|
13237
|
+
(async () => {
|
|
11883
13238
|
while (ongoingStreamPromises.length > 0) await ongoingStreamPromises.shift();
|
|
11884
|
-
|
|
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:
|
|
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
|