diff --git a/pyproject.toml b/pyproject.toml index 028a3bb..c4d4a33 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "hatchling.build" [project] name = "ratatoskr" -version = "0.20.16" +version = "0.20.17" description = "Worldtree Conversation API debug TUI — multi-pane observability dashboard" readme = "README.md" requires-python = ">=3.12" diff --git a/src/ratatoskr/web/static/index.html b/src/ratatoskr/web/static/index.html index b949369..2ead4d1 100644 --- a/src/ratatoskr/web/static/index.html +++ b/src/ratatoskr/web/static/index.html @@ -178,6 +178,29 @@ kbd { #app.live { display: flex; } #cols { flex: 1; display: flex; min-height: 0; } +/* ---- collapsible debug panes (independent left/right; #center reflows to fill) ---- */ +.pane-collapse { + width: 22px; height: 22px; display: flex; align-items: center; justify-content: center; + background: transparent; border: 1px solid var(--border-subtle); border-radius: var(--radius-sm); + color: var(--fg-3); cursor: pointer; flex: 0 0 auto; font-size: 13px; line-height: 1; padding: 0; +} +.pane-collapse:hover { background: var(--bg-2); color: var(--fg-0); border-color: var(--border-default); } +.ac-head-row { display: flex; align-items: center; justify-content: space-between; position: relative; } +/* re-open strip: hidden while the pane is open, becomes the full-height handle when collapsed */ +.pane-reopen { display: none; } +#cols.left-collapsed #rail-left { width: 22px !important; flex-basis: 22px !important; overflow: hidden; } +#cols.right-collapsed #affect-console { width: 22px !important; flex-basis: 22px !important; overflow: hidden; } +#cols.left-collapsed #rail-left > *:not(.pane-reopen) { display: none; } +#cols.right-collapsed #affect-console > *:not(.pane-reopen) { display: none; } +#cols.left-collapsed #rail-left .pane-reopen, +#cols.right-collapsed #affect-console .pane-reopen { + display: flex; flex: 1; width: 100%; align-items: center; justify-content: center; + background: transparent; border: none; color: var(--fg-3); cursor: pointer; font-size: 13px; +} +#cols.left-collapsed #rail-left .pane-reopen:hover, +#cols.right-collapsed #affect-console .pane-reopen:hover { background: var(--bg-2); color: var(--fg-0); } +#cols.right-collapsed #affect-resizer { display: none; } + /* eyebrow — mono uppercase wide-tracked (Australis signature) */ .eyebrow { font-family: var(--font-mono); font-size: 9.5px; @@ -554,6 +577,7 @@ body.cot-hidden #cot-toggle { border-color: rgba(66,220,209,0.55); color: var(-- +