Skip to content

feat(ui): resizable scripts sidebar#33

Merged
knep merged 1 commit into
masterfrom
feat/resizable-sidebar
Jun 25, 2026
Merged

feat(ui): resizable scripts sidebar#33
knep merged 1 commit into
masterfrom
feat/resizable-sidebar

Conversation

@knep

@knep knep commented Jun 25, 2026

Copy link
Copy Markdown
Owner

Summary

Makes the scripts sidebar width adjustable.

  • Drag the handle on the sidebar's right edge to resize it (clamped 220–600 px).
  • Double-click the handle to reset to the default 300 px.
  • The chosen width is persisted to localStorage and restored on load.
  • Disabled in the narrow/overlay layout (< 992 px), where the sidebar is a sliding overlay.

Implementation

In the shared AppLayout: the sidebar width is now data-driven (inline style) instead of a fixed CSS width, with a thin .sidebar-resizer handle driving mousemove/mouseup (no external dependency). flex-shrink: 0 keeps it stable. Frontend-only change.

Testing

  • npm run test:unit-ci1047 passed (9 new: default/restore/clamp-min/clamp-max, applied style, drag clamping, persist-on-end, double-click reset, handle render).
  • Verified live in a real browser (Playwright): initial 300 px → drag → 422 px → double-click → 300 px; persisted to localStorage; no JS errors.

🤖 Generated with Claude Code

Drag the handle on the sidebar's right edge to set its width (clamped 220–600px);
double-click the handle to reset to the default 300px. The width is persisted to
localStorage and restored on load. Disabled in the narrow/overlay layout.

Implemented in the shared AppLayout: the sidebar width is data-driven (inline
style) instead of a fixed CSS width, with a thin resizer handle driving
mousemove. Adds unit tests for clamping, persistence, reset and rendering.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@codecov-commenter

codecov-commenter commented Jun 25, 2026

Copy link
Copy Markdown

⚠️ Please install the 'codecov app svg image' to ensure uploads and comments are reliably processed by Codecov.

Codecov Report

❌ Patch coverage is 55.26316% with 17 lines in your changes missing coverage. Please review.

Files with missing lines Patch % Lines
web-src/src/common/components/AppLayout.vue 55.26% 13 Missing and 4 partials ⚠️

📢 Thoughts on this report? Let us know!

@knep knep merged commit d9258a7 into master Jun 25, 2026
15 of 16 checks passed
@knep knep deleted the feat/resizable-sidebar branch June 25, 2026 17:50
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants