From 4268966b44066dfa2d325fdd8870c389e6c683af Mon Sep 17 00:00:00 2001 From: Alex Holliday Date: Wed, 22 Jan 2025 11:10:09 -0800 Subject: [PATCH] Add hour filter to incidents page --- .../Pages/Incidents/IncidentTable/index.jsx | 10 +- Client/src/Pages/Incidents/index.jsx | 160 +++++++++++++----- 2 files changed, 121 insertions(+), 49 deletions(-) diff --git a/Client/src/Pages/Incidents/IncidentTable/index.jsx b/Client/src/Pages/Incidents/IncidentTable/index.jsx index ab7af33ca..e3ddba24a 100644 --- a/Client/src/Pages/Incidents/IncidentTable/index.jsx +++ b/Client/src/Pages/Incidents/IncidentTable/index.jsx @@ -15,7 +15,8 @@ import { Empty } from "./Empty/Empty"; import { IncidentSkeleton } from "./Skeleton/Skeleton"; import DataTable from "../../../Components/Table"; import Pagination from "../../../Components/Table/TablePagination"; -const IncidentTable = ({ monitors, selectedMonitor, filter }) => { + +const IncidentTable = ({ monitors, selectedMonitor, filter, dateRange }) => { const uiTimezone = useSelector((state) => state.ui.timezone); const theme = useTheme(); @@ -25,7 +26,6 @@ const IncidentTable = ({ monitors, selectedMonitor, filter }) => { const [checksCount, setChecksCount] = useState(0); const [page, setPage] = useState(0); const [rowsPerPage, setRowsPerPage] = useState(10); - const [isLoading, setIsLoading] = useState(false); useEffect(() => { @@ -42,7 +42,7 @@ const IncidentTable = ({ monitors, selectedMonitor, filter }) => { teamId: user.teamId, sortOrder: "desc", limit: null, - dateRange: null, + dateRange, filter: filter, page: page, rowsPerPage: rowsPerPage, @@ -53,7 +53,7 @@ const IncidentTable = ({ monitors, selectedMonitor, filter }) => { monitorId: selectedMonitor, sortOrder: "desc", limit: null, - dateRange: null, + dateRange, filter: filter, page, rowsPerPage, @@ -69,7 +69,7 @@ const IncidentTable = ({ monitors, selectedMonitor, filter }) => { } }; fetchPage(); - }, [authToken, user, monitors, selectedMonitor, filter, page, rowsPerPage]); + }, [authToken, user, monitors, selectedMonitor, filter, page, rowsPerPage, dateRange]); const handlePageChange = (_, newPage) => { setPage(newPage); diff --git a/Client/src/Pages/Incidents/index.jsx b/Client/src/Pages/Incidents/index.jsx index 6e3f513f7..0256b89b3 100644 --- a/Client/src/Pages/Incidents/index.jsx +++ b/Client/src/Pages/Incidents/index.jsx @@ -20,6 +20,7 @@ const Incidents = () => { // TODO do something with these filters const [filter, setFilter] = useState("all"); + const [dateRange, setDateRange] = useState("hour"); useEffect(() => { const fetchMonitors = async () => { @@ -67,6 +68,7 @@ const Incidents = () => { return ( @@ -76,62 +78,132 @@ const Incidents = () => { <> - - Incidents for - - + + - - + + + + + + - Down - - - + + + + + + )}