mirror of
https://github.com/Termix-SSH/Termix.git
synced 2026-10-28 06:05:24 +00:00
Moves docker backend and frontend into plugins/docker/, alongside ssh-terminal. Adds a host editor tab seam, a dashboard card registry, and a build step to compile plugin backends into dist.
54 lines
1.4 KiB
TypeScript
54 lines
1.4 KiB
TypeScript
import React from "react";
|
|
import { useTranslation } from "react-i18next";
|
|
import { DockerManager } from "./DockerManager.tsx";
|
|
import { FullScreenAppWrapper } from "@/features/FullScreenAppWrapper.tsx";
|
|
import { ConnectionScreen } from "@/components/connection/ConnectionScreen.tsx";
|
|
|
|
interface DockerAppProps {
|
|
hostId?: string;
|
|
}
|
|
|
|
const DockerApp: React.FC<DockerAppProps> = ({ hostId }) => {
|
|
const { t } = useTranslation();
|
|
return (
|
|
<FullScreenAppWrapper hostId={hostId}>
|
|
{(hostConfig, phase) => {
|
|
if (phase === "loading") {
|
|
return (
|
|
<div className="relative h-full w-full">
|
|
<ConnectionScreen
|
|
status="connecting"
|
|
message={t("hosts.loadingHost")}
|
|
/>
|
|
</div>
|
|
);
|
|
}
|
|
|
|
if (!hostConfig) {
|
|
return (
|
|
<div className="relative h-full w-full">
|
|
<ConnectionScreen
|
|
status="disconnected"
|
|
message={t("hosts.hostNotFound")}
|
|
/>
|
|
</div>
|
|
);
|
|
}
|
|
|
|
return (
|
|
<DockerManager
|
|
hostConfig={hostConfig}
|
|
title={hostConfig.name || `${hostConfig.username}@${hostConfig.ip}`}
|
|
isVisible={true}
|
|
isTopbarOpen={false}
|
|
embedded={true}
|
|
onClose={() => {}}
|
|
/>
|
|
);
|
|
}}
|
|
</FullScreenAppWrapper>
|
|
);
|
|
};
|
|
|
|
export default DockerApp;
|