From 153fa0cdacbffbba30d11dbd1668cb0017d54bb3 Mon Sep 17 00:00:00 2001 From: Morgan Date: Sun, 6 Jul 2025 01:32:43 +0900 Subject: [PATCH] fff --- src/App.svelte | 13 +- src/app.scss | 469 ++++++++++++++++++++++++++++++- src/lib/Chat.svelte | 16 +- src/lib/ChatMenuItem.svelte | 2 +- src/lib/ChatOptionMenu.svelte | 8 + src/lib/ChatSettingsModal.svelte | 2 +- src/lib/EditMessage.svelte | 2 +- src/lib/Home.svelte | 4 +- src/lib/Messages.svelte | 2 +- src/lib/Navbar.svelte | 11 +- src/lib/Profiles.svelte | 10 +- src/lib/Settings.svelte | 8 +- src/lib/Sidebar.svelte | 200 +++++++++---- src/lib/Storage.svelte | 89 +++--- src/lib/Types.svelte | 2 +- src/lib/Util.svelte | 70 ++++- 16 files changed, 763 insertions(+), 145 deletions(-) diff --git a/src/App.svelte b/src/App.svelte index 1e772f4..e036cf1 100644 --- a/src/App.svelte +++ b/src/App.svelte @@ -3,16 +3,19 @@ import { wrap } from 'svelte-spa-router/wrap' import Navbar from './lib/Navbar.svelte' - import Sidebar from './lib/Sidebar.svelte' + import Sidebar, { sidebarCollapsed } from './lib/Sidebar.svelte' import Home from './lib/Home.svelte' import Chat from './lib/Chat.svelte' import NewChat from './lib/NewChat.svelte' import { chatsStorage } from './lib/Storage.svelte' import { Modals, closeModal } from 'svelte-modals' - import { dispatchModalEsc, checkModalEsc } from './lib/Util.svelte' + import { dispatchModalEsc, checkModalEsc, migrateChatData } from './lib/Util.svelte' import { set as setOpenAI } from './lib/providers/openai/util.svelte' import { hasActiveModels } from './lib/Models.svelte' + // Run migration on app startup to convert old numeric chat IDs to UUIDs + migrateChatData() + // Check if the API key is passed in as a "key" query parameter - if so, save it // Example: https://niek.github.io/chatgpt-web/#/?key=sk-... const urlParams: URLSearchParams = new URLSearchParams($querystring) @@ -34,7 +37,7 @@ '/chat/:chatId': wrap({ component: Chat, conditions: (detail) => { - return $chatsStorage.find((chat) => chat.id === parseInt(detail?.params?.chatId as string)) !== undefined + return $chatsStorage.find((chat) => chat.id === detail?.params?.chatId as string) !== undefined } }), @@ -51,10 +54,10 @@ -