From a38f7eef52b7446741f2559844b139a92fd46ae4 Mon Sep 17 00:00:00 2001
From: Digital-Meta <137065378+Digital-Meta@users.noreply.github.com>
Date: Sun, 27 Sep 2026 15:35:34 +0100
Subject: [PATCH 1/9] refactor(sessions): extract shared SessionList from
SessionSidebar
---
.../chat/session-sidebar/SessionList.svelte | 219 ++++++++++++++++++
.../session-sidebar/SessionSidebar.svelte | 209 +----------------
2 files changed, 221 insertions(+), 207 deletions(-)
create mode 100644 src/components/chat/session-sidebar/SessionList.svelte
diff --git a/src/components/chat/session-sidebar/SessionList.svelte b/src/components/chat/session-sidebar/SessionList.svelte
new file mode 100644
index 00000000..6a4bf051
--- /dev/null
+++ b/src/components/chat/session-sidebar/SessionList.svelte
@@ -0,0 +1,219 @@
+
+
+
+
+
+
+
+
+
+{#if !showArchived && sections.pinned.length}
+
+
Pinned
+ {#each sections.pinned as row (row.threadId)}
+
open(row.threadId)}
+ onRename={() => rename(row.threadId, row.title)}
+ onDelete={() => del(row.threadId, row.title)}
+ onTogglePin={() => togglePin(row.threadId, row.pinned)}
+ onToggleArchive={() => toggleArchive(row.threadId, row.archived)}
+ />
+ {/each}
+
+{/if}
+
+
+
{showArchived ? "Archived" : "Sessions"}
+ {#if visibleRows.length === 0}
+
{query ? "No matching sessions" : "No conversations"}
+ {/if}
+ {#each visibleRows as row (row.threadId)}
+
open(row.threadId)}
+ onRename={() => rename(row.threadId, row.title)}
+ onDelete={() => del(row.threadId, row.title)}
+ onTogglePin={() => togglePin(row.threadId, row.pinned)}
+ onToggleArchive={() => toggleArchive(row.threadId, row.archived)}
+ />
+ {/each}
+ {#if remaining > 0}
+
+ {/if}
+
+
+
diff --git a/src/components/chat/session-sidebar/SessionSidebar.svelte b/src/components/chat/session-sidebar/SessionSidebar.svelte
index 0b2eb6d7..122a852a 100644
--- a/src/components/chat/session-sidebar/SessionSidebar.svelte
+++ b/src/components/chat/session-sidebar/SessionSidebar.svelte
@@ -1,145 +1,14 @@
From 8c0e15e56c2a553050f31d9909f50e03b91bc3b4 Mon Sep 17 00:00:00 2001
From: Digital-Meta <137065378+Digital-Meta@users.noreply.github.com>
Date: Sun, 27 Sep 2026 15:42:17 +0100
Subject: [PATCH 2/9] feat(sessions): touch overflow menu for session rows
---
.../session-sidebar/SessionSidebarItem.svelte | 82 ++++++++++++++++++-
1 file changed, 79 insertions(+), 3 deletions(-)
diff --git a/src/components/chat/session-sidebar/SessionSidebarItem.svelte b/src/components/chat/session-sidebar/SessionSidebarItem.svelte
index c7ee310e..634c8058 100644
--- a/src/components/chat/session-sidebar/SessionSidebarItem.svelte
+++ b/src/components/chat/session-sidebar/SessionSidebarItem.svelte
@@ -1,4 +1,5 @@
@@ -58,6 +90,14 @@ const dateStr = $derived(new Date(row.updatedAt).toLocaleDateString());
+