mirror of
https://github.com/nesquena/hermes-webui.git
synced 2026-05-22 18:30:28 +00:00
970bc1d3fd
refactor(ui): three-column layout with left rail + main-view migration (#899) Unifies the shell into a three-column layout (rail + sidebar + main) matching the hermes-desktop reference, and migrates every per-item detail/edit surface into a shared main-view canvas with consistent headers, empty states, and action buttons. Changes: - New desktop-only left rail (48px) with 8 nav tabs (chat/tasks/skills/memory/workspaces/profiles/todos/settings) - Persistent app titlebar (replaces per-chat topbar), active conversation title shown - All panel detail/create/edit views migrated to #mainSkills, #mainTasks, #mainSettings, #mainWorkspaces, #mainProfiles, #mainMemory - Settings moved out of modal into main-view page; ESC closes it - YAML frontmatter rendered in collapsible <details> block in skill detail - Toasts repositioned from bottom-center to top-right with theme-aware success/error/warning/info variants - Composer workspace chip split into two-button group: files-icon toggles file panel, label opens workspace picker - .settings-menu → .side-menu / .side-menu-item (generalised, shared by memory and settings panels) - i18n: ~25 new keys across en/ru/es/de/zh/zh-Hant for all new form labels, placeholders, and empty states - Mobile: hamburger in titlebar, slide-in sidebar; box-shadow removed from sidebar - New regression test: tests/test_settings_navigation_and_detail_refresh.py (9 tests) Co-authored-by: Aron Prins <pwf.aron@gmail.com>
18 lines
597 B
Python
18 lines
597 B
Python
import pathlib
|
|
|
|
|
|
def test_workspace_suggest_endpoint_is_wired():
|
|
src = pathlib.Path("api/routes.py").read_text(encoding="utf-8")
|
|
assert '"/api/workspaces/suggest"' in src
|
|
|
|
|
|
def test_spaces_panel_uses_workspace_suggest_autocomplete():
|
|
src = pathlib.Path("static/panels.js").read_text(encoding="utf-8")
|
|
assert "/api/workspaces/suggest" in src
|
|
assert "workspaceFormPathSuggestions" in src
|
|
assert "scheduleWorkspacePathSuggestions" in src
|
|
assert "if(!prefix)" in src
|
|
assert "dataset.path" in src
|
|
assert "scrollIntoView" in src
|
|
assert "_wsSuggestIndex=0" in src
|