ai 5.0.13 → 5.0.15

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 CHANGED
@@ -1,5 +1,19 @@
1
1
  # ai
2
2
 
3
+ ## 5.0.15
4
+
5
+ ### Patch Changes
6
+
7
+ - ca4f68f: feat(ai): add validateUIMessages function
8
+ - Updated dependencies [28a4006]
9
+ - @ai-sdk/gateway@1.0.7
10
+
11
+ ## 5.0.14
12
+
13
+ ### Patch Changes
14
+
15
+ - 7729e32: fix(ai): expand mp3 detection to support all mpeg frame headers
16
+
3
17
  ## 5.0.13
4
18
 
5
19
  ### Patch Changes
package/dist/index.d.mts CHANGED
@@ -4325,8 +4325,26 @@ type UseCompletionOptions = {
4325
4325
  fetch?: FetchFunction;
4326
4326
  };
4327
4327
 
4328
+ /**
4329
+ * Validates a list of UI messages.
4330
+ *
4331
+ * Metadata, data parts, and generic tool call structures are only validated if
4332
+ * the corresponding schemas are provided. Otherwise, they are assumed to be
4333
+ * valid.
4334
+ */
4335
+ declare function validateUIMessages<UI_MESSAGE extends UIMessage>({ messages, metadataSchema, dataSchemas, tools, }: {
4336
+ messages: unknown;
4337
+ metadataSchema?: Validator<UIMessage['metadata']> | StandardSchemaV1<unknown, UI_MESSAGE['metadata']>;
4338
+ dataSchemas?: {
4339
+ [NAME in keyof InferUIMessageData<UI_MESSAGE> & string]?: Validator<InferUIMessageData<UI_MESSAGE>[NAME]> | StandardSchemaV1<unknown, InferUIMessageData<UI_MESSAGE>[NAME]>;
4340
+ };
4341
+ tools?: {
4342
+ [NAME in keyof InferUIMessageTools<UI_MESSAGE> & string]?: Tool<InferUIMessageTools<UI_MESSAGE>[NAME]['input'], InferUIMessageTools<UI_MESSAGE>[NAME]['output']>;
4343
+ };
4344
+ }): Promise<Array<UI_MESSAGE>>;
4345
+
4328
4346
  declare global {
4329
4347
  var AI_SDK_DEFAULT_PROVIDER: ProviderV2 | undefined;
4330
4348
  }
4331
4349
 
