Skip to content

Commit 35b6093

Browse files
gabrypavanelloSirius
andauthored
Unified Sidebar — Servers, Primitives & Connection Form (#156)
* feat(inspector): server blocks + stopped connections state [TASK-026-01] - Add stoppedConnections state to InspectorDashboard with localStorage persistence - Transform McpPrimitivesPanel from tabbed interface to server blocks layout - Each server block shows: name, Start/Stop button, primitives grouped by kind (Tools/Resources/Prompts) - Stopped servers appear greyed out with Start button to reconnect - Empty primitive groups are hidden - Add backward compatibility for legacy props API (tools/resources/prompts/position) - Preserve existing collapsible card tests working with legacy API - Add search filter for primitives across all servers - Skip unified-sidebar tests (depend on components from later subtasks) * feat(inspector): sidebar header with search and add button [TASK-026-02] * feat(inspector): collapsible server info section [TASK-026-03] * feat(inspector): inline connection form in sidebar [TASK-026-04] * feat(inspector): primitive detail browse mode [TASK-026-05] * feat(inspector): primitive detail action mode + response panel [TASK-026-06] * fix(inspector): wire item selection, mutual exclusivity, localStorage persistence [TASK-026] * fix(inspector): UI polish — detail position, styling, server info, disabled actions [TASK-026] Changes: - Move primitive detail view from center area to right panel - Style tool/resource/prompt items as card-like buttons (bolder, bigger) - Wire actual server info (transport: http, version, capabilities) - Increase font sizes in sidebar headers and content - Disable action buttons (Run/Read/Use) with 'Coming soon' tooltip The right panel now shows primitive detail when a primitive is selected, replacing the agent/events/logs tabs temporarily. Collapsing the right panel clears the selection. Server info now displays: - Transport: http (dashboard only supports HTTP) - Version: from serverInfo.version - Capabilities: derived from available primitives * fix: remove focus ring on primitive items (hover border bug) * fix(inspector): move detail view to left panel [TASK-026] * feat: remove old TabBar and ConnectionBar from header - Sidebar now handles all connections via + button - Removed ConnectionBar (URL bar in header) - Removed TabBar (connection tabs) - Updated NoWidgetPlaceholder to point users to sidebar - Cleaned up orphaned state/handlers * fix(inspector): multiple UI polish fixes [TASK-026] - Remove border change on hover (just background) - Play/stop white icons instead of text buttons - Server info always visible (not collapsible) - Lighter gray for disconnected labels (#9ca3af) - Loading state when reconnecting servers - Server history dropdown in connection form * fix: add missing useMemo import * fix: remove duplicate collapsible description in tool detail * feat(inspector): collapsible primitive cards + delete server button [TASK-026] - Start/stop button: white background, black icon - Each tool/resource/prompt is now a collapsible card with animation - Added bin (trash) icon button to remove servers completely - Cards expand to show description * fix: revert primitive cards - tools/resources/prompts are clickable items Server is already a collapsible card. Primitives should be simple clickable items that open the detail view, not collapsible cards. Kept: - White start/stop button with black icon - Delete (trash) button per server - Server as collapsible card (unchanged) * fix(inspector): server name styling + detail animation - Server name: bigger font (0.9375rem) and white color - Removed collapse arrow near server name - Detail appears with slide-in-from-left + fade animation (0.2s) * feat(inspector): detail slide animation + server info chips - Detail slides in from right-to-left on open - Detail slides out left-to-right on dismiss (animated) - Server info now displayed as horizontal chips/badges - Chips show: status, transport, version, capabilities * fix: improved detail animation - proper exit + reduced jump - Fixed exit animation not triggering (state machine approach) - Reduced translation distance (16px → 8px) to minimize jump - Cleaner enter/exit state transitions * fix: use CSS transitions for detail animation (simpler approach) - Enter: fade in + slide from right - Exit: fade out + slide to left - Uses requestAnimationFrame for reliable transition trigger * feat: slide-over detail panel that covers content - Detail slides in from right, covering the server list - Full panel with solid background - Fade + slide animation (250ms) - Slides out to right on close * fix: keep server list visible while detail slides over Server list now stays rendered underneath the sliding detail panel * fix: remove white border on selected primitives * fix: align annotation tags to right in detail header * fix: address P0 review feedback (validation, parsing, cleanup) * fix: resolve typecheck errors (Zod v4 syntax, unused code cleanup) --------- Co-authored-by: Sirius <sirius@clawd.bot>
1 parent 527c775 commit 35b6093

File tree

6 files changed

+3951
-245
lines changed

6 files changed

+3951
-245
lines changed

0 commit comments

Comments
 (0)