diff --git a/src/lib/components/layout/Sidebar.svelte b/src/lib/components/layout/Sidebar.svelte index 0ab13e6ad..144b03b0b 100644 --- a/src/lib/components/layout/Sidebar.svelte +++ b/src/lib/components/layout/Sidebar.svelte @@ -77,6 +77,7 @@ let allChatsLoaded = false; let folders = {}; + let newFolderId = null; const initFolders = async () => { const folderList = await getFolders(localStorage.token).catch((error) => { @@ -90,6 +91,11 @@ for (const folder of folderList) { // Ensure folder is added to folders with its data folders[folder.id] = { ...(folders[folder.id] || {}), ...folder }; + + if (newFolderId && folder.id === newFolderId) { + folders[folder.id].isNew = true; + newFolderId = null; + } } // Second pass: Tie child folders to their parents @@ -150,6 +156,7 @@ }); if (res) { + newFolderId = res.id; await initFolders(); } }; diff --git a/src/lib/components/layout/Sidebar/RecursiveFolder.svelte b/src/lib/components/layout/Sidebar/RecursiveFolder.svelte index 085eb683b..461b82202 100644 --- a/src/lib/components/layout/Sidebar/RecursiveFolder.svelte +++ b/src/lib/components/layout/Sidebar/RecursiveFolder.svelte @@ -215,6 +215,14 @@ // Event listener for when dragging ends folderElement.addEventListener('dragend', onDragEnd); } + + if (folders[folderId].isNew) { + folders[folderId].isNew = false; + + setTimeout(() => { + editHandler(); + }, 100); + } }); onDestroy(() => {