import type { Project } from "../../../lib/types"; import type { SaveState } from "../../../hooks/useSaveState"; import SaveIndicator from "../../ui/SaveIndicator"; import WorkspaceSection from "./config/WorkspaceSection"; import ModelSection from "./config/ModelSection"; import AccessSection from "./config/AccessSection"; import RuntimeSection from "./config/RuntimeSection"; interface Props { project: Project; save: (patch: Partial) => Promise; saveState: SaveState; } const STOPPED_ONLY = "Container must be stopped to change this setting."; /** * Everything the seven config modals used to hold, full-width and grouped. * Saves happen on blur; the indicator in the header reports the outcome. */ export default function ConfigTab({ project, save, saveState }: Props) { const isStopped = project.status === "stopped" || project.status === "error"; const disabled = !isStopped; return (
{disabled ? (

Container is {project.status} — stop it to change these settings.

) : (

Changes save when a field loses focus.

)}
); }