4332
- export { AbstractChat, AsyncIterableStream, CallSettings, CallWarning, ChatInit, ChatOnDataCallback, ChatOnErrorCallback, ChatOnFinishCallback, ChatOnToolCallCallback, ChatRequestOptions, ChatState, ChatStatus, ChatTransport, ChunkDetector, CompletionRequestOptions, CoreAssistantMessage, CoreMessage, CoreSystemMessage, CoreToolMessage, CoreUserMessage, CreateUIMessage, DataUIPart, DeepPartial, DefaultChatTransport, DownloadError, DynamicToolCall, DynamicToolError, DynamicToolResult, DynamicToolUIPart, 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, NoOutputGeneratedError, NoOutputSpecifiedError, NoSuchProviderError, NoSuchToolError, ObjectStreamPart, output as Output, PrepareReconnectToStreamRequest, PrepareSendMessagesRequest, PrepareStepFunction, PrepareStepResult, Prompt, Provider, ProviderMetadata, ProviderRegistryProvider, ReasoningUIPart, RepairTextFunction, RetryError, SerialJobExecutor, SourceDocumentUIPart, SourceUrlUIPart, SpeechModel, SpeechModelResponseMetadata, SpeechWarning, StaticToolCall, StaticToolError, StaticToolResult, StepResult, StepStartUIPart, StopCondition, StreamObjectOnFinishCallback, StreamObjectResult, StreamTextOnChunkCallback, StreamTextOnErrorCallback, StreamTextOnFinishCallback, StreamTextOnStepFinishCallback, StreamTextResult, StreamTextTransform, TelemetrySettings, TextStreamChatTransport, TextStreamPart, TextUIPart, ToolCallRepairError, ToolCallRepairFunction, ToolChoice, ToolSet, ToolUIPart, TranscriptionModel, TranscriptionModelResponseMetadata, TranscriptionWarning, TypedToolCall, TypedToolError, TypedToolResult, UIDataPartSchemas, UIDataTypes, UIMessage, UIMessageChunk, UIMessagePart, UIMessageStreamOnFinishCallback, UIMessageStreamOptions, UIMessageStreamWriter, UITool, UITools, UI_MESSAGE_STREAM_HEADERS, UnsupportedModelVersionError, UseCompletionOptions, assistantModelMessageSchema, callCompletionApi, consumeStream, convertFileListToFileUIParts, convertToCoreMessages, convertToModelMessages, coreAssistantMessageSchema, coreMessageSchema, coreSystemMessageSchema, coreToolMessageSchema, coreUserMessageSchema, cosineSimilarity, createProviderRegistry, createTextStreamResponse, createUIMessageStream, createUIMessageStreamResponse, customProvider, defaultSettingsMiddleware, embed, embedMany, MCPClient as experimental_MCPClient, MCPClientConfig as experimental_MCPClientConfig, 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, lastAssistantMessageIsCompleteWithToolCalls, modelMessageSchema, parsePartialJson, pipeTextStreamToResponse, pipeUIMessageStreamToResponse, readUIMessageStream, simulateReadableStream, simulateStreamingMiddleware, smoothStream, stepCountIs, streamObject, streamText, systemModelMessageSchema, toolModelMessageSchema, userModelMessageSchema, wrapLanguageModel, wrapProvider };
4350
+ export { AbstractChat, AsyncIterableStream, CallSettings, CallWarning, ChatInit, ChatOnDataCallback, ChatOnErrorCallback, ChatOnFinishCallback, ChatOnToolCallCallback, ChatRequestOptions, ChatState, ChatStatus, ChatTransport, ChunkDetector, CompletionRequestOptions, CoreAssistantMessage, CoreMessage, CoreSystemMessage, CoreToolMessage, CoreUserMessage, CreateUIMessage, DataUIPart, DeepPartial, DefaultChatTransport, DownloadError, DynamicToolCall, DynamicToolError, DynamicToolResult, DynamicToolUIPart, 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, NoOutputGeneratedError, NoOutputSpecifiedError, NoSuchProviderError, NoSuchToolError, ObjectStreamPart, output as Output, PrepareReconnectToStreamRequest, PrepareSendMessagesRequest, PrepareStepFunction, PrepareStepResult, Prompt, Provider, ProviderMetadata, ProviderRegistryProvider, ReasoningUIPart, RepairTextFunction, RetryError, SerialJobExecutor, SourceDocumentUIPart, SourceUrlUIPart, SpeechModel, SpeechModelResponseMetadata, SpeechWarning, StaticToolCall, StaticToolError, StaticToolResult, StepResult, StepStartUIPart, StopCondition, StreamObjectOnFinishCallback, StreamObjectResult, StreamTextOnChunkCallback, StreamTextOnErrorCallback, StreamTextOnFinishCallback, StreamTextOnStepFinishCallback, StreamTextResult, StreamTextTransform, TelemetrySettings, TextStreamChatTransport, TextStreamPart, TextUIPart, ToolCallRepairError, ToolCallRepairFunction, ToolChoice, ToolSet, ToolUIPart, TranscriptionModel, TranscriptionModelResponseMetadata, TranscriptionWarning, TypedToolCall, TypedToolError, TypedToolResult, UIDataPartSchemas, UIDataTypes, UIMessage, UIMessageChunk, UIMessagePart, UIMessageStreamOnFinishCallback, UIMessageStreamOptions, UIMessageStreamWriter, UITool, UITools, UI_MESSAGE_STREAM_HEADERS, UnsupportedModelVersionError, UseCompletionOptions, assistantModelMessageSchema, callCompletionApi, consumeStream, convertFileListToFileUIParts, convertToCoreMessages, convertToModelMessages, coreAssistantMessageSchema, coreMessageSchema, coreSystemMessageSchema, coreToolMessageSchema, coreUserMessageSchema, cosineSimilarity, createProviderRegistry, createTextStreamResponse, createUIMessageStream, createUIMessageStreamResponse, customProvider, defaultSettingsMiddleware, embed, embedMany, MCPClient as experimental_MCPClient, MCPClientConfig as experimental_MCPClientConfig, 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, lastAssistantMessageIsCompleteWithToolCalls, modelMessageSchema, parsePartialJson, pipeTextStreamToResponse, pipeUIMessageStreamToResponse, readUIMessageStream, simulateReadableStream, simulateStreamingMiddleware, smoothStream, stepCountIs, streamObject, streamText, systemModelMessageSchema, toolModelMessageSchema, userModelMessageSchema, validateUIMessages, wrapLanguageModel, wrapProvider };
package/dist/index.d.ts CHANGED
@@ -4325,8 +4325,26 @@ type UseCompletionOptions = {
4325
4325
  fetch?: FetchFunction;
4326
4326
  };
