feat: Chat UI done

This commit is contained in:
2024-03-29 18:11:55 +08:00
parent 1ee6ada6af
commit d20b518f5b
5 changed files with 202 additions and 77 deletions

View File

@@ -1,4 +1,5 @@
import type {ResultBlockMeta} from '~/components/aigc/drawing';
import type {ChatSession} from "~/components/aigc/chat";
export interface HistoryItem {
fid: string
@@ -8,11 +9,17 @@ export interface HistoryItem {
images?: string[]
}
export const useHistory = defineStore('aigc_history', () => {
export const useHistory = defineStore('xsh_assistant_aigc_history', () => {
const text2img = ref<HistoryItem[]>([])
const chatSessions = ref<ChatSession[]>([])
const setChatSessions = (sessions: ChatSession[]) => {
chatSessions.value = sessions
}
return {
text2img
text2img,
chatSessions,
setChatSessions,
}
}, {
persist: {

View File

@@ -0,0 +1,18 @@
export const useIdGenerator = () => {
const generateUUID = () => {
// noinspection SpellCheckingInspection
return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function (c) {
const r = Math.random() * 16 | 0, v = c === 'x' ? r : (r & 0x3 | 0x8)
return v.toString(16)
})
}
const generateMathRandom = () => {
return Math.random().toString(36).slice(2)
}
return {
generateUUID,
generateMathRandom
}
}