ai 5.0.0-beta.20 → 5.0.0-beta.21
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 +10 -0
- package/dist/bin/ai.js +208 -186
- package/dist/bin/ai.js.map +1 -1
- package/dist/bin/ai.min.js +35 -48
- package/dist/index.d.mts +19 -4
- package/dist/index.d.ts +19 -4
- package/dist/index.js +63 -35
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +63 -35
- package/dist/index.mjs.map +1 -1
- package/dist/internal/index.js.map +1 -1
- package/dist/internal/index.mjs.map +1 -1
- package/package.json +1 -1
package/dist/index.d.ts
CHANGED
@@ -1253,6 +1253,10 @@ type TextUIPart = {
|
|
1253
1253
|
* The state of the text part.
|
1254
1254
|
*/
|
1255
1255
|
state?: 'streaming' | 'done';
|
1256
|
+
/**
|
1257
|
+
* The provider metadata.
|
1258
|
+
*/
|
1259
|
+
providerMetadata?: ProviderMetadata;
|
1256
1260
|
};
|
1257
1261
|
/**
|
1258
1262
|
* A reasoning part of a message.
|
@@ -1270,7 +1274,7 @@ type ReasoningUIPart = {
|
|
1270
1274
|
/**
|
1271
1275
|
* The provider metadata.
|
1272
1276
|
*/
|
1273
|
-
providerMetadata?:
|
1277
|
+
providerMetadata?: ProviderMetadata;
|
1274
1278
|
};
|
1275
1279
|
/**
|
1276
1280
|
* A source part of a message.
|
@@ -1280,7 +1284,7 @@ type SourceUrlUIPart = {
|
|
1280
1284
|
sourceId: string;
|
1281
1285
|
url: string;
|
1282
1286
|
title?: string;
|
1283
|
-
providerMetadata?:
|
1287
|
+
providerMetadata?: ProviderMetadata;
|
1284
1288
|
};
|
1285
1289
|
/**
|
1286
1290
|
* A document source part of a message.
|
@@ -1291,7 +1295,7 @@ type SourceDocumentUIPart = {
|
|
1291
1295
|
mediaType: string;
|
1292
1296
|
title: string;
|
1293
1297
|
filename?: string;
|
1294
|
-
providerMetadata?:
|
1298
|
+
providerMetadata?: ProviderMetadata;
|
1295
1299
|
};
|
1296
1300
|
/**
|
1297
1301
|
* A file part of a message.
|
@@ -1313,6 +1317,10 @@ type FileUIPart = {
|
|
1313
1317
|
* It can either be a URL to a hosted file or a [Data URL](https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/Data_URLs).
|
1314
1318
|
*/
|
1315
1319
|
url: string;
|
1320
|
+
/**
|
1321
|
+
* The provider metadata.
|
1322
|
+
*/
|
1323
|
+
providerMetadata?: ProviderMetadata;
|
1316
1324
|
};
|
1317
1325
|
/**
|
1318
1326
|
* A step boundary part of a message.
|
@@ -1343,18 +1351,21 @@ type ToolUIPart<TOOLS extends UITools = UITools> = ValueOf<{
|
|
1343
1351
|
providerExecuted?: boolean;
|
1344
1352
|
output?: never;
|
1345
1353
|
errorText?: never;
|
1354
|
+
callProviderMetadata?: ProviderMetadata;
|
1346
1355
|
} | {
|
1347
1356
|
state: 'output-available';
|
1348
1357
|
input: TOOLS[NAME]['input'];
|
1349
1358
|
output: TOOLS[NAME]['output'];
|
1350
1359
|
errorText?: never;
|
1351
1360
|
providerExecuted?: boolean;
|
1361
|
+
callProviderMetadata?: ProviderMetadata;
|
1352
1362
|
} | {
|
1353
1363
|
state: 'output-error';
|
1354
1364
|
input: TOOLS[NAME]['input'];
|
1355
1365
|
output?: never;
|
1356
1366
|
errorText: string;
|
1357
1367
|
providerExecuted?: boolean;
|
1368
|
+
callProviderMetadata?: ProviderMetadata;
|
1358
1369
|
});
|
1359
1370
|
}>;
|
1360
1371
|
declare function isToolUIPart<TOOLS extends UITools>(part: UIMessagePart<UIDataTypes, TOOLS>): part is ToolUIPart<TOOLS>;
|
@@ -1373,13 +1384,16 @@ type DataUIMessageChunk<DATA_TYPES extends UIDataTypes> = ValueOf<{
|
|
1373
1384
|
type UIMessageChunk<METADATA = unknown, DATA_TYPES extends UIDataTypes = UIDataTypes> = {
|
1374
1385
|
type: 'text-start';
|
1375
1386
|
id: string;
|
1387
|
+
providerMetadata?: ProviderMetadata;
|
1376
1388
|
} | {
|
1377
1389
|
type: 'text-delta';
|
1378
1390
|
delta: string;
|
1379
1391
|
id: string;
|
1392
|
+
providerMetadata?: ProviderMetadata;
|
1380
1393
|
} | {
|
1381
1394
|
type: 'text-end';
|
1382
1395
|
id: string;
|
1396
|
+
providerMetadata?: ProviderMetadata;
|
1383
1397
|
} | {
|
1384
1398
|
type: 'reasoning-start';
|
1385
1399
|
id: string;
|
@@ -1402,6 +1416,7 @@ type UIMessageChunk<METADATA = unknown, DATA_TYPES extends UIDataTypes = UIDataT
|
|
1402
1416
|
toolName: string;
|
1403
1417
|
input: unknown;
|
1404
1418
|
providerExecuted?: boolean;
|
1419
|
+
providerMetadata?: ProviderMetadata;
|
1405
1420
|
} | {
|
1406
1421
|
type: 'tool-output-available';
|
1407
1422
|
toolCallId: string;
|
@@ -3992,4 +4007,4 @@ declare global {
|
|
3992
4007
|
var AI_SDK_DEFAULT_PROVIDER: ProviderV2 | undefined;
|
3993
4008
|
}
|
3994
4009
|
|
3995
|
-
export { AbstractChat, CallSettings, CallWarning, ChatInit, ChatOnDataCallback, ChatOnErrorCallback, ChatOnFinishCallback, ChatOnToolCallCallback, ChatRequestOptions, ChatState, ChatStatus, ChatTransport, ChunkDetector, CompletionRequestOptions, CoreAssistantMessage, CoreMessage, CoreSystemMessage, CoreToolMessage, CoreUserMessage, CreateUIMessage, DataUIPart, DeepPartial, DefaultChatTransport, DownloadError, EmbedManyResult, EmbedResult, Embedding, EmbeddingModel, EmbeddingModelUsage, ErrorHandler, Agent as Experimental_Agent, AgentSettings as Experimental_AgentSettings, GenerateImageResult as Experimental_GenerateImageResult, GeneratedFile as Experimental_GeneratedImage, SpeechResult as Experimental_SpeechResult, TranscriptionResult as Experimental_TranscriptionResult, FileUIPart, FinishReason, GenerateObjectResult, GenerateTextOnStepFinishCallback, GenerateTextResult, GeneratedAudioFile, GeneratedFile, HttpChatTransport, HttpChatTransportInitOptions, ImageModel, ImageGenerationWarning as ImageModelCallWarning, ImageModelProviderMetadata, ImageModelResponseMetadata, InferUIDataParts, InferUITool, InferUITools, InvalidArgumentError, InvalidDataContentError, InvalidMessageRoleError, InvalidStreamPartError, InvalidToolInputError, JSONRPCError, JSONRPCMessage, JSONRPCNotification, JSONRPCRequest, JSONRPCResponse, JSONValue, JsonToSseTransformStream, LanguageModel, LanguageModelRequestMetadata, LanguageModelResponseMetadata, LanguageModelUsage, MCPClientError, MCPTransport, MessageConversionError, NoImageGeneratedError, NoObjectGeneratedError, NoOutputSpecifiedError, NoSuchProviderError, NoSuchToolError, ObjectStreamPart, output as Output, PrepareReconnectToStreamRequest, PrepareSendMessagesRequest, PrepareStepFunction, PrepareStepResult, Prompt, Provider, ProviderMetadata, ProviderRegistryProvider, ReasoningUIPart, RepairTextFunction, RetryError, SerialJobExecutor, SourceDocumentUIPart, SourceUrlUIPart, SpeechModel, SpeechModelResponseMetadata, SpeechWarning, StepResult, StepStartUIPart, StopCondition, StreamObjectOnFinishCallback, StreamObjectResult, StreamTextOnChunkCallback, StreamTextOnErrorCallback, StreamTextOnFinishCallback, StreamTextOnStepFinishCallback, StreamTextResult, StreamTextTransform, TelemetrySettings, TextStreamChatTransport, TextStreamPart, TextUIPart, ToolCallRepairError, ToolCallRepairFunction, ToolCallUnion, ToolChoice, ToolErrorUnion, ToolResultUnion, ToolSet, ToolUIPart, TranscriptionModel, TranscriptionModelResponseMetadata, TranscriptionWarning, UIDataPartSchemas, UIDataTypes, UIMessage, UIMessageChunk, UIMessagePart, UIMessageStreamOptions, UIMessageStreamWriter, UITool, UITools, UI_MESSAGE_STREAM_HEADERS, UnsupportedModelVersionError, UseCompletionOptions, assistantModelMessageSchema, callCompletionApi, convertFileListToFileUIParts, convertToCoreMessages, convertToModelMessages, coreAssistantMessageSchema, coreMessageSchema, coreSystemMessageSchema, coreToolMessageSchema, coreUserMessageSchema, cosineSimilarity, createProviderRegistry, createTextStreamResponse, createUIMessageStream, createUIMessageStreamResponse, customProvider, defaultSettingsMiddleware, embed, embedMany, createMCPClient as experimental_createMCPClient, experimental_createProviderRegistry, experimental_customProvider, generateImage as experimental_generateImage, generateSpeech as experimental_generateSpeech, transcribe as experimental_transcribe, extractReasoningMiddleware, generateObject, generateText, getTextFromDataUrl, getToolName, hasToolCall, isDeepEqualData, isToolUIPart, modelMessageSchema, parsePartialJson, pipeTextStreamToResponse, pipeUIMessageStreamToResponse, readUIMessageStream, simulateReadableStream, simulateStreamingMiddleware, smoothStream, stepCountIs, streamObject, streamText, systemModelMessageSchema, toolModelMessageSchema, userModelMessageSchema, wrapLanguageModel };
|
4010
|
+
export { AbstractChat, CallSettings, CallWarning, ChatInit, ChatOnDataCallback, ChatOnErrorCallback, ChatOnFinishCallback, ChatOnToolCallCallback, ChatRequestOptions, ChatState, ChatStatus, ChatTransport, ChunkDetector, CompletionRequestOptions, CoreAssistantMessage, CoreMessage, CoreSystemMessage, CoreToolMessage, CoreUserMessage, CreateUIMessage, DataUIPart, DeepPartial, DefaultChatTransport, DownloadError, EmbedManyResult, EmbedResult, Embedding, EmbeddingModel, EmbeddingModelUsage, ErrorHandler, Agent as Experimental_Agent, AgentSettings as Experimental_AgentSettings, GenerateImageResult as Experimental_GenerateImageResult, GeneratedFile as Experimental_GeneratedImage, SpeechResult as Experimental_SpeechResult, TranscriptionResult as Experimental_TranscriptionResult, FileUIPart, FinishReason, GenerateObjectResult, GenerateTextOnStepFinishCallback, GenerateTextResult, GeneratedAudioFile, GeneratedFile, HttpChatTransport, HttpChatTransportInitOptions, ImageModel, ImageGenerationWarning as ImageModelCallWarning, ImageModelProviderMetadata, ImageModelResponseMetadata, InferUIDataParts, InferUIMessageChunk, InferUITool, InferUITools, InvalidArgumentError, InvalidDataContentError, InvalidMessageRoleError, InvalidStreamPartError, InvalidToolInputError, JSONRPCError, JSONRPCMessage, JSONRPCNotification, JSONRPCRequest, JSONRPCResponse, JSONValue, JsonToSseTransformStream, LanguageModel, LanguageModelRequestMetadata, LanguageModelResponseMetadata, LanguageModelUsage, MCPClientError, MCPTransport, MessageConversionError, NoImageGeneratedError, NoObjectGeneratedError, NoOutputSpecifiedError, NoSuchProviderError, NoSuchToolError, ObjectStreamPart, output as Output, PrepareReconnectToStreamRequest, PrepareSendMessagesRequest, PrepareStepFunction, PrepareStepResult, Prompt, Provider, ProviderMetadata, ProviderRegistryProvider, ReasoningUIPart, RepairTextFunction, RetryError, SerialJobExecutor, SourceDocumentUIPart, SourceUrlUIPart, SpeechModel, SpeechModelResponseMetadata, SpeechWarning, StepResult, StepStartUIPart, StopCondition, StreamObjectOnFinishCallback, StreamObjectResult, StreamTextOnChunkCallback, StreamTextOnErrorCallback, StreamTextOnFinishCallback, StreamTextOnStepFinishCallback, StreamTextResult, StreamTextTransform, TelemetrySettings, TextStreamChatTransport, TextStreamPart, TextUIPart, ToolCallRepairError, ToolCallRepairFunction, ToolCallUnion, ToolChoice, ToolErrorUnion, ToolResultUnion, ToolSet, ToolUIPart, TranscriptionModel, TranscriptionModelResponseMetadata, TranscriptionWarning, UIDataPartSchemas, UIDataTypes, UIMessage, UIMessageChunk, UIMessagePart, UIMessageStreamOptions, UIMessageStreamWriter, UITool, UITools, UI_MESSAGE_STREAM_HEADERS, UnsupportedModelVersionError, UseCompletionOptions, assistantModelMessageSchema, callCompletionApi, convertFileListToFileUIParts, convertToCoreMessages, convertToModelMessages, coreAssistantMessageSchema, coreMessageSchema, coreSystemMessageSchema, coreToolMessageSchema, coreUserMessageSchema, cosineSimilarity, createProviderRegistry, createTextStreamResponse, createUIMessageStream, createUIMessageStreamResponse, customProvider, defaultSettingsMiddleware, embed, embedMany, createMCPClient as experimental_createMCPClient, experimental_createProviderRegistry, experimental_customProvider, generateImage as experimental_generateImage, generateSpeech as experimental_generateSpeech, transcribe as experimental_transcribe, extractReasoningMiddleware, generateObject, generateText, getTextFromDataUrl, getToolName, hasToolCall, isDeepEqualData, isToolUIPart, modelMessageSchema, parsePartialJson, pipeTextStreamToResponse, pipeUIMessageStreamToResponse, readUIMessageStream, simulateReadableStream, simulateStreamingMiddleware, smoothStream, stepCountIs, streamObject, streamText, systemModelMessageSchema, toolModelMessageSchema, userModelMessageSchema, wrapLanguageModel };
|
package/dist/index.js
CHANGED
@@ -1874,7 +1874,11 @@ function toResponseMessages({
|
|
1874
1874
|
).filter((part) => part.type !== "text" || part.text.length > 0).map((part) => {
|
1875
1875
|
switch (part.type) {
|
1876
1876
|
case "text":
|
1877
|
-
return
|
1877
|
+
return {
|
1878
|
+
type: "text",
|
1879
|
+
text: part.text,
|
1880
|
+
providerOptions: part.providerMetadata
|
1881
|
+
};
|
1878
1882
|
case "reasoning":
|
1879
1883
|
return {
|
1880
1884
|
type: "reasoning",
|
@@ -2616,16 +2620,19 @@ var import_v47 = require("zod/v4");
|
|
2616
2620
|
var uiMessageChunkSchema = import_v47.z.union([
|
2617
2621
|
import_v47.z.strictObject({
|
2618
2622
|
type: import_v47.z.literal("text-start"),
|
2619
|
-
id: import_v47.z.string()
|
2623
|
+
id: import_v47.z.string(),
|
2624
|
+
providerMetadata: providerMetadataSchema.optional()
|
2620
2625
|
}),
|
2621
2626
|
import_v47.z.strictObject({
|
2622
2627
|
type: import_v47.z.literal("text-delta"),
|
2623
2628
|
id: import_v47.z.string(),
|
2624
|
-
delta: import_v47.z.string()
|
2629
|
+
delta: import_v47.z.string(),
|
2630
|
+
providerMetadata: providerMetadataSchema.optional()
|
2625
2631
|
}),
|
2626
2632
|
import_v47.z.strictObject({
|
2627
2633
|
type: import_v47.z.literal("text-end"),
|
2628
|
-
id: import_v47.z.string()
|
2634
|
+
id: import_v47.z.string(),
|
2635
|
+
providerMetadata: providerMetadataSchema.optional()
|
2629
2636
|
}),
|
2630
2637
|
import_v47.z.strictObject({
|
2631
2638
|
type: import_v47.z.literal("error"),
|
@@ -2647,7 +2654,8 @@ var uiMessageChunkSchema = import_v47.z.union([
|
|
2647
2654
|
toolCallId: import_v47.z.string(),
|
2648
2655
|
toolName: import_v47.z.string(),
|
2649
2656
|
input: import_v47.z.unknown(),
|
2650
|
-
providerExecuted: import_v47.z.boolean().optional()
|
2657
|
+
providerExecuted: import_v47.z.boolean().optional(),
|
2658
|
+
providerMetadata: providerMetadataSchema.optional()
|
2651
2659
|
}),
|
2652
2660
|
import_v47.z.strictObject({
|
2653
2661
|
type: import_v47.z.literal("tool-output-available"),
|
@@ -2664,23 +2672,23 @@ var uiMessageChunkSchema = import_v47.z.union([
|
|
2664
2672
|
import_v47.z.strictObject({
|
2665
2673
|
type: import_v47.z.literal("reasoning"),
|
2666
2674
|
text: import_v47.z.string(),
|
2667
|
-
providerMetadata:
|
2675
|
+
providerMetadata: providerMetadataSchema.optional()
|
2668
2676
|
}),
|
2669
2677
|
import_v47.z.strictObject({
|
2670
2678
|
type: import_v47.z.literal("reasoning-start"),
|
2671
2679
|
id: import_v47.z.string(),
|
2672
|
-
providerMetadata:
|
2680
|
+
providerMetadata: providerMetadataSchema.optional()
|
2673
2681
|
}),
|
2674
2682
|
import_v47.z.strictObject({
|
2675
2683
|
type: import_v47.z.literal("reasoning-delta"),
|
2676
2684
|
id: import_v47.z.string(),
|
2677
2685
|
delta: import_v47.z.string(),
|
2678
|
-
providerMetadata:
|
2686
|
+
providerMetadata: providerMetadataSchema.optional()
|
2679
2687
|
}),
|
2680
2688
|
import_v47.z.strictObject({
|
2681
2689
|
type: import_v47.z.literal("reasoning-end"),
|
2682
2690
|
id: import_v47.z.string(),
|
2683
|
-
providerMetadata:
|
2691
|
+
providerMetadata: providerMetadataSchema.optional()
|
2684
2692
|
}),
|
2685
2693
|
import_v47.z.strictObject({
|
2686
2694
|
type: import_v47.z.literal("reasoning-part-finish")
|
@@ -2690,8 +2698,7 @@ var uiMessageChunkSchema = import_v47.z.union([
|
|
2690
2698
|
sourceId: import_v47.z.string(),
|
2691
2699
|
url: import_v47.z.string(),
|
2692
2700
|
title: import_v47.z.string().optional(),
|
2693
|
-
providerMetadata:
|
2694
|
-
// Use z.any() for generic metadata
|
2701
|
+
providerMetadata: providerMetadataSchema.optional()
|
2695
2702
|
}),
|
2696
2703
|
import_v47.z.strictObject({
|
2697
2704
|
type: import_v47.z.literal("source-document"),
|
@@ -2699,13 +2706,13 @@ var uiMessageChunkSchema = import_v47.z.union([
|
|
2699
2706
|
mediaType: import_v47.z.string(),
|
2700
2707
|
title: import_v47.z.string(),
|
2701
2708
|
filename: import_v47.z.string().optional(),
|
2702
|
-
providerMetadata:
|
2703
|
-
// Use z.any() for generic metadata
|
2709
|
+
providerMetadata: providerMetadataSchema.optional()
|
2704
2710
|
}),
|
2705
2711
|
import_v47.z.strictObject({
|
2706
2712
|
type: import_v47.z.literal("file"),
|
2707
2713
|
url: import_v47.z.string(),
|
2708
|
-
mediaType: import_v47.z.string()
|
2714
|
+
mediaType: import_v47.z.string(),
|
2715
|
+
providerMetadata: providerMetadataSchema.optional()
|
2709
2716
|
}),
|
2710
2717
|
import_v47.z.strictObject({
|
2711
2718
|
type: import_v47.z.string().startsWith("data-"),
|
@@ -3145,7 +3152,7 @@ function processUIMessageStream({
|
|
3145
3152
|
new TransformStream({
|
3146
3153
|
async transform(part, controller) {
|
3147
3154
|
await runUpdateMessageJob(async ({ state, write }) => {
|
3148
|
-
var _a16, _b;
|
3155
|
+
var _a16, _b, _c, _d;
|
3149
3156
|
function updateToolInvocationPart(options) {
|
3150
3157
|
var _a17;
|
3151
3158
|
const part2 = state.message.parts.find(
|
@@ -3159,6 +3166,9 @@ function processUIMessageStream({
|
|
3159
3166
|
anyPart.output = anyOptions.output;
|
3160
3167
|
anyPart.errorText = anyOptions.errorText;
|
3161
3168
|
anyPart.providerExecuted = (_a17 = anyOptions.providerExecuted) != null ? _a17 : part2.providerExecuted;
|
3169
|
+
if (anyOptions.providerMetadata != null && part2.state === "input-available") {
|
3170
|
+
part2.callProviderMetadata = anyOptions.providerMetadata;
|
3171
|
+
}
|
3162
3172
|
} else {
|
3163
3173
|
state.message.parts.push({
|
3164
3174
|
type: `tool-${options.toolName}`,
|
@@ -3167,7 +3177,8 @@ function processUIMessageStream({
|
|
3167
3177
|
input: anyOptions.input,
|
3168
3178
|
output: anyOptions.output,
|
3169
3179
|
errorText: anyOptions.errorText,
|
3170
|
-
providerExecuted: anyOptions.providerExecuted
|
3180
|
+
providerExecuted: anyOptions.providerExecuted,
|
3181
|
+
...anyOptions.providerMetadata != null ? { callProviderMetadata: anyOptions.providerMetadata } : {}
|
3171
3182
|
});
|
3172
3183
|
}
|
3173
3184
|
}
|
@@ -3188,6 +3199,7 @@ function processUIMessageStream({
|
|
3188
3199
|
const textPart = {
|
3189
3200
|
type: "text",
|
3190
3201
|
text: "",
|
3202
|
+
providerMetadata: part.providerMetadata,
|
3191
3203
|
state: "streaming"
|
3192
3204
|
};
|
3193
3205
|
state.activeTextParts[part.id] = textPart;
|
@@ -3196,13 +3208,16 @@ function processUIMessageStream({
|
|
3196
3208
|
break;
|
3197
3209
|
}
|
3198
3210
|
case "text-delta": {
|
3199
|
-
state.activeTextParts[part.id]
|
3211
|
+
const textPart = state.activeTextParts[part.id];
|
3212
|
+
textPart.text += part.delta;
|
3213
|
+
textPart.providerMetadata = (_a16 = part.providerMetadata) != null ? _a16 : textPart.providerMetadata;
|
3200
3214
|
write();
|
3201
3215
|
break;
|
3202
3216
|
}
|
3203
3217
|
case "text-end": {
|
3204
3218
|
const textPart = state.activeTextParts[part.id];
|
3205
3219
|
textPart.state = "done";
|
3220
|
+
textPart.providerMetadata = (_b = part.providerMetadata) != null ? _b : textPart.providerMetadata;
|
3206
3221
|
delete state.activeTextParts[part.id];
|
3207
3222
|
write();
|
3208
3223
|
break;
|
@@ -3222,13 +3237,13 @@ function processUIMessageStream({
|
|
3222
3237
|
case "reasoning-delta": {
|
3223
3238
|
const reasoningPart = state.activeReasoningParts[part.id];
|
3224
3239
|
reasoningPart.text += part.delta;
|
3225
|
-
reasoningPart.providerMetadata = (
|
3240
|
+
reasoningPart.providerMetadata = (_c = part.providerMetadata) != null ? _c : reasoningPart.providerMetadata;
|
3226
3241
|
write();
|
3227
3242
|
break;
|
3228
3243
|
}
|
3229
3244
|
case "reasoning-end": {
|
3230
3245
|
const reasoningPart = state.activeReasoningParts[part.id];
|
3231
|
-
reasoningPart.providerMetadata = (
|
3246
|
+
reasoningPart.providerMetadata = (_d = part.providerMetadata) != null ? _d : reasoningPart.providerMetadata;
|
3232
3247
|
reasoningPart.state = "done";
|
3233
3248
|
delete state.activeReasoningParts[part.id];
|
3234
3249
|
write();
|
@@ -3304,7 +3319,8 @@ function processUIMessageStream({
|
|
3304
3319
|
toolName: part.toolName,
|
3305
3320
|
state: "input-available",
|
3306
3321
|
input: part.input,
|
3307
|
-
providerExecuted: part.providerExecuted
|
3322
|
+
providerExecuted: part.providerExecuted,
|
3323
|
+
providerMetadata: part.providerMetadata
|
3308
3324
|
});
|
3309
3325
|
write();
|
3310
3326
|
if (onToolCall && !part.providerExecuted) {
|
@@ -4107,7 +4123,7 @@ var DefaultStreamTextResult = class {
|
|
4107
4123
|
let activeReasoningContent = {};
|
4108
4124
|
const eventProcessor = new TransformStream({
|
4109
4125
|
async transform(chunk, controller) {
|
4110
|
-
var _a16, _b;
|
4126
|
+
var _a16, _b, _c;
|
4111
4127
|
controller.enqueue(chunk);
|
4112
4128
|
const { part } = chunk;
|
4113
4129
|
if (part.type === "text" || part.type === "reasoning" || part.type === "source" || part.type === "tool-call" || part.type === "tool-result" || part.type === "tool-input-start" || part.type === "tool-input-delta" || part.type === "raw") {
|
@@ -4137,7 +4153,7 @@ var DefaultStreamTextResult = class {
|
|
4137
4153
|
return;
|
4138
4154
|
}
|
4139
4155
|
activeText.text += part.text;
|
4140
|
-
activeText.providerMetadata = part.providerMetadata;
|
4156
|
+
activeText.providerMetadata = (_a16 = part.providerMetadata) != null ? _a16 : activeText.providerMetadata;
|
4141
4157
|
}
|
4142
4158
|
if (part.type === "text-end") {
|
4143
4159
|
delete activeTextContent[part.id];
|
@@ -4163,7 +4179,7 @@ var DefaultStreamTextResult = class {
|
|
4163
4179
|
return;
|
4164
4180
|
}
|
4165
4181
|
activeReasoning.text += part.text;
|
4166
|
-
activeReasoning.providerMetadata = (
|
4182
|
+
activeReasoning.providerMetadata = (_b = part.providerMetadata) != null ? _b : activeReasoning.providerMetadata;
|
4167
4183
|
}
|
4168
4184
|
if (part.type === "reasoning-end") {
|
4169
4185
|
const activeReasoning = activeReasoningContent[part.id];
|
@@ -4177,7 +4193,7 @@ var DefaultStreamTextResult = class {
|
|
4177
4193
|
});
|
4178
4194
|
return;
|
4179
4195
|
}
|
4180
|
-
activeReasoning.providerMetadata = (
|
4196
|
+
activeReasoning.providerMetadata = (_c = part.providerMetadata) != null ? _c : activeReasoning.providerMetadata;
|
4181
4197
|
delete activeReasoningContent[part.id];
|
4182
4198
|
}
|
4183
4199
|
if (part.type === "file") {
|
@@ -4877,26 +4893,35 @@ var DefaultStreamTextResult = class {
|
|
4877
4893
|
const partType = part.type;
|
4878
4894
|
switch (partType) {
|
4879
4895
|
case "text-start": {
|
4880
|
-
controller.enqueue({
|
4896
|
+
controller.enqueue({
|
4897
|
+
type: "text-start",
|
4898
|
+
id: part.id,
|
4899
|
+
...part.providerMetadata != null ? { providerMetadata: part.providerMetadata } : {}
|
4900
|
+
});
|
4881
4901
|
break;
|
4882
4902
|
}
|
4883
4903
|
case "text": {
|
4884
4904
|
controller.enqueue({
|
4885
4905
|
type: "text-delta",
|
4886
4906
|
id: part.id,
|
4887
|
-
delta: part.text
|
4907
|
+
delta: part.text,
|
4908
|
+
...part.providerMetadata != null ? { providerMetadata: part.providerMetadata } : {}
|
4888
4909
|
});
|
4889
4910
|
break;
|
4890
4911
|
}
|
4891
4912
|
case "text-end": {
|
4892
|
-
controller.enqueue({
|
4913
|
+
controller.enqueue({
|
4914
|
+
type: "text-end",
|
4915
|
+
id: part.id,
|
4916
|
+
...part.providerMetadata != null ? { providerMetadata: part.providerMetadata } : {}
|
4917
|
+
});
|
4893
4918
|
break;
|
4894
4919
|
}
|
4895
4920
|
case "reasoning-start": {
|
4896
4921
|
controller.enqueue({
|
4897
4922
|
type: "reasoning-start",
|
4898
4923
|
id: part.id,
|
4899
|
-
providerMetadata: part.providerMetadata
|
4924
|
+
...part.providerMetadata != null ? { providerMetadata: part.providerMetadata } : {}
|
4900
4925
|
});
|
4901
4926
|
break;
|
4902
4927
|
}
|
@@ -4906,7 +4931,7 @@ var DefaultStreamTextResult = class {
|
|
4906
4931
|
type: "reasoning-delta",
|
4907
4932
|
id: part.id,
|
4908
4933
|
delta: part.text,
|
4909
|
-
providerMetadata: part.providerMetadata
|
4934
|
+
...part.providerMetadata != null ? { providerMetadata: part.providerMetadata } : {}
|
4910
4935
|
});
|
4911
4936
|
}
|
4912
4937
|
break;
|
@@ -4915,7 +4940,7 @@ var DefaultStreamTextResult = class {
|
|
4915
4940
|
controller.enqueue({
|
4916
4941
|
type: "reasoning-end",
|
4917
4942
|
id: part.id,
|
4918
|
-
providerMetadata: part.providerMetadata
|
4943
|
+
...part.providerMetadata != null ? { providerMetadata: part.providerMetadata } : {}
|
4919
4944
|
});
|
4920
4945
|
break;
|
4921
4946
|
}
|
@@ -4934,7 +4959,7 @@ var DefaultStreamTextResult = class {
|
|
4934
4959
|
sourceId: part.id,
|
4935
4960
|
url: part.url,
|
4936
4961
|
title: part.title,
|
4937
|
-
providerMetadata: part.providerMetadata
|
4962
|
+
...part.providerMetadata != null ? { providerMetadata: part.providerMetadata } : {}
|
4938
4963
|
});
|
4939
4964
|
}
|
4940
4965
|
if (sendSources && part.sourceType === "document") {
|
@@ -4944,7 +4969,7 @@ var DefaultStreamTextResult = class {
|
|
4944
4969
|
mediaType: part.mediaType,
|
4945
4970
|
title: part.title,
|
4946
4971
|
filename: part.filename,
|
4947
|
-
providerMetadata: part.providerMetadata
|
4972
|
+
...part.providerMetadata != null ? { providerMetadata: part.providerMetadata } : {}
|
4948
4973
|
});
|
4949
4974
|
}
|
4950
4975
|
break;
|
@@ -4972,7 +4997,8 @@ var DefaultStreamTextResult = class {
|
|
4972
4997
|
toolCallId: part.toolCallId,
|
4973
4998
|
toolName: part.toolName,
|
4974
4999
|
input: part.input,
|
4975
|
-
providerExecuted: part.providerExecuted
|
5000
|
+
providerExecuted: part.providerExecuted,
|
5001
|
+
providerMetadata: part.providerMetadata
|
4976
5002
|
});
|
4977
5003
|
break;
|
4978
5004
|
}
|
@@ -8951,7 +8977,8 @@ function convertToModelMessages(messages, options) {
|
|
8951
8977
|
if (part.type === "text") {
|
8952
8978
|
content.push({
|
8953
8979
|
type: "text",
|
8954
|
-
text: part.text
|
8980
|
+
text: part.text,
|
8981
|
+
...part.providerMetadata != null ? { providerOptions: part.providerMetadata } : {}
|
8955
8982
|
});
|
8956
8983
|
} else if (part.type === "file") {
|
8957
8984
|
content.push({
|
@@ -8978,7 +9005,8 @@ function convertToModelMessages(messages, options) {
|
|
8978
9005
|
toolCallId: part.toolCallId,
|
8979
9006
|
toolName,
|
8980
9007
|
input: part.input,
|
8981
|
-
providerExecuted: part.providerExecuted
|
9008
|
+
providerExecuted: part.providerExecuted,
|
9009
|
+
...part.callProviderMetadata != null ? { providerOptions: part.callProviderMetadata } : {}
|
8982
9010
|
});
|
8983
9011
|
if (part.providerExecuted === true && (part.state === "output-available" || part.state === "output-error")) {
|
8984
9012
|
content.push({
|