import { useState } from "react"; import { Link } from "react-router-dom"; import { EmptyState, ErrorState, LoadingState } from "../components/data-states"; import { useMobileViewport } from "../hooks/use-mobile-viewport"; import { useRepoWorkspace } from "../hooks/use-repo-workspace"; import { WorkspaceHeader } from "../components/features/workspace/workspace-header"; import { WorkspaceLayout } from "../components/features/workspace/WorkspaceLayout"; type MobileTab = "files" | "editor" | "git" | "terminal"; export const RepoWorkspace = () => { const { projectId, project, status, repositories, selectedRepoId, selectedRepo, branches, currentBranch, gitStatus, toolTypes, handleRepoChange, handleBranchChange, loadGitStatus, loadBranches, loadRepositories, } = useRepoWorkspace(); const isMobile = useMobileViewport(); const [mobileTab, setMobileTab] = useState("files"); return (
{project && ( )} {status === "loading" && ( )} {status === "error" && ( void loadRepositories()} /> )} {status === "empty" && (
Manage Repositories
)} {status === "ready" && repositories.length > 0 && ( { void loadBranches(); void loadGitStatus(); window.dispatchEvent(new CustomEvent("refresh-file-tree")); }} /> )}
); };