4327
4327
 
4328
+ /**
4329
+ * Validates a list of UI messages.
4330
+ *
4331
+ * Metadata, data parts, and generic tool call structures are only validated if
4332
+ * the corresponding schemas are provided. Otherwise, they are assumed to be
4333
+ * valid.
4334
+ */
4335
+ declare function validateUIMessages<UI_MESSAGE extends UIMessage>({ messages, metadataSchema, dataSchemas, tools, }: {
4336
+ messages: unknown;
4337
+ metadataSchema?: Validator<UIMessage['metadata']> | StandardSchemaV1<unknown, UI_MESSAGE['metadata']>;
4338
+ dataSchemas?: {
4339
+ [NAME in keyof InferUIMessageData<UI_MESSAGE> & string]?: Validator<InferUIMessageData<UI_MESSAGE>[NAME]> | StandardSchemaV1<unknown, InferUIMessageData<UI_MESSAGE>[NAME]>;
4340
+ };
4341
+ tools?: {
4342
+ [NAME in keyof InferUIMessageTools<UI_MESSAGE> & string]?: Tool<InferUIMessageTools<UI_MESSAGE>[NAME]['input'], InferUIMessageTools<UI_MESSAGE>[NAME]['output']>;
4343
+ };
4344
+ }): Promise<Array<UI_MESSAGE>>;
4345
+
4328
4346
  declare global {
4329
4347
  var AI_SDK_DEFAULT_PROVIDER: ProviderV2 | undefined;
4330
4348
  }
4331
4349
 
