import type { Message } from 'ai' export async function useChatFile() { const toast = useToast() async function loadChat(slug: string): Promise { if (!slug) { throw createError({ statusCode: 400, statusMessage: 'Slug is required', message: 'Slug is required', }) } const { blobs } = await $fetch('/api/files') if (!blobs.find(item => item.pathname === `chats/${slug}.json`)) { await createChat(slug) } const data = await $fetch(`/api/chats/${slug}`) const dataString = JSON.stringify(data) if (dataString === '[]') return [] return JSON.parse(dataString) } async function createChat(slug: string) { await $fetch('/api/chats', { method: 'POST', body: { file: { name: `${slug}.json`, content: '[]', }, }, }) } async function deleteChat(slug: string) { await $fetch('/api/files', { method: 'DELETE', body: { pathname: `chats/${slug}.json`, }, }) } return { loadChat, createChat, deleteChat, } }