From b481fd459dbd49f56e1fb66f42f2ddb4602d907a Mon Sep 17 00:00:00 2001 From: Daniel Cojocea Date: Thu, 1 Aug 2024 18:48:39 -0400 Subject: [PATCH] Added placeholder if no incidents are found --- Client/src/Pages/Incidents/index.css | 10 +- Client/src/Pages/Incidents/index.jsx | 131 ++++++++++++++++++--------- 2 files changed, 94 insertions(+), 47 deletions(-) diff --git a/Client/src/Pages/Incidents/index.css b/Client/src/Pages/Incidents/index.css index 9d2ba8ee0..1b1d2f364 100644 --- a/Client/src/Pages/Incidents/index.css +++ b/Client/src/Pages/Incidents/index.css @@ -1,12 +1,16 @@ -.incidents h1.MuiTypography-root { +.incidents h1.MuiTypography-root, +.incidents p.MuiTypography-root { color: var(--env-var-color-5); } .incidents h1.MuiTypography-root { font-size: var(--env-var-font-size-large); font-weight: 600; } -.incidents button.MuiButtonBase-root { +.incidents button.MuiButtonBase-root, +.incidents p.MuiTypography-root { font-size: var(--env-var-font-size-medium); +} +.incidents button.MuiButtonBase-root { height: 34px; border-color: var(--env-var-color-16); } @@ -14,4 +18,4 @@ /* remove later */ .incidents .MuiSelect-select { padding: 0 10px; -} \ No newline at end of file +} diff --git a/Client/src/Pages/Incidents/index.jsx b/Client/src/Pages/Incidents/index.jsx index 72ecef9dd..e245e0b6c 100644 --- a/Client/src/Pages/Incidents/index.jsx +++ b/Client/src/Pages/Incidents/index.jsx @@ -1,18 +1,20 @@ import { useState, useEffect } from "react"; import { useSelector } from "react-redux"; -import { Typography, ButtonGroup, Stack } from "@mui/material"; - +import { Typography, ButtonGroup, Stack, Box } from "@mui/material"; +import WestRoundedIcon from "@mui/icons-material/WestRounded"; import Button from "../../Components/Button"; import axiosInstance from "../../Utils/axiosConfig"; import BasicTable from "../../Components/BasicTable"; import { StatusLabel } from "../../Components/Label"; import { useTheme } from "@emotion/react"; +import { useNavigate } from "react-router"; +import Select from "../../Components/Inputs/Select"; import "./index.css"; -import Select from "../../Components/Inputs/Select"; const Incidents = () => { const theme = useTheme(); + const navigate = useNavigate(); const authState = useSelector((state) => state.auth); const [monitors, setMonitors] = useState({}); const [selectedMonitor, setSelectedMonitor] = useState("0"); @@ -58,13 +60,19 @@ const Incidents = () => { setSelectedMonitor(event.target.value); }; let incidents = []; + let hasAnyIncidents = false; + let hasSpecificIncidents = false; if (selectedMonitor === "0") { Object.values(monitors).forEach((monitor) => { incidents = incidents.concat(monitor.checks); }); + if (incidents.length !== 0) hasAnyIncidents = true; + hasSpecificIncidents = hasAnyIncidents; } else { const monitor = monitors[selectedMonitor]; incidents = monitor.checks; + if (incidents.length !== 0) hasSpecificIncidents = true; + hasAnyIncidents = true; } incidents = incidents .sort((a, b) => { @@ -92,48 +100,83 @@ const Incidents = () => { data.rows = incidents; return ( - - - Incident history for: - + {hasAnyIncidents && hasSpecificIncidents && ( + +