From e5b347e14b18f7a0baad93347da6e9d52b8fdc99 Mon Sep 17 00:00:00 2001 From: Daniel Cojocea Date: Mon, 2 Sep 2024 18:46:51 -0400 Subject: [PATCH] Revamped chart cards 1/2 --- Client/src/Pages/Monitors/Details/index.css | 7 - Client/src/Pages/Monitors/Details/index.jsx | 122 +++++++++++++++--- Client/src/Pages/Monitors/Details/styled.jsx | 61 +++++++++ .../assets/icons/average-response-icon.svg | 3 + .../src/assets/icons/response-time-icon.svg | 3 + Client/src/assets/icons/uptime-icon.svg | 3 + 6 files changed, 171 insertions(+), 28 deletions(-) create mode 100644 Client/src/Pages/Monitors/Details/styled.jsx create mode 100644 Client/src/assets/icons/average-response-icon.svg create mode 100644 Client/src/assets/icons/response-time-icon.svg create mode 100644 Client/src/assets/icons/uptime-icon.svg diff --git a/Client/src/Pages/Monitors/Details/index.css b/Client/src/Pages/Monitors/Details/index.css index 108f09b21..528ec1b92 100644 --- a/Client/src/Pages/Monitors/Details/index.css +++ b/Client/src/Pages/Monitors/Details/index.css @@ -1,10 +1,3 @@ -.monitor-details h2.MuiTypography-root { - font-size: var(--env-var-font-size-large); -} -.monitor-details button.MuiButtonBase-root { - height: var(--env-var-height-2); - line-height: 1; -} .monitor-details p.MuiTypography-root, .monitor-details p.MuiTypography-root span.MuiTypography-root { font-size: var(--env-var-font-size-small-plus); diff --git a/Client/src/Pages/Monitors/Details/index.jsx b/Client/src/Pages/Monitors/Details/index.jsx index 922231036..20979d863 100644 --- a/Client/src/Pages/Monitors/Details/index.jsx +++ b/Client/src/Pages/Monitors/Details/index.jsx @@ -23,10 +23,15 @@ import MonitorDetailsAreaChart from "../../../Components/Charts/MonitorDetailsAr import ButtonGroup from "@mui/material/ButtonGroup"; import SettingsIcon from "../../../assets/icons/settings-bold.svg?react"; import CertificateIcon from "../../../assets/icons/certificate.svg?react"; +import UptimeIcon from "../../../assets/icons/uptime-icon.svg?react"; +import ResponseTimeIcon from "../../../assets/icons/response-time-icon.svg?react"; +import AverageResponseIcon from "../../../assets/icons/average-response-icon.svg?react"; +import IncidentsIcon from "../../../assets/icons/incidents.svg?react"; import PaginationTable from "./PaginationTable"; import Breadcrumbs from "../../../Components/Breadcrumbs"; import PulseDot from "../../../Components/Animated/PulseDot"; import "./index.css"; +import { ChartBox, IconBox } from "./styled"; const StatBox = ({ title, value }) => { const theme = useTheme(); @@ -228,7 +233,7 @@ const DetailsPage = ({ isAdmin }) => { { name: "details", path: `/monitors/${monitorId}` }, ]} /> - + { alignSelf: "flex-end", }} > - - + { )} + + + + + + + + + Showing statistics for past{" "} + {dateRange === "day" + ? "24 hours" + : dateRange === "week" + ? "7 days" + : "30 days"} + . + + + + + + + + + Uptime + + + + Total Checks + 87 + + + Uptime Percentage + + 98.3% + + + + + + + + + + Incidents + + + Total Incidents + 0 + + + + + + + + + Average response time + + + + + + + + + Response Times + + + + ({ + flex: "1 30%", + height: 300, + minWidth: 250, + padding: theme.spacing(8), + border: 1, + borderStyle: "solid", + borderColor: theme.palette.border.light, + borderRadius: 4, + backgroundColor: theme.palette.background.main, + "& h2": { + color: theme.palette.text.secondary, + fontSize: 15, + }, + "& p": { + color: theme.palette.text.tertiary, + fontSize: 13, + }, + "& span": { + color: theme.palette.text.primary, + fontSize: 20, + "& span": { + opacity: 0.8, + marginLeft: 2, + fontSize: 15, + }, + }, + "& .MuiStack-root": { + flexDirection: "row", + alignItems: "center", + gap: theme.spacing(6), + }, + "& > .MuiBox-root:not(:first-of-type)": { + marginTop: theme.spacing(8), + }, +})); + +export const IconBox = styled(Box)(({ theme }) => ({ + height: 34, + minWidth: 34, + width: 34, + position: "relative", + border: 1, + borderStyle: "solid", + borderColor: theme.palette.border.dark, + borderRadius: 4, + backgroundColor: theme.palette.background.accent, + "& svg": { + position: "absolute", + top: "50%", + left: "50%", + transform: "translate(-50%, -50%)", + width: 20, + height: 20, + "& path": { + stroke: theme.palette.text.tertiary, + }, + }, +})); diff --git a/Client/src/assets/icons/average-response-icon.svg b/Client/src/assets/icons/average-response-icon.svg new file mode 100644 index 000000000..572e2002f --- /dev/null +++ b/Client/src/assets/icons/average-response-icon.svg @@ -0,0 +1,3 @@ + + + diff --git a/Client/src/assets/icons/response-time-icon.svg b/Client/src/assets/icons/response-time-icon.svg new file mode 100644 index 000000000..db5b2af38 --- /dev/null +++ b/Client/src/assets/icons/response-time-icon.svg @@ -0,0 +1,3 @@ + + + diff --git a/Client/src/assets/icons/uptime-icon.svg b/Client/src/assets/icons/uptime-icon.svg new file mode 100644 index 000000000..55706ae71 --- /dev/null +++ b/Client/src/assets/icons/uptime-icon.svg @@ -0,0 +1,3 @@ + + +