- {chat?.title}
+ {#if editingChatId === chat.id}
+
+ {
+ e.stopPropagation();
+ if (e.key === 'Enter') {
+ e.preventDefault();
+ confirmRename();
+ } else if (e.key === 'Escape') {
+ e.preventDefault();
+ cancelRename();
+ }
+ }}
+ on:blur={() => {
+ if (!generating) {
+ confirmRename();
+ }
+ }}
+ />
+
+
+
+
+
+
+
+ {:else}
+
{
+ await goto(`/c/${chat.id}`);
+ show = false;
+ onClose();
+ }}
+ >
+
+ {chat?.title}
+
+
+ {/if}
+
+
+ {#if editingChatId !== chat.id}
+ {#if shiftKey}
+
+
+
+
+
+
+
+
+
+ {:else}
+
+
{
+ menuChatId = chat.id;
+ showShareChatModal = true;
+ }}
+ {moveChatHandler}
+ cloneChatHandler={() => {
+ cloneChatHandler(chat.id);
+ }}
+ archiveChatHandler={() => {
+ archiveChatHandler(chat.id);
+ }}
+ renameHandler={() => {
+ renameHandler(chat.id);
+ }}
+ deleteHandler={() => {
+ menuChatId = chat.id;
+ menuChatTitle = chat.title;
+ showDeleteConfirm = true;
+ }}
+ onClose={() => {}}
+ onPinChange={async () => {
+ await refreshSidebar();
+ await searchHandler();
+ }}
+ >
+
+
+
+ {/if}
+ {/if}
+
+
+ {$i18n.t(
+ dayjs(chat?.updated_at * 1000).calendar(null, {
+ sameDay: '[Today]',
+ nextDay: '[Tomorrow]',
+ nextWeek: 'dddd',
+ lastDay: '[Yesterday]',
+ lastWeek: '[Last] dddd',
+ sameElse: 'L'
+ })
+ )}
-
-
- {$i18n.t(
- dayjs(chat?.updated_at * 1000).calendar(null, {
- sameDay: '[Today]',
- nextDay: '[Tomorrow]',
- nextWeek: 'dddd',
- lastDay: '[Yesterday]',
- lastWeek: '[Last] dddd',
- sameElse: 'L' // use localized format, otherwise dayjs.calendar() defaults to DD/MM/YYYY
- })
- )}
-
-
+
{/each}
{#if !allChatsLoaded}
diff --git a/src/lib/components/layout/Sidebar/ChatMenu.svelte b/src/lib/components/layout/Sidebar/ChatMenu.svelte
index 96e8a997ce..13731e6528 100644
--- a/src/lib/components/layout/Sidebar/ChatMenu.svelte
+++ b/src/lib/components/layout/Sidebar/ChatMenu.svelte
@@ -362,6 +362,7 @@
draggable="false"
class="flex gap-2 items-center px-3 py-1.5 text-sm cursor-pointer hover:bg-gray-50 dark:hover:bg-gray-800 rounded-xl w-full"
on:click={() => {
+ show = false;
renameHandler();
}}
>
@@ -375,6 +376,7 @@
draggable="false"
class="flex gap-2 items-center px-3 py-1.5 text-sm cursor-pointer hover:bg-gray-50 dark:hover:bg-gray-800 rounded-xl w-full"
on:click={() => {
+ show = false;
pinHandler();
}}
>