homepage/src/widgets/traefik/component.jsx

32 lines
961 B
React
Raw Normal View History

2022-09-26 15:25:10 +03:00
import Container from "components/services/widget/container";
import Block from "components/services/widget/block";
2022-09-27 22:59:14 +03:00
import useWidgetAPI from "utils/proxy/use-widget-api";
2022-09-26 00:35:54 +03:00
export default function Component({ service }) {
2022-09-27 22:59:14 +03:00
const { widget } = service;
2022-09-26 00:35:54 +03:00
2022-09-27 22:59:14 +03:00
const { data: traefikData, error: traefikError } = useWidgetAPI(widget, "overview");
2022-09-26 00:35:54 +03:00
2022-11-07 09:24:15 -08:00
if (traefikError) {
return <Container error={traefikError} />;
2022-09-26 00:35:54 +03:00
}
if (!traefikData) {
return (
<Container service={service}>
<Block label="traefik.routers" />
<Block label="traefik.services" />
<Block label="traefik.middleware" />
2022-09-26 15:25:10 +03:00
</Container>
2022-09-26 00:35:54 +03:00
);
}
return (
<Container service={service}>
<Block label="traefik.routers" value={traefikData.http.routers.total} />
<Block label="traefik.services" value={traefikData.http.services.total} />
<Block label="traefik.middleware" value={traefikData.http.middlewares.total} />
2022-09-26 15:25:10 +03:00
</Container>
2022-09-26 00:35:54 +03:00
);
}