chore: update to ai sdk v5 beta (#1074)

This commit is contained in:
Jeremy 2025-07-03 02:26:34 -07:00 committed by GitHub
parent 7d8e71383f
commit 4c281fe09d
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
54 changed files with 1372 additions and 1060 deletions

View file

@ -1,4 +1,3 @@
import type { UIMessage } from 'ai';
import { PreviewMessage, ThinkingMessage } from './message';
import { Greeting } from './greeting';
import { memo } from 'react';
@ -7,14 +6,16 @@ import equal from 'fast-deep-equal';
import type { UseChatHelpers } from '@ai-sdk/react';
import { motion } from 'framer-motion';
import { useMessages } from '@/hooks/use-messages';
import type { ChatMessage } from '@/lib/types';
import { useDataStream } from './data-stream-provider';
interface MessagesProps {
chatId: string;
status: UseChatHelpers['status'];
status: UseChatHelpers<ChatMessage>['status'];
votes: Array<Vote> | undefined;
messages: Array<UIMessage>;
setMessages: UseChatHelpers['setMessages'];
reload: UseChatHelpers['reload'];
messages: ChatMessage[];
setMessages: UseChatHelpers<ChatMessage>['setMessages'];
regenerate: UseChatHelpers<ChatMessage>['regenerate'];
isReadonly: boolean;
isArtifactVisible: boolean;
}
@ -25,7 +26,7 @@ function PureMessages({
votes,
messages,
setMessages,
reload,
regenerate,
isReadonly,
}: MessagesProps) {
const {
@ -39,6 +40,8 @@ function PureMessages({
status,
});
useDataStream();
return (
<div
ref={messagesContainerRef}
@ -58,7 +61,7 @@ function PureMessages({
: undefined
}
setMessages={setMessages}
reload={reload}
regenerate={regenerate}
isReadonly={isReadonly}
requiresScrollPadding={
hasSentMessage && index === messages.length - 1
@ -84,10 +87,9 @@ export const Messages = memo(PureMessages, (prevProps, nextProps) => {
if (prevProps.isArtifactVisible && nextProps.isArtifactVisible) return true;
if (prevProps.status !== nextProps.status) return false;
if (prevProps.status && nextProps.status) return false;
if (prevProps.messages.length !== nextProps.messages.length) return false;
if (!equal(prevProps.messages, nextProps.messages)) return false;
if (!equal(prevProps.votes, nextProps.votes)) return false;
return true;
return false;
});