import Block from "components/services/widget/block"; import Container from "components/services/widget/container"; import { useTranslation } from "next-i18next/pages"; import useWidgetAPI from "utils/proxy/use-widget-api"; import withWidgetFields from "utils/widget-fields"; const DEFAULT_FIELDS = ["running", "stopped", "total", "image_updates"]; export default function Component({ service: configuredService }) { const { t } = useTranslation(); const service = withWidgetFields(configuredService, DEFAULT_FIELDS); const { widget } = service; const envNotSet = widget.env == null || widget.env === ""; const { data: containers, error: containersError } = useWidgetAPI(widget, envNotSet ? "" : "containers"); const { data: images, error: imagesError } = useWidgetAPI(widget, envNotSet ? "" : "images"); const { data: updates, error: updatesError } = useWidgetAPI(widget, envNotSet ? "" : "updates"); if (envNotSet) { return ; } const error = containersError ?? imagesError ?? updatesError ?? containers?.detail ?? images?.detail ?? updates?.detail; if (error) { return ; } if (!containers || !images || !updates) { return ( ); } const runningContainers = containers?.runningContainers ?? 0; const totalContainers = containers?.totalContainers ?? 0; const stoppedContainers = containers?.stoppedContainers ?? 0; const totalImages = images?.totalImages ?? 0; const imagesInuse = images?.imagesInuse ?? 0; const imagesUnused = images?.imagesUnused ?? 0; const imagesWithUpdates = updates?.imagesWithUpdates ?? 0; return ( ); }