From 0ec59276c751228f5b69660cd35eb686c8117219 Mon Sep 17 00:00:00 2001 From: chihlasm Date: Mon, 23 Mar 2026 12:41:28 +0000 Subject: [PATCH] refactor: move FlowPilot actions to header bar, fix dividers MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Moved Resolve/Escalate/Share Update buttons from fixed bottom bar into the session header. Desktop: inline buttons + overflow menu (Pause/Close). Mobile: single overflow menu with all actions. - Removed FlowPilotActionBar from bottom — message input is now the only fixed element at bottom, giving more breathing room. - Replaced jarring white dividers (var(--glass-border)) with subtle border-border (#2e3240) throughout FlowPilot session. - Restyled status badge from button-looking element to dot + text indicator with semantic colors (green=resolved, amber=escalated). - Reduced content padding from pb-32 to pb-24. Co-Authored-By: Claude Opus 4.6 (1M context) --- .../flowpilot/FlowPilotMessageBar.tsx | 2 +- .../components/flowpilot/FlowPilotSession.tsx | 29 +- frontend/src/pages/FlowPilotSessionPage.tsx | 261 +++++++++++++++++- 3 files changed, 259 insertions(+), 33 deletions(-) diff --git a/frontend/src/components/flowpilot/FlowPilotMessageBar.tsx b/frontend/src/components/flowpilot/FlowPilotMessageBar.tsx index e6a31687..a30bf833 100644 --- a/frontend/src/components/flowpilot/FlowPilotMessageBar.tsx +++ b/frontend/src/components/flowpilot/FlowPilotMessageBar.tsx @@ -178,7 +178,7 @@ export function FlowPilotMessageBar({ onRespond, disabled = false, isProcessing return (
{/* Mobile sidebar summary (collapsible) */} -
+
+ + {fp.allSteps.length >= 2 && ( + + )} + {/* Overflow: Pause / Close */} +
+ + {showOverflow && ( + <> +
setShowOverflow(false)} /> +
+ + +
+ + )} +
+
+ + {/* Mobile: single overflow menu */} +
+ + {showOverflow && ( + <> +
setShowOverflow(false)} /> +
+ + + {fp.allSteps.length >= 2 && ( + + )} +
+ + +
+ + )} +
+ + )} + + {/* Status badge — non-active states */} + {fp.session.status !== 'active' && ( + + + {fp.session.status} + + )}
{/* Session content */} @@ -240,6 +386,105 @@ export default function FlowPilotSessionPage() { onGenerateStatusUpdate={(audience, length, context) => fp.generateStatusUpdate({ audience, length, context })} />
+ + {/* ── Page-level modals (moved from action bar) ── */} + + {/* Resolve modal */} + {showResolve && ( +
+
+

Resolve Session

+

Summarize what fixed the issue. This will be included in the auto-generated documentation.

+