diff --git a/Client/src/Pages/Uptime/Monitors/Components/UptimeDataTable/index.jsx b/Client/src/Pages/Uptime/Monitors/Components/UptimeDataTable/index.jsx
index 1940c5543..8a9fdcbe9 100644
--- a/Client/src/Pages/Uptime/Monitors/Components/UptimeDataTable/index.jsx
+++ b/Client/src/Pages/Uptime/Monitors/Components/UptimeDataTable/index.jsx
@@ -7,12 +7,9 @@ import Host from "../Host";
import { StatusLabel } from "../../../../../Components/Label";
import BarChart from "../../../../../Components/Charts/BarChart";
import ActionsMenu from "../ActionsMenu";
-import { useState } from "react";
-import SearchComponent from "../SearchComponent";
-import CircularCount from "../../../../../Components/CircularCount";
+
import LoadingSpinner from "../LoadingSpinner";
import UptimeDataTableSkeleton from "./skeleton";
-import { Heading } from "../../../../../Components/Heading";
// Utils
import { useTheme } from "@emotion/react";
@@ -20,35 +17,6 @@ import useUtils from "../../Hooks/useUtils";
import { useNavigate } from "react-router-dom";
import PropTypes from "prop-types";
-const MonitorDataTable = ({ shouldRender, isSearching, headers, filteredMonitors }) => {
- const theme = useTheme();
- const navigate = useNavigate();
-
- if (!shouldRender) return null;
- return (
-
-
- {
- navigate(`/uptime/${row.id}`);
- },
- emptyView: "No monitors found",
- }}
- />
-
- );
-};
-
/**
* UptimeDataTable displays a table of uptime monitors with sorting, searching, and action capabilities
* @param {Object} props - Component props
@@ -78,34 +46,29 @@ const MonitorDataTable = ({ shouldRender, isSearching, headers, filteredMonitors
* @param {Function} props.triggerUpdate - Callback to trigger a data refresh
* @returns {JSX.Element} Rendered component
*/
-const UptimeDataTable = (props) => {
+const UptimeDataTable = ({
+ isAdmin,
+ isSearching,
+ setIsLoading,
+ filteredMonitors,
+ sort,
+ setSort,
+ triggerUpdate,
+ monitorsAreLoading,
+}) => {
// Utils
-
- const {
- isAdmin,
- setIsLoading,
- monitors,
- filteredMonitors,
- monitorCount,
- sort,
- setSort,
- setSearch,
- triggerUpdate,
- monitorsAreLoading,
- } = props;
+ const navigate = useNavigate();
const { determineState } = useUtils();
const theme = useTheme();
- const navigate = useNavigate();
// Local state
- const [isSearching, setIsSearching] = useState(false);
// Handlers
const handleSort = (field) => {
let order = "";
- if (sort.field !== field) {
+ if (sort?.field !== field) {
order = "desc";
} else {
- order = sort.order === "asc" ? "desc" : "asc";
+ order = sort?.order === "asc" ? "desc" : "asc";
}
setSort({ field, order });
};
@@ -124,10 +87,10 @@ const UptimeDataTable = (props) => {
- {sort.order === "asc" ? (
+ {sort?.order === "asc" ? (
) : (
@@ -160,10 +123,10 @@ const UptimeDataTable = (props) => {
- {sort.order === "asc" ? (
+ {sort?.order === "asc" ? (
) : (
@@ -210,41 +173,37 @@ const UptimeDataTable = (props) => {
),
},
];
- return (
-
-
- Uptime monitors
-
-
-
- ;
+ }
+
+ return (
+
+
+ {
+ navigate(`/uptime/${row.id}`);
+ },
+ emptyView: "No monitors found",
+ }}
/>
-
);
};
UptimeDataTable.propTypes = {
isSearching: PropTypes.bool,
- setIsSearching: PropTypes.func,
setSort: PropTypes.func,
setSearch: PropTypes.func,
setIsLoading: PropTypes.func,
diff --git a/Client/src/Pages/Uptime/Monitors/Components/UptimeDataTable/skeleton.jsx b/Client/src/Pages/Uptime/Monitors/Components/UptimeDataTable/skeleton.jsx
index 303eb48c8..e3c4fa2e2 100644
--- a/Client/src/Pages/Uptime/Monitors/Components/UptimeDataTable/skeleton.jsx
+++ b/Client/src/Pages/Uptime/Monitors/Components/UptimeDataTable/skeleton.jsx
@@ -1,9 +1,6 @@
import { Skeleton } from "@mui/material";
-import PropTypes from "prop-types";
-
-const UptimeDataTableSkeleton = ({ shouldRender }) => {
- if (!shouldRender) return null;
+const UptimeDataTableSkeleton = () => {
return (
{
);
};
-UptimeDataTableSkeleton.propTypes = {
- shouldRender: PropTypes.bool.isRequired,
-};
-
export default UptimeDataTableSkeleton;