From 1cad2531e5220860b98982407c55b045afd584d9 Mon Sep 17 00:00:00 2001 From: Fusion Date: Sun, 3 May 2026 07:52:42 -0700 Subject: [PATCH] feat(FN-3245): add fallback for bg-surface token in ScriptsModal Fixes ScriptsModal CSS by adding a fallback value for the undefined `--bg-surface` token, preventing broken styling when the token isn't defined in the current theme. Fusion-Task-Id: FN-3245 --- packages/dashboard/README.md | 2 + .../app/components/GitManagerModal.tsx | 92 ++++--- .../dashboard/app/components/ScriptsModal.css | 243 ++++++++++++------ .../__tests__/GitManagerModal.test.tsx | 68 ++++- 4 files changed, 293 insertions(+), 112 deletions(-) diff --git a/packages/dashboard/README.md b/packages/dashboard/README.md index 6116abfb3..8357d661f 100644 --- a/packages/dashboard/README.md +++ b/packages/dashboard/README.md @@ -372,6 +372,8 @@ The Git Manager provides comprehensive repository visualization and management d - Track free/used worktree count **Remotes Tab**: Perform remote operations with commit visibility: +- Selector/detail presentation: remotes are listed in a dedicated selector column while sync status, URLs, and commit inspection render in a focused detail panel for the selected remote +- Responsive flow: at mobile widths, remotes keep the same selector/detail workflow in a stacked layout so fetch/pull/push and edit actions remain reachable without horizontal crowding - Fetch from origin - Pull latest changes - Push current branch diff --git a/packages/dashboard/app/components/GitManagerModal.tsx b/packages/dashboard/app/components/GitManagerModal.tsx index 8d2a99bae..8784b1a85 100644 --- a/packages/dashboard/app/components/GitManagerModal.tsx +++ b/packages/dashboard/app/components/GitManagerModal.tsx @@ -370,7 +370,7 @@ export function GitManagerModal({ isOpen, onClose, tasks: _tasks, addToast, proj } catch (err) { addToast(getErrorMessage(err) || "Failed to discard changes", "error"); } - }, [addToast, projectId, confirm]); + }, [addToast, projectId, confirmContext]); const handleCommit = useCallback(async (e: React.FormEvent) => { e.preventDefault(); @@ -565,7 +565,7 @@ export function GitManagerModal({ isOpen, onClose, tasks: _tasks, addToast, proj } finally { setLoading(false); } - }, [addToast, projectId, confirm]); + }, [addToast, projectId, confirmContext]); const filteredBranches = useMemo(() => { if (!branchSearch.trim()) return branches; @@ -678,7 +678,7 @@ export function GitManagerModal({ isOpen, onClose, tasks: _tasks, addToast, proj } finally { setStashLoading(null); } - }, [addToast, projectId, confirm]); + }, [addToast, projectId, confirmContext]); // ── Remote Handlers ───────────────────────────────────────────── @@ -2062,7 +2062,7 @@ function RemotesPanel({ value={newRemoteName} onChange={(e) => setNewRemoteName(e.target.value)} disabled={remoteActionLoading === "add"} - className="gm-input" + className="input gm-input" /> setNewRemoteUrl(e.target.value)} disabled={remoteActionLoading === "add"} - className="gm-input gm-input-url" + className="input gm-input gm-input-url" /> - +
+ + +
)} @@ -2256,15 +2266,17 @@ function RemotesPanel({
Push: - {selectedRemoteData.pushUrl} + {selectedRemoteData.pushUrl} - +
+ +
)} @@ -2277,7 +2289,7 @@ function RemotesPanel({ type="text" value={editNameValue} onChange={(e) => setEditNameValue(e.target.value)} - className="gm-input" + className="input gm-input" autoFocus />