diff --git a/src/lib/ChatOptionMenu.svelte b/src/lib/ChatOptionMenu.svelte index 7cd8a18..c7d6362 100644 --- a/src/lib/ChatOptionMenu.svelte +++ b/src/lib/ChatOptionMenu.svelte @@ -14,7 +14,7 @@ faFileExport, faTrashCan } from '@fortawesome/free-solid-svg-icons/index' - import { addChatFromJSON, chatsStorage, clearChats, clearMessages, copyChat, showSetChatSettings } from './Storage.svelte' + import { addChatFromJSON, chatsStorage, checkStateChange, clearChats, clearMessages, copyChat, showSetChatSettings } from './Storage.svelte' import { exportAsMarkdown, exportChatAsJSON } from './Export.svelte' import { applyProfile } from './Profiles.svelte' import { replace } from 'svelte-spa-router' @@ -29,6 +29,7 @@ let chatFileInput const importChatFromFile = (e) => { + close() const image = e.target.files[0] const reader = new FileReader() reader.readAsText(image) @@ -39,6 +40,7 @@ } const deleteChat = () => { + close() if (window.confirm('Are you sure you want to delete this chat?')) { replace('/').then(() => { chatsStorage.update((chats) => chats.filter((chat) => chat.id !== chatId)) @@ -47,11 +49,22 @@ } const confirmClearChats = () => { + close() if (window.confirm('Are you sure you want to delete ALL of your chats?')) { clearChats() } } + const close = () => { + showChatMenu = false + } + + const restartChatSession = () => { + close() + applyProfile(chatId, '', true) + $checkStateChange++ // signal chat page to start profile + } +