feat(FN-1814): merge fusion/fn-1814
This commit is contained in:
@@ -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)}
|
||||
|
||||
@@ -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"
|
||||
|
||||
@@ -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()} />);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user