refactor(sidebar): streamline conversation list with completed filter and expand toggle

Replace flat/grouped view toggle with a show-completed filter dropdown,
add expand/collapse-all control, extract status icon component, and
simplify the sidebar header.
This commit is contained in:
xintaofei
2026-04-21 17:07:40 +08:00
parent 58b48e2bfe
commit f0d530e1cb
15 changed files with 650 additions and 656 deletions

View File

@@ -834,8 +834,12 @@
"statsLabel": "{folders} مجلدات · {convos} محادثة",
"openFolder": "فتح مجلد",
"searchPlaceholder": "بحث عن محادثات...",
"viewFlat": "عرض مسطح",
"viewGrouped": "تجميع حسب المجلد",
"showCompleted": "عرض المحادثات المكتملة",
"moreOptions": "المزيد من الخيارات",
"statusRunningBadge": "قيد التشغيل",
"statusFailedBadge": "فشل",
"conversationCountUnit": "{count} محادثة",
"emptyFolderHint": "لا توجد محادثات",
"noMatchingConversations": "لا توجد محادثات مطابقة",
"removeFolderConfirmTitle": "إزالة المجلد من مساحة العمل؟",
"removeFolderConfirmDescription": "إزالة \"{name}\" من مساحة العمل؟ سيتم إغلاق علامات التبويب والمحطات المرتبطة.",

View File

@@ -834,8 +834,12 @@
"statsLabel": "{folders} Ordner · {convos} Konversationen",
"openFolder": "Ordner öffnen",
"searchPlaceholder": "Konversationen suchen...",
"viewFlat": "Flache Ansicht",
"viewGrouped": "Nach Ordner gruppieren",
"showCompleted": "Abgeschlossene Konversationen anzeigen",
"moreOptions": "Weitere Optionen",
"statusRunningBadge": "Läuft",
"statusFailedBadge": "Fehlgeschlagen",
"conversationCountUnit": "{count, plural, one {# Konversation} other {# Konversationen}}",
"emptyFolderHint": "Keine Konversationen",
"noMatchingConversations": "Keine passenden Konversationen",
"removeFolderConfirmTitle": "Ordner aus Arbeitsbereich entfernen?",
"removeFolderConfirmDescription": "\"{name}\" aus dem Arbeitsbereich entfernen? Zugehörige Tabs und Terminals werden geschlossen.",

View File

@@ -834,8 +834,12 @@
"statsLabel": "{folders} folders · {convos} conversations",
"openFolder": "Open Folder",
"searchPlaceholder": "Search conversations...",
"viewFlat": "Flat view",
"viewGrouped": "Grouped by folder",
"showCompleted": "Show completed conversations",
"moreOptions": "More options",
"statusRunningBadge": "Running",
"statusFailedBadge": "Failed",
"conversationCountUnit": "{count, plural, one {# conversation} other {# conversations}}",
"emptyFolderHint": "No conversations",
"noMatchingConversations": "No matching conversations",
"removeFolderConfirmTitle": "Remove folder from workspace?",
"removeFolderConfirmDescription": "Remove \"{name}\" from the workspace? Its tabs and terminals will close.",

View File

@@ -834,8 +834,12 @@
"statsLabel": "{folders} carpetas · {convos} conversaciones",
"openFolder": "Abrir carpeta",
"searchPlaceholder": "Buscar conversaciones...",
"viewFlat": "Vista plana",
"viewGrouped": "Agrupar por carpeta",
"showCompleted": "Mostrar conversaciones completadas",
"moreOptions": "Más opciones",
"statusRunningBadge": "Ejecutando",
"statusFailedBadge": "Fallido",
"conversationCountUnit": "{count, plural, one {# conversación} other {# conversaciones}}",
"emptyFolderHint": "Sin conversaciones",
"noMatchingConversations": "No hay conversaciones coincidentes",
"removeFolderConfirmTitle": "¿Eliminar carpeta del espacio de trabajo?",
"removeFolderConfirmDescription": "¿Eliminar \"{name}\" del espacio de trabajo? Sus pestañas y terminales se cerrarán.",

View File

@@ -834,8 +834,12 @@
"statsLabel": "{folders} dossiers · {convos} conversations",
"openFolder": "Ouvrir le dossier",
"searchPlaceholder": "Rechercher des conversations...",
"viewFlat": "Vue à plat",
"viewGrouped": "Grouper par dossier",
"showCompleted": "Afficher les conversations terminées",
"moreOptions": "Plus d'options",
"statusRunningBadge": "En cours",
"statusFailedBadge": "Échec",
"conversationCountUnit": "{count, plural, one {# conversation} other {# conversations}}",
"emptyFolderHint": "Aucune conversation",
"noMatchingConversations": "Aucune conversation correspondante",
"removeFolderConfirmTitle": "Retirer le dossier de l'espace de travail ?",
"removeFolderConfirmDescription": "Retirer \"{name}\" de l'espace de travail ? Les onglets et terminaux associés seront fermés.",

