diff --git a/src/Pages/Incidents/Components/IncidentTable/index.jsx b/src/Pages/Incidents/Components/IncidentTable/index.jsx index ba7a03e05..16adcee16 100644 --- a/src/Pages/Incidents/Components/IncidentTable/index.jsx +++ b/src/Pages/Incidents/Components/IncidentTable/index.jsx @@ -27,8 +27,11 @@ const IncidentTable = ({ //Local state const [page, setPage] = useState(0); const [rowsPerPage, setRowsPerPage] = useState(10); + const selectedMonitorDetails = monitors?.[selectedMonitor]; + const selectedMonitorType = selectedMonitorDetails?.type; const { isLoading, networkError, checks, checksCount } = useChecksFetch({ selectedMonitor, + selectedMonitorType, filter, dateRange, page, diff --git a/src/Pages/Incidents/Hooks/useChecksFetch.jsx b/src/Pages/Incidents/Hooks/useChecksFetch.jsx index 8460a3036..bb1f201b0 100644 --- a/src/Pages/Incidents/Hooks/useChecksFetch.jsx +++ b/src/Pages/Incidents/Hooks/useChecksFetch.jsx @@ -2,7 +2,7 @@ import { useState, useEffect } from "react"; import { networkService } from "../../../main"; import { createToast } from "../../../Utils/toastUtils"; import { useSelector } from "react-redux"; -const useChecksFetch = ({ selectedMonitor, filter, dateRange, page, rowsPerPage }) => { +const useChecksFetch = ({ selectedMonitor, selectedMonitorType, filter, dateRange, page, rowsPerPage }) => { //Redux const { user } = useSelector((state) => state.auth); @@ -33,6 +33,7 @@ const useChecksFetch = ({ selectedMonitor, filter, dateRange, page, rowsPerPage res = await networkService.getChecksByMonitor({ status: false, monitorId: selectedMonitor, + type: selectedMonitorType, sortOrder: "desc", limit: null, dateRange, @@ -51,7 +52,7 @@ const useChecksFetch = ({ selectedMonitor, filter, dateRange, page, rowsPerPage } }; fetchChecks(); - }, [user, dateRange, page, rowsPerPage, filter, selectedMonitor]); + }, [user, dateRange, page, rowsPerPage, filter, selectedMonitor, selectedMonitorType]); return { isLoading, networkError, checks, checksCount }; }; diff --git a/src/Pages/Incidents/Hooks/useMonitorsFetch.jsx b/src/Pages/Incidents/Hooks/useMonitorsFetch.jsx index 3d80a89c7..fcf729cee 100644 --- a/src/Pages/Incidents/Hooks/useMonitorsFetch.jsx +++ b/src/Pages/Incidents/Hooks/useMonitorsFetch.jsx @@ -25,9 +25,13 @@ const useMonitorsFetch = ({ teamId }) => { field: null, order: null, }); - if (res?.data?.data?.monitors?.length > 0) { - const monitorLookup = res.data.data.monitors.reduce((acc, monitor) => { - acc[monitor._id] = monitor; + if (res?.data?.data?.filteredMonitors?.length > 0) { + const monitorLookup = res.data.data.filteredMonitors.reduce((acc, monitor) => { + acc[monitor._id] = { + _id: monitor._id, + name: monitor.name, + type: monitor.type + }; return acc; }, {}); setMonitors(monitorLookup); diff --git a/src/Utils/NetworkService.js b/src/Utils/NetworkService.js index c15a816e0..6b9aebd60 100644 --- a/src/Utils/NetworkService.js +++ b/src/Utils/NetworkService.js @@ -567,6 +567,7 @@ class NetworkService { async getChecksByMonitor(config) { const params = new URLSearchParams(); + if (config.type) params.append("type", config.type); if (config.sortOrder) params.append("sortOrder", config.sortOrder); if (config.limit) params.append("limit", config.limit); if (config.dateRange) params.append("dateRange", config.dateRange);