From 29dd806e94252f2e79ce6a85a941216b27e1ba4c Mon Sep 17 00:00:00 2001 From: Christian de Jonge Date: Wed, 1 Nov 2023 09:44:44 +0100 Subject: [PATCH] Fix warnings --- .../Contexts/MissionListsContext.tsx | 2 +- .../MissionOverview/StopMissionDialog.tsx | 2 +- .../InspectionPage/InspectionSection.tsx | 2 +- .../Pages/RobotPage/AreaMapView.tsx | 6 +++--- .../components/Pages/RobotPage/RobotPage.tsx | 21 ++++++++++--------- 5 files changed, 17 insertions(+), 16 deletions(-) diff --git a/frontend/src/components/Contexts/MissionListsContext.tsx b/frontend/src/components/Contexts/MissionListsContext.tsx index e6c761f7f..13c8f70ca 100644 --- a/frontend/src/components/Contexts/MissionListsContext.tsx +++ b/frontend/src/components/Contexts/MissionListsContext.tsx @@ -56,7 +56,7 @@ export const useMissions = (refreshInterval: number): MissionsResult => { const id = setInterval(fetchAndUpdateMissions, refreshInterval) return () => clearInterval(id) - }, [refreshInterval, BackendAPICaller.accessToken]) + }, [refreshInterval]) return { ongoingMissions, missionQueue } } diff --git a/frontend/src/components/Pages/FrontPage/MissionOverview/StopMissionDialog.tsx b/frontend/src/components/Pages/FrontPage/MissionOverview/StopMissionDialog.tsx index 8fc332747..dcb9f186d 100644 --- a/frontend/src/components/Pages/FrontPage/MissionOverview/StopMissionDialog.tsx +++ b/frontend/src/components/Pages/FrontPage/MissionOverview/StopMissionDialog.tsx @@ -49,7 +49,7 @@ export const StopMissionDialog = ({ mission }: MissionProps): JSX.Element => { useEffect(() => { if (missionId !== mission.id) setIsStopMissionDialogOpen(false) - }, [mission.id]) + }, [mission.id, missionId]) return ( <> diff --git a/frontend/src/components/Pages/InspectionPage/InspectionSection.tsx b/frontend/src/components/Pages/InspectionPage/InspectionSection.tsx index 860558de8..e365a1e78 100644 --- a/frontend/src/components/Pages/InspectionPage/InspectionSection.tsx +++ b/frontend/src/components/Pages/InspectionPage/InspectionSection.tsx @@ -120,7 +120,7 @@ export function InspectionSection({ updateScheduledMissionsMap(deckMissions) }, refreshInterval) return () => clearInterval(id) - }, [deckMissions]) + }, [deckMissions, refreshInterval]) return ( <> diff --git a/frontend/src/components/Pages/RobotPage/AreaMapView.tsx b/frontend/src/components/Pages/RobotPage/AreaMapView.tsx index cc63c10cd..2026652c7 100644 --- a/frontend/src/components/Pages/RobotPage/AreaMapView.tsx +++ b/frontend/src/components/Pages/RobotPage/AreaMapView.tsx @@ -1,5 +1,5 @@ import { CircularProgress, Typography } from '@equinor/eds-core-react' -import { MouseEvent, useEffect, useState } from 'react' +import { MouseEvent, useCallback, useEffect, useState } from 'react' import styled from 'styled-components' import NoMap from 'mediaAssets/NoMap.png' import { PlaceRobotInMap, InverseCalculatePixelPosition } from '../../../utils/MapMarkers' @@ -52,7 +52,7 @@ export function AreaMapView({ area, localizationPose, setLocalizationPose }: Are const [imageObjectURL, setImageObjectURL] = useState() const [isLoading, setIsLoading] = useState() - const updateMap = () => { + const updateMap = useCallback(() => { let context = mapCanvas.getContext('2d') if (context === null) { return @@ -62,7 +62,7 @@ export function AreaMapView({ area, localizationPose, setLocalizationPose }: Are if (mapMetadata) { PlaceRobotInMap(mapMetadata, mapCanvas, localizationPose) } - } + }, [mapCanvas, mapImage, mapMetadata, localizationPose]) const getMeta = async (url: string) => { const image = new Image() diff --git a/frontend/src/components/Pages/RobotPage/RobotPage.tsx b/frontend/src/components/Pages/RobotPage/RobotPage.tsx index 2f99a26a2..5597c4c1e 100644 --- a/frontend/src/components/Pages/RobotPage/RobotPage.tsx +++ b/frontend/src/components/Pages/RobotPage/RobotPage.tsx @@ -1,7 +1,7 @@ import { Typography } from '@equinor/eds-core-react' import { BackendAPICaller } from 'api/ApiCaller' import { Robot } from 'models/Robot' -import { useEffect, useState } from 'react' +import { useCallback, useEffect, useState } from 'react' import { useParams } from 'react-router-dom' import styled from 'styled-components' import { BackButton } from '../../../utils/BackButton' @@ -50,24 +50,25 @@ export function RobotPage() { const { robotId } = useParams() const [selectedRobot, setSelectedRobot] = useState() + const fetchRobotData = useCallback(() => { + if (robotId) { + BackendAPICaller.getRobotById(robotId).then((robot) => { + setSelectedRobot(robot) + }) + } + }, [robotId]) + useEffect(() => { fetchRobotData() - }, [robotId]) + }, [fetchRobotData]) useEffect(() => { const intervalId = setInterval(fetchRobotData, updateSiteTimer) return () => { clearInterval(intervalId) } - }, []) + }, [fetchRobotData]) - const fetchRobotData = () => { - if (robotId) { - BackendAPICaller.getRobotById(robotId).then((robot) => { - setSelectedRobot(robot) - }) - } - } return ( <>