View File

@@ -834,8 +834,12 @@
"statsLabel": "{folders} フォルダ · {convos} 会話",
"openFolder": "フォルダを開く",
"searchPlaceholder": "会話を検索...",
"viewFlat": "フラット表示",
"viewGrouped": "フォルダでグループ化",
"showCompleted": "完了した会話を表示",
"moreOptions": "その他のオプション",
"statusRunningBadge": "実行中",
"statusFailedBadge": "失敗",
"conversationCountUnit": "{count} 件",
"emptyFolderHint": "会話がありません",
"noMatchingConversations": "一致する会話がありません",
"removeFolderConfirmTitle": "このフォルダをワークスペースから削除しますか?",
"removeFolderConfirmDescription": "\"{name}\" をワークスペースから削除しますか?関連するタブとターミナルが閉じられます。",

View File

@@ -834,8 +834,12 @@
"statsLabel": "{folders}개 폴더 · {convos}개 대화",
"openFolder": "폴더 열기",
"searchPlaceholder": "대화 검색...",
"viewFlat": "평면 보기",
"viewGrouped": "폴더별 그룹",
"showCompleted": "완료된 대화 표시",
"moreOptions": "더 많은 옵션",
"statusRunningBadge": "실행 중",
"statusFailedBadge": "실패",
"conversationCountUnit": "{count}개",
"emptyFolderHint": "대화 없음",
"noMatchingConversations": "일치하는 대화가 없습니다",
"removeFolderConfirmTitle": "이 폴더를 워크스페이스에서 제거하시겠습니까?",
"removeFolderConfirmDescription": "워크스페이스에서 \"{name}\"을(를) 제거하시겠습니까? 관련 탭과 터미널이 닫힙니다.",

View File

@@ -834,8 +834,12 @@
"statsLabel": "{folders} pastas · {convos} conversas",
"openFolder": "Abrir pasta",
"searchPlaceholder": "Buscar conversas...",
"viewFlat": "Visualização plana",
"viewGrouped": "Agrupar por pasta",
"showCompleted": "Mostrar conversas concluídas",
"moreOptions": "Mais opções",
"statusRunningBadge": "Executando",
"statusFailedBadge": "Falhou",
"conversationCountUnit": "{count, plural, one {# conversa} other {# conversas}}",
"emptyFolderHint": "Sem conversas",
"noMatchingConversations": "Nenhuma conversa correspondente",
"removeFolderConfirmTitle": "Remover pasta do espaço de trabalho?",
"removeFolderConfirmDescription": "Remover \"{name}\" do espaço de trabalho? As abas e terminais relacionados serão fechados.",

View File

@@ -834,8 +834,12 @@
"statsLabel": "{folders} 个文件夹 · {convos} 个会话",
"openFolder": "打开文件夹",
"searchPlaceholder": "搜索会话...",
"viewFlat": "平铺视图",
"viewGrouped": "按文件夹分组",
"showCompleted": "显示已完成会话",
"moreOptions": "更多选项",
"statusRunningBadge": "运行中",
"statusFailedBadge": "失败",
"conversationCountUnit": "{count} 条",
"emptyFolderHint": "暂无会话",
"noMatchingConversations": "未找到匹配的会话",
"removeFolderConfirmTitle": "从工作区移除该文件夹?",
"removeFolderConfirmDescription": "从工作区移除 \"{name}\"?其相关 Tab 与终端将会关闭。",

View File

@@ -834,8 +834,12 @@
"statsLabel": "{folders} 個資料夾 · {convos} 個對話",
"openFolder": "開啟資料夾",
"searchPlaceholder": "搜尋對話...",
"viewFlat": "平鋪視圖",
"viewGrouped": "依資料夾分組",
"showCompleted": "顯示已完成對話",
"moreOptions": "更多選項",
"statusRunningBadge": "運行中",
"statusFailedBadge": "失敗",
"conversationCountUnit": "{count} 條",
"emptyFolderHint": "暫無對話",
"noMatchingConversations": "找不到符合的對話",
"removeFolderConfirmTitle": "從工作區移除此資料夾?",
"removeFolderConfirmDescription": "從工作區移除 \"{name}\"?相關分頁與終端機將會關閉。",