Timothy Jaeryang Baek 1 周之前
父節點
當前提交
97faeccebf

+ 7 - 2
src/lib/components/chat/Chat.svelte

@@ -220,10 +220,15 @@
 	}
 
 	const saveSessionSelectedModels = () => {
-		if (selectedModels.length === 0 || (selectedModels.length === 1 && selectedModels[0] === '')) {
+		const selectedModelsString = JSON.stringify(selectedModels);
+		if (
+			selectedModels.length === 0 ||
+			(selectedModels.length === 1 && selectedModels[0] === '') ||
+			sessionStorage.selectedModels === selectedModelsString
+		) {
 			return;
 		}
-		sessionStorage.selectedModels = JSON.stringify(selectedModels);
+		sessionStorage.selectedModels = selectedModelsString;
 		console.log('saveSessionSelectedModels', selectedModels, sessionStorage.selectedModels);
 	};
 

+ 0 - 2
src/lib/components/chat/MessageInput.svelte

@@ -885,8 +885,6 @@
 				})
 			}
 		];
-
-		console.log(suggestions);
 		loaded = true;
 
 		window.setTimeout(() => {

+ 0 - 2
src/lib/components/chat/Messages/ResponseMessage.svelte

@@ -576,8 +576,6 @@
 
 		await tick();
 		if (buttonsContainerElement) {
-			console.log(buttonsContainerElement);
-
 			buttonsContainerElement.addEventListener('wheel', function (event) {
 				if (buttonsContainerElement.scrollWidth <= buttonsContainerElement.clientWidth) {
 					// If the container is not scrollable, horizontal scroll

+ 0 - 1
src/lib/components/common/CodeEditor.svelte

@@ -250,7 +250,6 @@ print("${endTag}")
 	};
 
 	onMount(() => {
-		console.log(value);
 		if (value === '') {
 			value = boilerplate;
 		}

+ 47 - 50
src/lib/components/layout/Sidebar.svelte

@@ -125,13 +125,6 @@
 				});
 			}
 		}
-
-		await tick();
-		for (const folderId in folders) {
-			if (folders[folderId] && folders[folderId].is_expanded) {
-				folderRegistry[folderId]?.setFolderItems();
-			}
-		}
 	};
 
 	const createFolder = async ({ name, data }) => {
@@ -185,14 +178,15 @@
 
 	const initChatList = async () => {
 		// Reset pagination variables
-		tags.set(await getAllTags(localStorage.token));
-		pinnedChats.set(await getPinnedChatList(localStorage.token));
-		initFolders();
-
+		console.log('initChatList');
 		currentChatPage.set(1);
 		allChatsLoaded = false;
 
 		await chats.set(await getChatList(localStorage.token, $currentChatPage));
+				const _chats = await getChatList(localStorage.token, $currentChatPage);
+				await chats.set(_chats);
+			})()
+		]);
 
 		// Enable pagination
 		scrollPaginationEnabled.set(true);
@@ -342,57 +336,52 @@
 		selectedChatId = null;
 	};
 
+	let unsubscribers = [];
 	onMount(async () => {
 		showPinnedChat = localStorage?.showPinnedChat ? localStorage.showPinnedChat === 'true' : true;
+		await showSidebar.set(!$mobile ? localStorage.sidebar === 'true' : false);
 
-		mobile.subscribe((value) => {
-			if ($showSidebar && value) {
-				showSidebar.set(false);
-			}
-
-			if ($showSidebar && !value) {
-				const navElement = document.getElementsByTagName('nav')[0];
-				if (navElement) {
-					navElement.style['-webkit-app-region'] = 'drag';
+		unsubscribers = [
+			mobile.subscribe((value) => {
+				if ($showSidebar && value) {
+					showSidebar.set(false);
 				}
-			}
 
-			if (!$showSidebar && !value) {
-				showSidebar.set(true);
-			}
-		});
+				if ($showSidebar && !value) {
+					const navElement = document.getElementsByTagName('nav')[0];
+					if (navElement) {
+						navElement.style['-webkit-app-region'] = 'drag';
+					}
+				}
 
-		showSidebar.set(!$mobile ? localStorage.sidebar === 'true' : false);
-		showSidebar.subscribe(async (value) => {
-			localStorage.sidebar = value;
+				if (!$showSidebar && !value) {
+					showSidebar.set(true);
+				}
+			}),
+			showSidebar.subscribe(async (value) => {
+				localStorage.sidebar = value;
 
-			// nav element is not available on the first render
-			const navElement = document.getElementsByTagName('nav')[0];
+				// nav element is not available on the first render
+				const navElement = document.getElementsByTagName('nav')[0];
 
-			if (navElement) {
-				if ($mobile) {
-					if (!value) {
-						navElement.style['-webkit-app-region'] = 'drag';
+				if (navElement) {
+					if ($mobile) {
+						if (!value) {
+							navElement.style['-webkit-app-region'] = 'drag';
+						} else {
+							navElement.style['-webkit-app-region'] = 'no-drag';
+						}
 					} else {
-						navElement.style['-webkit-app-region'] = 'no-drag';
+						navElement.style['-webkit-app-region'] = 'drag';
 					}
-				} else {
-					navElement.style['-webkit-app-region'] = 'drag';
 				}
-			}
 
-			if (!value) {
-				await initChannels();
-				await initChatList();
-			}
-		});
-
-		chats.subscribe((value) => {
-			initFolders();
-		});
-
-		await initChannels();
-		await initChatList();
+				if (value) {
+					await initChannels();
+					await initChatList();
+				}
+			})
+		];
 
 		window.addEventListener('keydown', onKeyDown);
 		window.addEventListener('keyup', onKeyUp);
@@ -411,6 +400,14 @@
 	});
 
 	onDestroy(() => {
+		if (unsubscribers && unsubscribers.length > 0) {
+			unsubscribers.forEach((unsubscriber) => {
+				if (unsubscriber) {
+					unsubscriber();
+				}
+			});
+		}
+
 		window.removeEventListener('keydown', onKeyDown);
 		window.removeEventListener('keyup', onKeyUp);
 

+ 4 - 3
src/lib/components/layout/Sidebar/RecursiveFolder.svelte

@@ -246,11 +246,12 @@
 	};
 
 	onMount(async () => {
+		open = folders[folderId].is_expanded;
 		folderRegistry[folderId] = {
-			setFolderItems: () => setFolderItems()
+			setFolderItems: () => {
+				setFolderItems();
+			}
 		};
-
-		open = folders[folderId].is_expanded;
 		if (folderElement) {
 			folderElement.addEventListener('dragover', onDragOver);
 			folderElement.addEventListener('drop', onDrop);