4332
- export { AbstractChat, AsyncIterableStream, CallSettings, CallWarning, ChatInit, ChatOnDataCallback, ChatOnErrorCallback, ChatOnFinishCallback, ChatOnToolCallCallback, ChatRequestOptions, ChatState, ChatStatus, ChatTransport, ChunkDetector, CompletionRequestOptions, CoreAssistantMessage, CoreMessage, CoreSystemMessage, CoreToolMessage, CoreUserMessage, CreateUIMessage, DataUIPart, DeepPartial, DefaultChatTransport, DownloadError, DynamicToolCall, DynamicToolError, DynamicToolResult, DynamicToolUIPart, 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, NoOutputGeneratedError, NoOutputSpecifiedError, NoSuchProviderError, NoSuchToolError, ObjectStreamPart, output as Output, PrepareReconnectToStreamRequest, PrepareSendMessagesRequest, PrepareStepFunction, PrepareStepResult, Prompt, Provider, ProviderMetadata, ProviderRegistryProvider, ReasoningUIPart, RepairTextFunction, RetryError, SerialJobExecutor, SourceDocumentUIPart, SourceUrlUIPart, SpeechModel, SpeechModelResponseMetadata, SpeechWarning, StaticToolCall, StaticToolError, StaticToolResult, StepResult, StepStartUIPart, StopCondition, StreamObjectOnFinishCallback, StreamObjectResult, StreamTextOnChunkCallback, StreamTextOnErrorCallback, StreamTextOnFinishCallback, StreamTextOnStepFinishCallback, StreamTextResult, StreamTextTransform, TelemetrySettings, TextStreamChatTransport, TextStreamPart, TextUIPart, ToolCallRepairError, ToolCallRepairFunction, ToolChoice, ToolSet, ToolUIPart, TranscriptionModel, TranscriptionModelResponseMetadata, TranscriptionWarning, TypedToolCall, TypedToolError, TypedToolResult, UIDataPartSchemas, UIDataTypes, UIMessage, UIMessageChunk, UIMessagePart, UIMessageStreamOnFinishCallback, UIMessageStreamOptions, UIMessageStreamWriter, UITool, UITools, UI_MESSAGE_STREAM_HEADERS, UnsupportedModelVersionError, UseCompletionOptions, assistantModelMessageSchema, callCompletionApi, consumeStream, convertFileListToFileUIParts, convertToCoreMessages, convertToModelMessages, coreAssistantMessageSchema, coreMessageSchema, coreSystemMessageSchema, coreToolMessageSchema, coreUserMessageSchema, cosineSimilarity, createProviderRegistry, createTextStreamResponse, createUIMessageStream, createUIMessageStreamResponse, customProvider, defaultSettingsMiddleware, embed, embedMany, MCPClient as experimental_MCPClient, MCPClientConfig as experimental_MCPClientConfig, 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, lastAssistantMessageIsCompleteWithToolCalls, modelMessageSchema, parsePartialJson, pipeTextStreamToResponse, pipeUIMessageStreamToResponse, readUIMessageStream, simulateReadableStream, simulateStreamingMiddleware, smoothStream, stepCountIs, streamObject, streamText, systemModelMessageSchema, toolModelMessageSchema, userModelMessageSchema, wrapLanguageModel, wrapProvider };
4350
+ export { AbstractChat, AsyncIterableStream, CallSettings, CallWarning, ChatInit, ChatOnDataCallback, ChatOnErrorCallback, ChatOnFinishCallback, ChatOnToolCallCallback, ChatRequestOptions, ChatState, ChatStatus, ChatTransport, ChunkDetector, CompletionRequestOptions, CoreAssistantMessage, CoreMessage, CoreSystemMessage, CoreToolMessage, CoreUserMessage, CreateUIMessage, DataUIPart, DeepPartial, DefaultChatTransport, DownloadError, DynamicToolCall, DynamicToolError, DynamicToolResult, DynamicToolUIPart, 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, NoOutputGeneratedError, NoOutputSpecifiedError, NoSuchProviderError, NoSuchToolError, ObjectStreamPart, output as Output, PrepareReconnectToStreamRequest, PrepareSendMessagesRequest, PrepareStepFunction, PrepareStepResult, Prompt, Provider, ProviderMetadata, ProviderRegistryProvider, ReasoningUIPart, RepairTextFunction, RetryError, SerialJobExecutor, SourceDocumentUIPart, SourceUrlUIPart, SpeechModel, SpeechModelResponseMetadata, SpeechWarning, StaticToolCall, StaticToolError, StaticToolResult, StepResult, StepStartUIPart, StopCondition, StreamObjectOnFinishCallback, StreamObjectResult, StreamTextOnChunkCallback, StreamTextOnErrorCallback, StreamTextOnFinishCallback, StreamTextOnStepFinishCallback, StreamTextResult, StreamTextTransform, TelemetrySettings, TextStreamChatTransport, TextStreamPart, TextUIPart, ToolCallRepairError, ToolCallRepairFunction, ToolChoice, ToolSet, ToolUIPart, TranscriptionModel, TranscriptionModelResponseMetadata, TranscriptionWarning, TypedToolCall, TypedToolError, TypedToolResult, UIDataPartSchemas, UIDataTypes, UIMessage, UIMessageChunk, UIMessagePart, UIMessageStreamOnFinishCallback, UIMessageStreamOptions, UIMessageStreamWriter, UITool, UITools, UI_MESSAGE_STREAM_HEADERS, UnsupportedModelVersionError, UseCompletionOptions, assistantModelMessageSchema, callCompletionApi, consumeStream, convertFileListToFileUIParts, convertToCoreMessages, convertToModelMessages, coreAssistantMessageSchema, coreMessageSchema, coreSystemMessageSchema, coreToolMessageSchema, coreUserMessageSchema, cosineSimilarity, createProviderRegistry, createTextStreamResponse, createUIMessageStream, createUIMessageStreamResponse, customProvider, defaultSettingsMiddleware, embed, embedMany, MCPClient as experimental_MCPClient, MCPClientConfig as experimental_MCPClientConfig, 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, lastAssistantMessageIsCompleteWithToolCalls, modelMessageSchema, parsePartialJson, pipeTextStreamToResponse, pipeUIMessageStreamToResponse, readUIMessageStream, simulateReadableStream, simulateStreamingMiddleware, smoothStream, stepCountIs, streamObject, streamText, systemModelMessageSchema, toolModelMessageSchema, userModelMessageSchema, validateUIMessages, wrapLanguageModel, wrapProvider };
package/dist/index.js CHANGED
@@ -57,7 +57,7 @@ __export(src_exports, {
57
57
  UI_MESSAGE_STREAM_HEADERS: () => UI_MESSAGE_STREAM_HEADERS,
58
58
  UnsupportedFunctionalityError: () => import_provider17.UnsupportedFunctionalityError,
59
59
  UnsupportedModelVersionError: () => UnsupportedModelVersionError,
60
- asSchema: () => import_provider_utils28.asSchema,
60
+ asSchema: () => import_provider_utils29.asSchema,
61
61
  assistantModelMessageSchema: () => assistantModelMessageSchema,
62
62
  callCompletionApi: () => callCompletionApi,
63
63
  consumeStream: () => consumeStream,
@@ -70,14 +70,14 @@ __export(src_exports, {
70
70
  coreToolMessageSchema: () => coreToolMessageSchema,
71
71
  coreUserMessageSchema: () => coreUserMessageSchema,
72
72
  cosineSimilarity: () => cosineSimilarity,
73
- createIdGenerator: () => import_provider_utils28.createIdGenerator,
73
+ createIdGenerator: () => import_provider_utils29.createIdGenerator,
74
74
  createProviderRegistry: () => createProviderRegistry,
75
75
  createTextStreamResponse: () => createTextStreamResponse,
76
76
  createUIMessageStream: () => createUIMessageStream,
77
77
  createUIMessageStreamResponse: () => createUIMessageStreamResponse,
78
78
  customProvider: () => customProvider,
79
79
  defaultSettingsMiddleware: () => defaultSettingsMiddleware,
80
- dynamicTool: () => import_provider_utils28.dynamicTool,
80
+ dynamicTool: () => import_provider_utils29.dynamicTool,
81
81
  embed: () => embed,
82
82
  embedMany: () => embedMany,
83
83
  experimental_createMCPClient: () => createMCPClient,
@@ -87,7 +87,7 @@ __export(src_exports, {
87
87
  experimental_generateSpeech: () => generateSpeech,
88
88
  experimental_transcribe: () => transcribe,
89
89
  extractReasoningMiddleware: () => extractReasoningMiddleware,
90
- generateId: () => import_provider_utils28.generateId,
90
+ generateId: () => import_provider_utils29.generateId,
91
91
  generateObject: () => generateObject,
92
92
  generateText: () => generateText,
93
93
  getTextFromDataUrl: () => getTextFromDataUrl,
@@ -95,7 +95,7 @@ __export(src_exports, {
95
95
  hasToolCall: () => hasToolCall,
96
96
  isDeepEqualData: () => isDeepEqualData,
97
97
  isToolUIPart: () => isToolUIPart,
98
- jsonSchema: () => import_provider_utils28.jsonSchema,
98
+ jsonSchema: () => import_provider_utils29.jsonSchema,
99
99
  lastAssistantMessageIsCompleteWithToolCalls: () => lastAssistantMessageIsCompleteWithToolCalls,
100
100
  modelMessageSchema: () => modelMessageSchema,
101
101
  parsePartialJson: () => parsePartialJson,
@@ -109,15 +109,16 @@ __export(src_exports, {
109
109
  streamObject: () => streamObject,
110
110
  streamText: () => streamText,
111
111
  systemModelMessageSchema: () => systemModelMessageSchema,
112
- tool: () => import_provider_utils28.tool,
112
+ tool: () => import_provider_utils29.tool,
113
113
  toolModelMessageSchema: () => toolModelMessageSchema,
114
114
  userModelMessageSchema: () => userModelMessageSchema,
115
+ validateUIMessages: () => validateUIMessages,
115
116
  wrapLanguageModel: () => wrapLanguageModel,
116
117
  wrapProvider: () => wrapProvider,
117
- zodSchema: () => import_provider_utils28.zodSchema
118
+ zodSchema: () => import_provider_utils29.zodSchema
118
119
  });
119
120
  module.exports = __toCommonJS(src_exports);
120
- var import_provider_utils28 = require("@ai-sdk/provider-utils");
121
+ var import_provider_utils29 = require("@ai-sdk/provider-utils");
121
122
 
122
123
  // src/generate-text/generate-text.ts
123
124
  var import_provider_utils9 = require("@ai-sdk/provider-utils");
@@ -600,6 +601,31 @@ var audioMediaTypeSignatures = [
600
601
  bytesPrefix: [255, 251],
601
602
  base64Prefix: "//s="
602
603
  },
604
+ {
605
+ mediaType: "audio/mpeg",
606
+ bytesPrefix: [255, 250],
607
+ base64Prefix: "//o="
608
+ },
609
+ {
610
+ mediaType: "audio/mpeg",
611
+ bytesPrefix: [255, 243],
612
+ base64Prefix: "//M="
613
+ },
614
+ {
615
+ mediaType: "audio/mpeg",
616
+ bytesPrefix: [255, 242],
617
+ base64Prefix: "//I="
618
+ },
619
+ {
620
+ mediaType: "audio/mpeg",
621
+ bytesPrefix: [255, 227],
622
+ base64Prefix: "/+M="
623
+ },
624
+ {
625
+ mediaType: "audio/mpeg",
626
+ bytesPrefix: [255, 226],
627
+ base64Prefix: "/+I="
628
+ },
603
629
  {
604
630
  mediaType: "audio/wav",
605
631
  bytesPrefix: [82, 73, 70, 70],
@@ -9679,14 +9705,229 @@ var TextStreamChatTransport = class extends HttpChatTransport {
9679
9705
  }
9680
9706
  };
9681
9707
 
9682
- // src/ui-message-stream/create-ui-message-stream.ts
9708
+ // src/ui/validate-ui-messages.ts
9709
+ var import_provider32 = require("@ai-sdk/provider");
9683
9710
  var import_provider_utils27 = require("@ai-sdk/provider-utils");
9711
+ var import_v410 = require("zod/v4");
9712
+ var textUIPartSchema = import_v410.z.object({
9713
+ type: import_v410.z.literal("text"),
9714
+ text: import_v410.z.string(),
9715
+ state: import_v410.z.enum(["streaming", "done"]).optional(),
9716
+ providerMetadata: providerMetadataSchema.optional()
9717
+ });
9718
+ var reasoningUIPartSchema = import_v410.z.object({
9719
+ type: import_v410.z.literal("reasoning"),
9720
+ text: import_v410.z.string(),
9721
+ state: import_v410.z.enum(["streaming", "done"]).optional(),
9722
+ providerMetadata: providerMetadataSchema.optional()
9723
+ });
9724
+ var sourceUrlUIPartSchema = import_v410.z.object({
9725
+ type: import_v410.z.literal("source-url"),
9726
+ sourceId: import_v410.z.string(),
9727
+ url: import_v410.z.string(),
9728
+ title: import_v410.z.string().optional(),
9729
+ providerMetadata: providerMetadataSchema.optional()
9730
+ });
9731
+ var sourceDocumentUIPartSchema = import_v410.z.object({
9732
+ type: import_v410.z.literal("source-document"),
9733
+ sourceId: import_v410.z.string(),
9734
+ mediaType: import_v410.z.string(),
9735
+ title: import_v410.z.string(),
9736
+ filename: import_v410.z.string().optional(),
9737
+ providerMetadata: providerMetadataSchema.optional()
9738
+ });
9739
+ var fileUIPartSchema = import_v410.z.object({
9740
+ type: import_v410.z.literal("file"),
9741
+ mediaType: import_v410.z.string(),
9742
+ filename: import_v410.z.string().optional(),
9743
+ url: import_v410.z.string(),
9744
+ providerMetadata: providerMetadataSchema.optional()
9745
+ });
9746
+ var stepStartUIPartSchema = import_v410.z.object({
9747
+ type: import_v410.z.literal("step-start")
9748
+ });
9749
+ var dataUIPartSchema = import_v410.z.object({
9750
+ type: import_v410.z.string().startsWith("data-"),
9751
+ id: import_v410.z.string().optional(),
9752
+ data: import_v410.z.unknown()
9753
+ });
9754
+ var dynamicToolUIPartSchemas = [
9755
+ import_v410.z.object({
9756
+ type: import_v410.z.literal("dynamic-tool"),
9757
+ toolName: import_v410.z.string(),
9758
+ toolCallId: import_v410.z.string(),
9759
+ state: import_v410.z.literal("input-streaming"),
9760
+ input: import_v410.z.unknown().optional(),
9761
+ output: import_v410.z.never().optional(),
9762
+ errorText: import_v410.z.never().optional()
9763
+ }),
9764
+ import_v410.z.object({
9765
+ type: import_v410.z.literal("dynamic-tool"),
9766
+ toolName: import_v410.z.string(),
9767
+ toolCallId: import_v410.z.string(),
9768
+ state: import_v410.z.literal("input-available"),
9769
+ input: import_v410.z.unknown(),
9770
+ output: import_v410.z.never().optional(),
9771
+ errorText: import_v410.z.never().optional(),
9772
+ callProviderMetadata: providerMetadataSchema.optional()
9773
+ }),
9774
+ import_v410.z.object({
9775
+ type: import_v410.z.literal("dynamic-tool"),
9776
+ toolName: import_v410.z.string(),
9777
+ toolCallId: import_v410.z.string(),
9778
+ state: import_v410.z.literal("output-available"),
9779
+ input: import_v410.z.unknown(),
9780
+ output: import_v410.z.unknown(),
9781
+ errorText: import_v410.z.never().optional(),
9782
+ callProviderMetadata: providerMetadataSchema.optional(),
9783
+ preliminary: import_v410.z.boolean().optional()
9784
+ }),
9785
+ import_v410.z.object({
9786
+ type: import_v410.z.literal("dynamic-tool"),
9787
+ toolName: import_v410.z.string(),
9788
+ toolCallId: import_v410.z.string(),
9789
+ state: import_v410.z.literal("output-error"),
9790
+ input: import_v410.z.unknown(),
9791
+ output: import_v410.z.never().optional(),
9792
+ errorText: import_v410.z.string(),
9793
+ callProviderMetadata: providerMetadataSchema.optional()
9794
+ })
9795
+ ];
9796
+ var toolUIPartSchemas = [
9797
+ import_v410.z.object({
9798
+ type: import_v410.z.string().startsWith("tool-"),
9799
+ toolCallId: import_v410.z.string(),
9800
+ state: import_v410.z.literal("input-streaming"),
9801
+ input: import_v410.z.unknown().optional(),
9802
+ output: import_v410.z.never().optional(),
9803
+ errorText: import_v410.z.never().optional()
9804
+ }),
9805
+ import_v410.z.object({
9806
+ type: import_v410.z.string().startsWith("tool-"),
9807
+ toolCallId: import_v410.z.string(),
9808
+ state: import_v410.z.literal("input-available"),
9809
+ input: import_v410.z.unknown(),
9810
+ output: import_v410.z.never().optional(),
9811
+ errorText: import_v410.z.never().optional(),
9812
+ callProviderMetadata: providerMetadataSchema.optional()
9813
+ }),
9814
+ import_v410.z.object({
9815
+ type: import_v410.z.string().startsWith("tool-"),
9816
+ toolCallId: import_v410.z.string(),
9817
+ state: import_v410.z.literal("output-available"),
9818
+ input: import_v410.z.unknown(),
9819
+ output: import_v410.z.unknown(),
9820
+ errorText: import_v410.z.never().optional(),
9821
+ callProviderMetadata: providerMetadataSchema.optional(),
9822
+ preliminary: import_v410.z.boolean().optional()
9823
+ }),
9824
+ import_v410.z.object({
9825
+ type: import_v410.z.string().startsWith("tool-"),
9826
+ toolCallId: import_v410.z.string(),
9827
+ state: import_v410.z.literal("output-error"),
9828
+ input: import_v410.z.unknown(),
9829
+ output: import_v410.z.never().optional(),
9830
+ errorText: import_v410.z.string(),
9831
+ callProviderMetadata: providerMetadataSchema.optional()
9832
+ })
9833
+ ];
9834
+ var uiMessageSchema = import_v410.z.object({
9835
+ id: import_v410.z.string(),
9836
+ role: import_v410.z.enum(["system", "user", "assistant"]),
9837
+ metadata: import_v410.z.unknown().optional(),
9838
+ parts: import_v410.z.array(
9839
+ import_v410.z.union([
9840
+ textUIPartSchema,
9841
+ reasoningUIPartSchema,
9842
+ sourceUrlUIPartSchema,
9843
+ sourceDocumentUIPartSchema,
9844
+ fileUIPartSchema,
9845
+ stepStartUIPartSchema,
9846
+ dataUIPartSchema,
9847
+ ...dynamicToolUIPartSchemas,
9848
+ ...toolUIPartSchemas
9849
+ ])
9850
+ )
9851
+ });
9852
+ async function validateUIMessages({
9853
+ messages,
9854
+ metadataSchema,
9855
+ dataSchemas,
9856
+ tools
9857
+ }) {
9858
+ const validatedMessages = await (0, import_provider_utils27.validateTypes)({
9859
+ value: messages,
9860
+ schema: import_v410.z.array(uiMessageSchema)
9861
+ });
9862
+ if (metadataSchema) {
9863
+ for (const message of validatedMessages) {
9864
+ await (0, import_provider_utils27.validateTypes)({
9865
+ value: message.metadata,
9866
+ schema: metadataSchema
9867
+ });
9868
+ }
9869
+ }
9870
+ if (dataSchemas) {
9871
+ for (const message of validatedMessages) {
9872
+ const dataParts = message.parts.filter(
9873
+ (part) => part.type.startsWith("data-")
9874
+ );
9875
+ for (const dataPart of dataParts) {
9876
+ const dataName = dataPart.type.slice(5);
9877
+ const dataSchema = dataSchemas[dataName];
9878
+ if (!dataSchema) {
9879
+ throw new import_provider32.TypeValidationError({
9880
+ value: dataPart.data,
9881
+ cause: `No data schema found for data part ${dataName}`
9882
+ });
9883
+ }
9884
+ await (0, import_provider_utils27.validateTypes)({
9885
+ value: dataPart.data,
9886
+ schema: dataSchema
9887
+ });
9888
+ }
9889
+ }
9890
+ }
9891
+ if (tools) {
9892
+ for (const message of validatedMessages) {
9893
+ const toolParts = message.parts.filter(
9894
+ (part) => part.type.startsWith("tool-")
9895
+ );
9896
+ for (const toolPart of toolParts) {
9897
+ const toolName = toolPart.type.slice(5);
9898
+ const tool3 = tools[toolName];
9899
+ if (!tool3) {
9900
+ throw new import_provider32.TypeValidationError({
9901
+ value: toolPart.input,
9902
+ cause: `No tool schema found for tool part ${toolName}`
9903
+ });
9904
+ }
9905
+ if (toolPart.state === "input-available" || toolPart.state === "output-available" || toolPart.state === "output-error") {
9906
+ await (0, import_provider_utils27.validateTypes)({
9907
+ value: toolPart.input,
9908
+ schema: tool3.inputSchema
9909
+ });
9910
+ }
9911
+ if (toolPart.state === "output-available" && tool3.outputSchema) {
9912
+ await (0, import_provider_utils27.validateTypes)({
9913
+ value: toolPart.output,
9914
+ schema: tool3.outputSchema
9915
+ });
9916
+ }
9917
+ }
9918
+ }
9919
+ }
9920
+ return validatedMessages;
9921
+ }
9922
+
9923
+ // src/ui-message-stream/create-ui-message-stream.ts
9924
+ var import_provider_utils28 = require("@ai-sdk/provider-utils");
9684
9925
  function createUIMessageStream({
9685
9926
  execute,
9686
- onError = import_provider_utils27.getErrorMessage,
9927
+ onError = import_provider_utils28.getErrorMessage,
9687
9928
  originalMessages,
9688
9929
  onFinish,
9689
- generateId: generateId3 = import_provider_utils27.generateId
9930
+ generateId: generateId3 = import_provider_utils28.generateId
9690
9931
  }) {
9691
9932
  let controller;
9692
9933
  const ongoingStreamPromises = [];
@@ -9906,6 +10147,7 @@ function readUIMessageStream({
9906
10147
  tool,
9907
10148
  toolModelMessageSchema,
9908
10149
  userModelMessageSchema,
10150
+ validateUIMessages,
9909
10151
  wrapLanguageModel,
9910
10152
  wrapProvider,
9911
10153
  zodSchema