ai 4.3.7 → 4.3.9
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/CHANGELOG.md +12 -0
- package/dist/index.js +53 -38
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +18 -3
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
- package/rsc/dist/rsc-server.mjs +18 -3
- package/rsc/dist/rsc-server.mjs.map +1 -1
package/CHANGELOG.md
CHANGED
package/dist/index.js
CHANGED
@@ -63,7 +63,7 @@ __export(streams_exports, {
|
|
63
63
|
cosineSimilarity: () => cosineSimilarity,
|
64
64
|
createDataStream: () => createDataStream,
|
65
65
|
createDataStreamResponse: () => createDataStreamResponse,
|
66
|
-
createIdGenerator: () =>
|
66
|
+
createIdGenerator: () => import_provider_utils16.createIdGenerator,
|
67
67
|
createProviderRegistry: () => createProviderRegistry,
|
68
68
|
customProvider: () => customProvider,
|
69
69
|
defaultSettingsMiddleware: () => defaultSettingsMiddleware,
|
@@ -79,7 +79,7 @@ __export(streams_exports, {
|
|
79
79
|
extractReasoningMiddleware: () => extractReasoningMiddleware,
|
80
80
|
formatAssistantStreamPart: () => import_ui_utils11.formatAssistantStreamPart,
|
81
81
|
formatDataStreamPart: () => import_ui_utils11.formatDataStreamPart,
|
82
|
-
generateId: () =>
|
82
|
+
generateId: () => import_provider_utils16.generateId,
|
83
83
|
generateObject: () => generateObject,
|
84
84
|
generateText: () => generateText,
|
85
85
|
jsonSchema: () => import_ui_utils11.jsonSchema,
|
@@ -100,7 +100,7 @@ __export(streams_exports, {
|
|
100
100
|
module.exports = __toCommonJS(streams_exports);
|
101
101
|
|
102
102
|
// core/index.ts
|
103
|
-
var
|
103
|
+
var import_provider_utils16 = require("@ai-sdk/provider-utils");
|
104
104
|
var import_ui_utils11 = require("@ai-sdk/ui-utils");
|
105
105
|
|
106
106
|
// core/data-stream/create-data-stream.ts
|
@@ -945,6 +945,7 @@ var DefaultGeneratedFileWithType = class extends DefaultGeneratedFile {
|
|
945
945
|
};
|
946
946
|
|
947
947
|
// core/util/detect-mimetype.ts
|
948
|
+
var import_provider_utils3 = require("@ai-sdk/provider-utils");
|
948
949
|
var imageMimeTypeSignatures = [
|
949
950
|
{
|
950
951
|
mimeType: "image/gif",
|
@@ -1050,12 +1051,26 @@ var audioMimeTypeSignatures = [
|
|
1050
1051
|
base64Prefix: "ZnR5cA"
|
1051
1052
|
}
|
1052
1053
|
];
|
1054
|
+
var stripID3 = (data) => {
|
1055
|
+
const bytes = typeof data === "string" ? (0, import_provider_utils3.convertBase64ToUint8Array)(data) : data;
|
1056
|
+
const id3Size = (bytes[6] & 127) << 21 | (bytes[7] & 127) << 14 | (bytes[8] & 127) << 7 | bytes[9] & 127;
|
1057
|
+
return bytes.slice(id3Size + 10);
|
1058
|
+
};
|
1059
|
+
function stripID3TagsIfPresent(data) {
|
1060
|
+
const hasId3 = typeof data === "string" && data.startsWith("SUQz") || typeof data !== "string" && data.length > 10 && data[0] === 73 && // 'I'
|
1061
|
+
data[1] === 68 && // 'D'
|
1062
|
+
data[2] === 51;
|
1063
|
+
return hasId3 ? stripID3(data) : data;
|
1064
|
+
}
|
1053
1065
|
function detectMimeType({
|
1054
1066
|
data,
|
1055
1067
|
signatures
|
1056
1068
|
}) {
|
1069
|
+
const processedData = stripID3TagsIfPresent(data);
|
1057
1070
|
for (const signature of signatures) {
|
1058
|
-
if (typeof
|
1071
|
+
if (typeof processedData === "string" ? processedData.startsWith(signature.base64Prefix) : processedData.length >= signature.bytesPrefix.length && signature.bytesPrefix.every(
|
1072
|
+
(byte, index) => processedData[index] === byte
|
1073
|
+
)) {
|
1059
1074
|
return signature.mimeType;
|
1060
1075
|
}
|
1061
1076
|
}
|
@@ -1141,7 +1156,7 @@ var DefaultGenerateImageResult = class {
|
|
1141
1156
|
|
1142
1157
|
// core/generate-object/generate-object.ts
|
1143
1158
|
var import_provider12 = require("@ai-sdk/provider");
|
1144
|
-
var
|
1159
|
+
var import_provider_utils7 = require("@ai-sdk/provider-utils");
|
1145
1160
|
|
1146
1161
|
// errors/no-object-generated-error.ts
|
1147
1162
|
var import_provider5 = require("@ai-sdk/provider");
|
@@ -1223,7 +1238,7 @@ async function download({ url }) {
|
|
1223
1238
|
}
|
1224
1239
|
|
1225
1240
|
// core/prompt/data-content.ts
|
1226
|
-
var
|
1241
|
+
var import_provider_utils4 = require("@ai-sdk/provider-utils");
|
1227
1242
|
|
1228
1243
|
// core/prompt/invalid-data-content-error.ts
|
1229
1244
|
var import_provider7 = require("@ai-sdk/provider");
|
@@ -1267,9 +1282,9 @@ function convertDataContentToBase64String(content) {
|
|
1267
1282
|
return content;
|
1268
1283
|
}
|
1269
1284
|
if (content instanceof ArrayBuffer) {
|
1270
|
-
return (0,
|
1285
|
+
return (0, import_provider_utils4.convertUint8ArrayToBase64)(new Uint8Array(content));
|
1271
1286
|
}
|
1272
|
-
return (0,
|
1287
|
+
return (0, import_provider_utils4.convertUint8ArrayToBase64)(content);
|
1273
1288
|
}
|
1274
1289
|
function convertDataContentToUint8Array(content) {
|
1275
1290
|
if (content instanceof Uint8Array) {
|
@@ -1277,7 +1292,7 @@ function convertDataContentToUint8Array(content) {
|
|
1277
1292
|
}
|
1278
1293
|
if (typeof content === "string") {
|
1279
1294
|
try {
|
1280
|
-
return (0,
|
1295
|
+
return (0, import_provider_utils4.convertBase64ToUint8Array)(content);
|
1281
1296
|
} catch (error) {
|
1282
1297
|
throw new InvalidDataContentError({
|
1283
1298
|
message: "Invalid data content. Content string is not a base64-encoded media.",
|
@@ -1667,7 +1682,7 @@ function prepareCallSettings({
|
|
1667
1682
|
|
1668
1683
|
// core/prompt/standardize-prompt.ts
|
1669
1684
|
var import_provider10 = require("@ai-sdk/provider");
|
1670
|
-
var
|
1685
|
+
var import_provider_utils5 = require("@ai-sdk/provider-utils");
|
1671
1686
|
var import_zod7 = require("zod");
|
1672
1687
|
|
1673
1688
|
// core/prompt/attachments-to-parts.ts
|
@@ -2235,7 +2250,7 @@ function standardizePrompt({
|
|
2235
2250
|
message: "messages must not be empty"
|
2236
2251
|
});
|
2237
2252
|
}
|
2238
|
-
const validationResult = (0,
|
2253
|
+
const validationResult = (0, import_provider_utils5.safeValidateTypes)({
|
2239
2254
|
value: messages,
|
2240
2255
|
schema: import_zod7.z.array(coreMessageSchema)
|
2241
2256
|
});
|
@@ -2296,7 +2311,7 @@ function injectJsonInstruction({
|
|
2296
2311
|
|
2297
2312
|
// core/generate-object/output-strategy.ts
|
2298
2313
|
var import_provider11 = require("@ai-sdk/provider");
|
2299
|
-
var
|
2314
|
+
var import_provider_utils6 = require("@ai-sdk/provider-utils");
|
2300
2315
|
var import_ui_utils2 = require("@ai-sdk/ui-utils");
|
2301
2316
|
|
2302
2317
|
// core/util/async-iterable-stream.ts
|
@@ -2353,7 +2368,7 @@ var objectOutputStrategy = (schema) => ({
|
|
2353
2368
|
};
|
2354
2369
|
},
|
2355
2370
|
validateFinalResult(value) {
|
2356
|
-
return (0,
|
2371
|
+
return (0, import_provider_utils6.safeValidateTypes)({ value, schema });
|
2357
2372
|
},
|
2358
2373
|
createElementStream() {
|
2359
2374
|
throw new import_provider11.UnsupportedFunctionalityError({
|
@@ -2392,7 +2407,7 @@ var arrayOutputStrategy = (schema) => {
|
|
2392
2407
|
const resultArray = [];
|
2393
2408
|
for (let i = 0; i < inputArray.length; i++) {
|
2394
2409
|
const element = inputArray[i];
|
2395
|
-
const result = (0,
|
2410
|
+
const result = (0, import_provider_utils6.safeValidateTypes)({ value: element, schema });
|
2396
2411
|
if (i === inputArray.length - 1 && !isFinalDelta) {
|
2397
2412
|
continue;
|
2398
2413
|
}
|
@@ -2433,7 +2448,7 @@ var arrayOutputStrategy = (schema) => {
|
|
2433
2448
|
}
|
2434
2449
|
const inputArray = value.elements;
|
2435
2450
|
for (const element of inputArray) {
|
2436
|
-
const result = (0,
|
2451
|
+
const result = (0, import_provider_utils6.safeValidateTypes)({ value: element, schema });
|
2437
2452
|
if (!result.success) {
|
2438
2453
|
return result;
|
2439
2454
|
}
|
@@ -2666,7 +2681,7 @@ function validateObjectGenerationInput({
|
|
2666
2681
|
}
|
2667
2682
|
|
2668
2683
|
// core/generate-object/generate-object.ts
|
2669
|
-
var originalGenerateId = (0,
|
2684
|
+
var originalGenerateId = (0, import_provider_utils7.createIdGenerator)({ prefix: "aiobj", size: 24 });
|
2670
2685
|
async function generateObject({
|
2671
2686
|
model,
|
2672
2687
|
enum: enumValues,
|
@@ -2986,7 +3001,7 @@ async function generateObject({
|
|
2986
3001
|
}
|
2987
3002
|
}
|
2988
3003
|
function processResult(result2) {
|
2989
|
-
const parseResult = (0,
|
3004
|
+
const parseResult = (0, import_provider_utils7.safeParseJSON)({ text: result2 });
|
2990
3005
|
if (!parseResult.success) {
|
2991
3006
|
throw new NoObjectGeneratedError({
|
2992
3007
|
message: "No object generated: could not parse the response.",
|
@@ -3088,7 +3103,7 @@ var DefaultGenerateObjectResult = class {
|
|
3088
3103
|
};
|
3089
3104
|
|
3090
3105
|
// core/generate-object/stream-object.ts
|
3091
|
-
var
|
3106
|
+
var import_provider_utils8 = require("@ai-sdk/provider-utils");
|
3092
3107
|
var import_ui_utils3 = require("@ai-sdk/ui-utils");
|
3093
3108
|
|
3094
3109
|
// util/delayed-promise.ts
|
@@ -3233,7 +3248,7 @@ function now() {
|
|
3233
3248
|
}
|
3234
3249
|
|
3235
3250
|
// core/generate-object/stream-object.ts
|
3236
|
-
var originalGenerateId2 = (0,
|
3251
|
+
var originalGenerateId2 = (0, import_provider_utils8.createIdGenerator)({ prefix: "aiobj", size: 24 });
|
3237
3252
|
function streamObject({
|
3238
3253
|
model,
|
3239
3254
|
schema: inputSchema,
|
@@ -3805,7 +3820,7 @@ var DefaultStreamObjectResult = class {
|
|
3805
3820
|
};
|
3806
3821
|
|
3807
3822
|
// core/generate-text/generate-text.ts
|
3808
|
-
var
|
3823
|
+
var import_provider_utils10 = require("@ai-sdk/provider-utils");
|
3809
3824
|
|
3810
3825
|
// errors/no-output-specified-error.ts
|
3811
3826
|
var import_provider13 = require("@ai-sdk/provider");
|
@@ -3917,7 +3932,7 @@ function removeTextAfterLastWhitespace(text2) {
|
|
3917
3932
|
}
|
3918
3933
|
|
3919
3934
|
// core/generate-text/parse-tool-call.ts
|
3920
|
-
var
|
3935
|
+
var import_provider_utils9 = require("@ai-sdk/provider-utils");
|
3921
3936
|
var import_ui_utils5 = require("@ai-sdk/ui-utils");
|
3922
3937
|
|
3923
3938
|
// errors/invalid-tool-arguments-error.ts
|
@@ -4043,7 +4058,7 @@ async function doParseToolCall({
|
|
4043
4058
|
});
|
4044
4059
|
}
|
4045
4060
|
const schema = (0, import_ui_utils5.asSchema)(tool2.parameters);
|
4046
|
-
const parseResult = toolCall.args.trim() === "" ? (0,
|
4061
|
+
const parseResult = toolCall.args.trim() === "" ? (0, import_provider_utils9.safeValidateTypes)({ value: {}, schema }) : (0, import_provider_utils9.safeParseJSON)({ text: toolCall.args, schema });
|
4047
4062
|
if (parseResult.success === false) {
|
4048
4063
|
throw new InvalidToolArgumentsError({
|
4049
4064
|
toolName,
|
@@ -4134,11 +4149,11 @@ function toResponseMessages({
|
|
4134
4149
|
}
|
4135
4150
|
|
4136
4151
|
// core/generate-text/generate-text.ts
|
4137
|
-
var originalGenerateId3 = (0,
|
4152
|
+
var originalGenerateId3 = (0, import_provider_utils10.createIdGenerator)({
|
4138
4153
|
prefix: "aitxt",
|
4139
4154
|
size: 24
|
4140
4155
|
});
|
4141
|
-
var originalGenerateMessageId = (0,
|
4156
|
+
var originalGenerateMessageId = (0, import_provider_utils10.createIdGenerator)({
|
4142
4157
|
prefix: "msg",
|
4143
4158
|
size: 24
|
4144
4159
|
});
|
@@ -4604,7 +4619,7 @@ __export(output_exports, {
|
|
4604
4619
|
object: () => object,
|
4605
4620
|
text: () => text
|
4606
4621
|
});
|
4607
|
-
var
|
4622
|
+
var import_provider_utils11 = require("@ai-sdk/provider-utils");
|
4608
4623
|
var import_ui_utils6 = require("@ai-sdk/ui-utils");
|
4609
4624
|
|
4610
4625
|
// errors/index.ts
|
@@ -4701,7 +4716,7 @@ var object = ({
|
|
4701
4716
|
}
|
4702
4717
|
},
|
4703
4718
|
parseOutput({ text: text2 }, context) {
|
4704
|
-
const parseResult = (0,
|
4719
|
+
const parseResult = (0, import_provider_utils11.safeParseJSON)({ text: text2 });
|
4705
4720
|
if (!parseResult.success) {
|
4706
4721
|
throw new NoObjectGeneratedError({
|
4707
4722
|
message: "No object generated: could not parse the response.",
|
@@ -4712,7 +4727,7 @@ var object = ({
|
|
4712
4727
|
finishReason: context.finishReason
|
4713
4728
|
});
|
4714
4729
|
}
|
4715
|
-
const validationResult = (0,
|
4730
|
+
const validationResult = (0, import_provider_utils11.safeValidateTypes)({
|
4716
4731
|
value: parseResult.value,
|
4717
4732
|
schema
|
4718
4733
|
});
|
@@ -4732,7 +4747,7 @@ var object = ({
|
|
4732
4747
|
};
|
4733
4748
|
|
4734
4749
|
// core/generate-text/smooth-stream.ts
|
4735
|
-
var
|
4750
|
+
var import_provider_utils12 = require("@ai-sdk/provider-utils");
|
4736
4751
|
var import_provider21 = require("@ai-sdk/provider");
|
4737
4752
|
var CHUNKING_REGEXPS = {
|
4738
4753
|
word: /\S+\s+/m,
|
@@ -4741,7 +4756,7 @@ var CHUNKING_REGEXPS = {
|
|
4741
4756
|
function smoothStream({
|
4742
4757
|
delayInMs = 10,
|
4743
4758
|
chunking = "word",
|
4744
|
-
_internal: { delay: delay2 =
|
4759
|
+
_internal: { delay: delay2 = import_provider_utils12.delay } = {}
|
4745
4760
|
} = {}) {
|
4746
4761
|
let detectChunk;
|
4747
4762
|
if (typeof chunking === "function") {
|
@@ -4802,7 +4817,7 @@ function smoothStream({
|
|
4802
4817
|
|
4803
4818
|
// core/generate-text/stream-text.ts
|
4804
4819
|
var import_provider22 = require("@ai-sdk/provider");
|
4805
|
-
var
|
4820
|
+
var import_provider_utils13 = require("@ai-sdk/provider-utils");
|
4806
4821
|
var import_ui_utils8 = require("@ai-sdk/ui-utils");
|
4807
4822
|
|
4808
4823
|
// util/as-array.ts
|
@@ -5121,11 +5136,11 @@ function runToolsTransformation({
|
|
5121
5136
|
}
|
5122
5137
|
|
5123
5138
|
// core/generate-text/stream-text.ts
|
5124
|
-
var originalGenerateId4 = (0,
|
5139
|
+
var originalGenerateId4 = (0, import_provider_utils13.createIdGenerator)({
|
5125
5140
|
prefix: "aitxt",
|
5126
5141
|
size: 24
|
5127
5142
|
});
|
5128
|
-
var originalGenerateMessageId2 = (0,
|
5143
|
+
var originalGenerateMessageId2 = (0, import_provider_utils13.createIdGenerator)({
|
5129
5144
|
prefix: "msg",
|
5130
5145
|
size: 24
|
5131
5146
|
});
|
@@ -7150,7 +7165,7 @@ function tool(tool2) {
|
|
7150
7165
|
}
|
7151
7166
|
|
7152
7167
|
// core/tool/mcp/mcp-sse-transport.ts
|
7153
|
-
var
|
7168
|
+
var import_provider_utils14 = require("@ai-sdk/provider-utils");
|
7154
7169
|
|
7155
7170
|
// core/tool/mcp/json-rpc-message.ts
|
7156
7171
|
var import_zod9 = require("zod");
|
@@ -7321,7 +7336,7 @@ var SseMCPTransport = class {
|
|
7321
7336
|
(_b = this.onerror) == null ? void 0 : _b.call(this, error);
|
7322
7337
|
return reject(error);
|
7323
7338
|
}
|
7324
|
-
const stream = response.body.pipeThrough(new TextDecoderStream()).pipeThrough((0,
|
7339
|
+
const stream = response.body.pipeThrough(new TextDecoderStream()).pipeThrough((0, import_provider_utils14.createEventSourceParserStream)());
|
7325
7340
|
const reader = stream.getReader();
|
7326
7341
|
const processEvents = async () => {
|
7327
7342
|
var _a18, _b2, _c2;
|
@@ -7733,7 +7748,7 @@ function cosineSimilarity(vector1, vector2, options) {
|
|
7733
7748
|
}
|
7734
7749
|
|
7735
7750
|
// core/util/simulate-readable-stream.ts
|
7736
|
-
var
|
7751
|
+
var import_provider_utils15 = require("@ai-sdk/provider-utils");
|
7737
7752
|
function simulateReadableStream({
|
7738
7753
|
chunks,
|
7739
7754
|
initialDelayInMs = 0,
|
@@ -7741,7 +7756,7 @@ function simulateReadableStream({
|
|
7741
7756
|
_internal
|
7742
7757
|
}) {
|
7743
7758
|
var _a17;
|
7744
|
-
const delay2 = (_a17 = _internal == null ? void 0 : _internal.delay) != null ? _a17 :
|
7759
|
+
const delay2 = (_a17 = _internal == null ? void 0 : _internal.delay) != null ? _a17 : import_provider_utils15.delay;
|
7745
7760
|
let index = 0;
|
7746
7761
|
return new ReadableStream({
|
7747
7762
|
async pull(controller) {
|
@@ -7965,11 +7980,11 @@ __export(llamaindex_adapter_exports, {
|
|
7965
7980
|
toDataStream: () => toDataStream2,
|
7966
7981
|
toDataStreamResponse: () => toDataStreamResponse2
|
7967
7982
|
});
|
7968
|
-
var
|
7983
|
+
var import_provider_utils17 = require("@ai-sdk/provider-utils");
|
7969
7984
|
var import_ui_utils14 = require("@ai-sdk/ui-utils");
|
7970
7985
|
function toDataStreamInternal2(stream, callbacks) {
|
7971
7986
|
const trimStart = trimStartOfStream();
|
7972
|
-
return (0,
|
7987
|
+
return (0, import_provider_utils17.convertAsyncIteratorToReadableStream)(stream[Symbol.asyncIterator]()).pipeThrough(
|
7973
7988
|
new TransformStream({
|
7974
7989
|
async transform(message, controller) {
|
7975
7990
|
controller.enqueue(trimStart(message.delta));
|