feat(FN-1814): merge fusion/fn-1814

This commit is contained in:
gsxdsm
2026-04-14 23:15:56 -07:00
parent 0447ec6b18
commit 6d685a542b
3 changed files with 27 additions and 0 deletions

View File

@@ -518,6 +518,7 @@ function AppInner() {
onResumePlanning={modalManager.resumePlanning}
activePlanningSessionCount={bgPlanningSessions.length}
onOpenUsage={modalManager.openUsage}
onOpenNodes={handleOpenNodes}
onViewAllProjects={handleViewAllProjects}
onRunScript={modalManager.runScript}
onOpenQuickChat={() => setQuickChatOpen(true)}

View File

@@ -16,6 +16,7 @@ import {
MessageSquare,
MoreHorizontal,
Play,
Server,
Settings,
Target,
Terminal,
@@ -51,6 +52,7 @@ export interface MobileNavBarProps {
onOpenUsage?: () => void;
onRunScript?: (name: string, command: string) => void;
onOpenQuickChat?: () => void;
onOpenNodes?: () => void;
projectId?: string;
onViewAllProjects?: () => void;
}
@@ -95,6 +97,7 @@ export function MobileNavBar({
onOpenUsage,
onRunScript,
onOpenQuickChat,
onOpenNodes,
projectId,
onViewAllProjects,
}: MobileNavBarProps) {
@@ -283,6 +286,16 @@ export function MobileNavBar({
<span>Git Manager</span>
</button>
<button
type="button"
className="mobile-more-item"
data-testid="mobile-more-item-nodes"
onClick={() => handleMoreAction(onOpenNodes)}
>
<Server />
<span>Nodes</span>
</button>
<div className="mobile-more-split-row">
<button
type="button"

View File

@@ -48,6 +48,7 @@ const createDefaultProps = () => ({
onViewAllProjects: vi.fn(),
onRunScript: vi.fn(),
onOpenQuickChat: vi.fn(),
onOpenNodes: vi.fn(),
projectId: "proj_1",
});
@@ -142,6 +143,7 @@ describe("MobileNavBar", () => {
expect(screen.getByTestId("mobile-more-item-mailbox")).toBeDefined();
expect(screen.getByTestId("mobile-more-item-activity")).toBeDefined();
expect(screen.getByTestId("mobile-more-item-git")).toBeDefined();
expect(screen.getByTestId("mobile-more-item-nodes")).toBeDefined();
expect(screen.getByTestId("mobile-more-item-terminal")).toBeDefined();
expect(screen.getByTestId("mobile-more-item-files")).toBeDefined();
expect(screen.getByTestId("mobile-more-item-planning")).toBeDefined();
@@ -198,6 +200,17 @@ describe("MobileNavBar", () => {
expect(props.onOpenQuickChat).toHaveBeenCalledOnce();
});
it("calls onOpenNodes from the Nodes more-sheet item", () => {
const props = createDefaultProps();
const { container } = render(<MobileNavBar {...props} />);
fireEvent.click(screen.getByTestId("mobile-nav-tab-more"));
fireEvent.click(screen.getByTestId("mobile-more-item-nodes"));
expect(container.querySelector(".mobile-more-sheet")).toBeNull();
expect(props.onOpenNodes).toHaveBeenCalledOnce();
});
it("closes sheet on backdrop click", () => {
const { container } = render(<MobileNavBar {...createDefaultProps()} />);