mirror of
https://github.com/Ark0N/Codeman.git
synced 2026-10-09 00:49:41 +02:00
COD-121 unified session list: persistent Session Manager modal (slice A, unit 3)
Adds a header-reachable Session Manager so the complete session list is available mid-session, not only on the welcome screen. - index.html: always-on header button (.btn-session-manager) + #sessionManagerModal (mirrors the Away Digest modal) with a search box + results list. - panels-ui.js: openSessionManager()/closeSessionManager()/_loadSessionManagerList() — loads GET /api/sessions/unified (limit 200), renders via the unit-2 _buildHistoryItem (rich items, mode/LIVE badges, open->select / closed->resume), debounced search wired to the endpoint's q= param, empty/error states. A modal-scoped Escape listener closes it even when focus is in the search input; backdrop click and item click also close it. - app.js: closeSessionManager() added to the global Escape chain. - styles.css: modal + list styling (items reuse .history-item). Verified on an isolated beta instance (Playwright): the header button opens the modal, it lists 200 sessions from /api/sessions/unified, a no-match query issues ?q= to the server and yields 0 items, clearing restores the list, clicking an item closes the modal and routes resume/select, and Escape closes it. Gates: tsc 0, lint 0, frontend-syntax + public-asset format clean, 17 tests pass.
This commit is contained in:
@@ -827,6 +827,7 @@ class CodemanApp {
|
||||
this.closeAllPanels();
|
||||
this.closeHelp();
|
||||
if (this.attachmentHistoryDrawerOpen) this.closeAttachmentHistory();
|
||||
this.closeSessionManager();
|
||||
}
|
||||
|
||||
// Option/Alt session navigation uses physical key CODES, not e.key, so macOS
|
||||
|
||||
Reference in New Issue
Block a user