import Box from "@mui/material/Box"; import { StatBox, Gauge, Tooltip } from "@/Components/design-elements"; import Stack from "@mui/material/Stack"; import Typography from "@mui/material/Typography"; import { useTranslation } from "react-i18next"; import prettyBytes from "pretty-bytes"; import { useTheme } from "@mui/material"; import type { Diagnostics } from "@/Types/Diagnostics"; import { LAYOUT } from "@/Utils/Theme/constants"; interface MongoStatsProps { diagnostics: Diagnostics | null; } export const MongoCollectionStats = ({ diagnostics }: MongoStatsProps) => { const theme = useTheme(); const { t } = useTranslation(); const mongoStats = diagnostics?.mongoStats; if (!mongoStats) { return null; } return ( *": { width: "100% !important" }, }} > {mongoStats.collections.map((colStat) => ( {/* {`Documents: ${colStat.documentCount}`} */} {t("pages.logs.diagnostics.mongoDBCollectionStats.documents", { count: colStat.documentCount, })} {colStat.bucketCount !== undefined && ( {t("pages.logs.diagnostics.mongoDBCollectionStats.bucketCount", { count: colStat.bucketCount, })} )} {t("pages.logs.diagnostics.mongoDBCollectionStats.storageSize", { size: prettyBytes(colStat.storageSize), })} {t("pages.logs.diagnostics.mongoDBCollectionStats.indexSize", { size: prettyBytes(colStat.totalIndexSize), })} {t("pages.logs.diagnostics.mongoDBCollectionStats.totalSize", { size: prettyBytes(colStat.totalSize), })} ))} ); };