Client: Added version text

Resolves #32
This commit is contained in:
Donkie
2023-07-10 12:11:03 +02:00
parent 6173cf1d27
commit f8dfa8f7f7
4 changed files with 46 additions and 0 deletions

View File

@@ -39,6 +39,8 @@ import {
UserOutlined,
} from "@ant-design/icons";
import { ConfigProvider } from "antd";
import { Footer } from "antd/es/layout/layout";
import { Version } from "./components/version";
function App() {
const { t, i18n } = useTranslation();
@@ -137,6 +139,11 @@ function App() {
)}
/>
)}
Footer={() => (
<Footer style={{ textAlign: "center" }}>
Spoolman - Version <Version />
</Footer>
)}
>
<Outlet />
</ThemedLayoutV2>

View File

@@ -0,0 +1,37 @@
import { useQuery } from "@tanstack/react-query";
import { Spin } from "antd";
interface IInfo {
version: string;
debug_mode: boolean;
automatic_backups: boolean;
data_dir: string;
backups_dir: string;
db_type: string;
}
export const Version: React.FC = () => {
const apiEndpoint = import.meta.env.VITE_APIURL;
const infoResult = useQuery<IInfo>({
queryKey: ["info"],
queryFn: async () => {
const response = await fetch(apiEndpoint + "/info");
if (!response.ok) {
throw new Error("Network response was not ok");
}
return response.json();
},
});
if (infoResult.isLoading) {
return <Spin />;
}
if (infoResult.isError) {
return <span>Unknown</span>;
}
const info = infoResult.data;
return <span>{info.version}</span>;
};