chore: fix rendering

This commit is contained in:
Louis 2023-09-29 14:17:46 +07:00 committed by Louis
parent 87678e799f
commit 315b85591f
3 changed files with 14 additions and 15 deletions

View File

@ -13,8 +13,8 @@ export default function renderChatMessage({
senderName, senderName,
createdAt, createdAt,
imageUrls, imageUrls,
htmlText,
text, text,
status,
}: ChatMessage): React.ReactNode { }: ChatMessage): React.ReactNode {
// eslint-disable-next-line react-hooks/rules-of-hooks // eslint-disable-next-line react-hooks/rules-of-hooks
const message = useAtomValue(currentStreamingMessageAtom); const message = useAtomValue(currentStreamingMessageAtom);
@ -48,7 +48,7 @@ export default function renderChatMessage({
avatarUrl={senderAvatarUrl} avatarUrl={senderAvatarUrl}
senderName={senderName} senderName={senderName}
createdAt={createdAt} createdAt={createdAt}
text={text} text={htmlText ?? text}
/> />
) : ( ) : (
<StreamTextMessage <StreamTextMessage
@ -57,7 +57,7 @@ export default function renderChatMessage({
avatarUrl={senderAvatarUrl} avatarUrl={senderAvatarUrl}
senderName={senderName} senderName={senderName}
createdAt={createdAt} createdAt={createdAt}
text={text} text={htmlText ?? text}
/> />
); );
default: default:

View File

@ -41,7 +41,12 @@ export default function useSendChatMessage() {
const newChatMessage = await toChatMessage(newMessage); const newChatMessage = await toChatMessage(newMessage);
addNewMessage(newChatMessage); addNewMessage(newChatMessage);
const recentMessages = [...chatMessagesHistory, newChatMessage] const recentMessages = [
...chatMessagesHistory.toSorted(
(a, b) => parseInt(a.id) - parseInt(b.id)
),
newChatMessage,
]
.slice(-10) .slice(-10)
.map((message) => { .map((message) => {
return { return {

View File

@ -26,6 +26,7 @@ export interface ChatMessage {
senderUid: string; senderUid: string;
senderName: string; senderName: string;
senderAvatarUrl: string; senderAvatarUrl: string;
htmlText?: string | undefined;
text: string | undefined; text: string | undefined;
imageUrls?: string[] | undefined; imageUrls?: string[] | undefined;
createdAt: number; createdAt: number;
@ -45,18 +46,13 @@ export const toChatMessage = async (m: RawMessage): Promise<ChatMessage> => {
const createdAt = new Date(m.created_at ?? "").getTime(); const createdAt = new Date(m.created_at ?? "").getTime();
const imageUrls: string[] = []; const imageUrls: string[] = [];
const imageUrl = undefined; const imageUrl = undefined;
// m.message_medias.length > 0 ? m.message_medias[0].media_url : null;
if (imageUrl) { if (imageUrl) {
imageUrls.push(imageUrl); imageUrls.push(imageUrl);
} }
const messageType = MessageType.Text; const messageType = MessageType.Text;
// m.message_type ? MessageType[m.message_type as keyof typeof MessageType] : MessageType.Text;
const messageSenderType = const messageSenderType =
m.user === "user" ? MessageSenderType.User : MessageSenderType.Ai; m.user === "user" ? MessageSenderType.User : MessageSenderType.Ai;
// m.message_sender_type
// ? MessageSenderType[m.message_sender_type as keyof typeof MessageSenderType]
// : MessageSenderType.Ai;
const content = m.message ?? ""; const content = m.message ?? "";
const processedContent = await remark().use(html).process(content); const processedContent = await remark().use(html).process(content);
@ -68,15 +64,13 @@ export const toChatMessage = async (m: RawMessage): Promise<ChatMessage> => {
messageType: messageType, messageType: messageType,
messageSenderType: messageSenderType, messageSenderType: messageSenderType,
senderUid: m.user?.toString() || "0", senderUid: m.user?.toString() || "0",
senderName: m.user === "user" ? "You" : "LLaMA", // m.sender_name ?? "", senderName: m.user === "user" ? "You" : "Assistant",
senderAvatarUrl: senderAvatarUrl:
m.user === "user" m.user === "user" ? "icons/avatar.svg" : "icons/app_icon.svg",
? "icons/avatar.svg" text: content,
: "https://huggingface.co/front/assets/huggingface_logo-noborder.svg", // m.sender_avatar_url ?? "icons/app_icon.svg", htmlText: contentHtml,
text: contentHtml,
imageUrls: imageUrls, imageUrls: imageUrls,
createdAt: createdAt, createdAt: createdAt,
status: MessageStatus.Ready, status: MessageStatus.Ready,
// status: m.status as MessageStatus,
}; };
}; };