Update PlaygroundForm and Sidebar components

This commit is contained in:
n4ze3m
2024-02-07 00:48:59 +05:30
parent 58966355c3
commit c1efb2d5cb
4 changed files with 65 additions and 14 deletions

View File

@@ -1,4 +1,7 @@
im
import {
type ChatHistory as ChatHistoryType,
type Message as MessageType
} from "~store/option"
type HistoryInfo = {
id: string
@@ -13,6 +16,7 @@ type Message = {
role: string
content: string
images?: string[]
sources?: string[]
createdAt: number
}
@@ -84,8 +88,6 @@ const generateID = () => {
})
}
export const saveHistory = async (title: string) => {
const id = generateID()
const createdAt = Date.now()
@@ -109,3 +111,29 @@ export const saveMessage = async (
await db.addMessage(message)
return message
}
export const formatToChatHistory = (
messages: MessageHistory
): ChatHistoryType => {
messages.sort((a, b) => a.createdAt - b.createdAt)
return messages.map((message) => {
return {
content: message.content,
role: message.role as "user" | "assistant" | "system",
images: message.images
}
})
}
export const formatToMessage = (messages: MessageHistory): MessageType[] => {
messages.sort((a, b) => a.createdAt - b.createdAt)
return messages.map((message) => {
return {
isBot: message.role === "assistant",
message: message.content,
name: message.name,
sources: message?.sources || [],
images: message.images || []
}
})
}