diff --git a/foundry/packages/client/src/workbench-model.ts b/foundry/packages/client/src/workbench-model.ts index a53a530..3499260 100644 --- a/foundry/packages/client/src/workbench-model.ts +++ b/foundry/packages/client/src/workbench-model.ts @@ -300,6 +300,7 @@ export function buildInitialTasks(): Task[] { fileChanges: [], diffs: {}, fileTree: [], + minutesUsed: 0, }, { id: "h1", diff --git a/foundry/packages/frontend/src/components/mock-layout.tsx b/foundry/packages/frontend/src/components/mock-layout.tsx index 4052386..7d16fd9 100644 --- a/foundry/packages/frontend/src/components/mock-layout.tsx +++ b/foundry/packages/frontend/src/components/mock-layout.tsx @@ -1053,7 +1053,7 @@ export function MockLayout({ workspaceId, selectedTaskId, selectedSessionId }: M const activeOrg = activeMockOrganization(appSnapshot); const navigateToUsage = useCallback(() => { if (activeOrg) { - void navigate({ to: "/organizations/$organizationId/billing" as never, params: { organizationId: activeOrg.id } }); + void navigate({ to: "/organizations/$organizationId/billing", params: { organizationId: activeOrg.id } }); } }, [activeOrg, navigate]); const [projectOrder, setProjectOrder] = useState(null); @@ -1457,7 +1457,9 @@ export function MockLayout({ workspaceId, selectedTaskId, selectedSessionId }: M const onDragMouseDown = useCallback((event: ReactPointerEvent) => { if (event.button !== 0) return; // Tauri v2 IPC: invoke start_dragging on the webview window - const ipc = (window as Record).__TAURI_INTERNALS__ as { invoke: (cmd: string, args?: unknown) => Promise } | undefined; + const ipc = ((window as unknown as Record).__TAURI_INTERNALS__ ?? undefined) as + | { invoke: (cmd: string, args?: unknown) => Promise } + | undefined; if (ipc?.invoke) { ipc.invoke("plugin:window|start_dragging").catch(() => {}); } diff --git a/foundry/packages/frontend/src/components/mock-layout/terminal-pane.tsx b/foundry/packages/frontend/src/components/mock-layout/terminal-pane.tsx index d0e011d..db8265e 100644 --- a/foundry/packages/frontend/src/components/mock-layout/terminal-pane.tsx +++ b/foundry/packages/frontend/src/components/mock-layout/terminal-pane.tsx @@ -14,7 +14,7 @@ interface TerminalPaneProps { isExpanded?: boolean; onExpand?: () => void; onCollapse?: () => void; - onStartResize?: (e: React.PointerEvent) => void; + onStartResize?: React.PointerEventHandler; } interface ProcessTab { @@ -135,6 +135,7 @@ export function TerminalPane({ workspaceId, taskId, isExpanded, onExpand, onColl setProcessTabs((prev) => { const next = [...prev]; const [moved] = next.splice(d.fromIdx, 1); + if (!moved) return prev; next.splice(d.overIdx!, 0, moved); return next; }); diff --git a/foundry/packages/frontend/src/components/mock-onboarding.tsx b/foundry/packages/frontend/src/components/mock-onboarding.tsx index 8faa9dc..a1e456e 100644 --- a/foundry/packages/frontend/src/components/mock-onboarding.tsx +++ b/foundry/packages/frontend/src/components/mock-onboarding.tsx @@ -56,7 +56,9 @@ function DesktopDragRegion() { const isDesktop = !!import.meta.env.VITE_DESKTOP; const onDragMouseDown = useCallback((event: React.PointerEvent) => { if (event.button !== 0) return; - const ipc = (window as Record).__TAURI_INTERNALS__ as { invoke: (cmd: string, args?: unknown) => Promise } | undefined; + const ipc = ((window as unknown as Record).__TAURI_INTERNALS__ ?? undefined) as + | { invoke: (cmd: string, args?: unknown) => Promise } + | undefined; if (ipc?.invoke) { ipc.invoke("plugin:window|start_dragging").catch(() => {}); }