Refactored to deal with empty data set

This commit is contained in:
Alex Holliday committed 2024-06-24 10:59:18 -07:00
1 parent 68cb5b4597
commit d883898384
3 files changed
+30 -15

No files matched your search

+23 -11
View File
@@ -9,6 +9,25 @@ import HostStatus from "../HostStatus";
* @param {Array<Monitor>} monitors - An array of monitor objects to be displayed.
*/
const getLastCheckStatus = (monitor) => {
if (monitor.checks.length === 0) {
// Default values for when there are no checks
return {
color: "var(--env-var-color-21)",
statusText: "No Data",
dotColor: "var(--env-var-color-19)",
};
}
const lastCheck = monitor.checks[monitor.checks.length - 1];
const isUp = lastCheck.status === true;
return {
color: isUp ? "var(--env-var-color-20)" : "var(--env-var-color-21)",
statusText: isUp ? "Up" : "Down",
dotColor: isUp ? "var(--env-var-color-17)" : "var(--env-var-color-19)",
};
};
const HostsTable = ({ monitors }) => {
return (
<div className="current-monitors-table-holder">
@@ -30,17 +49,10 @@ const HostsTable = ({ monitors }) => {
monitor.url
);
const status = HostStatus(
monitor.checks[monitor.checks.length - 1].status === true
? "var(--env-var-color-20)"
: "var(--env-var-color-21)",
monitor.checks[monitor.checks.length - 1].status === true
? "Up"
: "Down",
monitor.checks[monitor.checks.length - 1].status === true
? "var(--env-var-color-17)"
: "var(--env-var-color-19)"
);
const { color, currentStatus, dotColor } =
getLastCheckStatus(monitor);
const status = HostStatus(color, currentStatus, dotColor);
return (
<tr className="tbody-row" key={monitor._id}>