Skip to content

Commit 2ee16a1

Browse files
committed
Improve naming of the maps
1 parent 802b9d3 commit 2ee16a1

File tree

4 files changed

+30
-12
lines changed

4 files changed

+30
-12
lines changed

frontend/src/components/Pages/MissionPage/MapPosition/MissionMapView.tsx

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -79,6 +79,9 @@ export const MissionMapView = ({ mission }: MissionProps) => {
7979
[mission.tasks]
8080
)
8181

82+
let displayedMapName = mission.map?.mapName.split('.')[0].replace(/[^0-9a-z-A-Z ]/g, ' ')
83+
displayedMapName = displayedMapName ? displayedMapName.charAt(0).toUpperCase() + displayedMapName.slice(1) : ' '
84+
8285
useEffect(() => {
8386
BackendAPICaller.getMap(mission.installationCode!, mission.map?.mapName!)
8487
.then((imageBlob) => {
@@ -130,7 +133,7 @@ export const MissionMapView = ({ mission }: MissionProps) => {
130133

131134
return (
132135
<MapCard style={{ boxShadow: tokens.elevation.raised }}>
133-
<Typography variant="h3">{mission.map?.mapName}</Typography>
136+
<Typography variant="h3">{displayedMapName}</Typography>
134137
<SyledContainer>
135138
<StyledElements>
136139
<StyledMap id="mapCanvas" />

frontend/src/language/en.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -265,5 +265,6 @@
265265
"No alerts": "No alerts",
266266
"minutes ago": "minutes ago",
267267
"Failed to retrieve previous mission runs": "Failed to retrieve previous mission runs",
268-
"Documentation": "Documentation"
268+
"Documentation": "Documentation",
269+
"Map of": "Map of"
269270
}

frontend/src/language/no.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -265,5 +265,6 @@
265265
"No alerts": "Ingen varsler",
266266
"minutes ago": "minutter siden",
267267
"Failed to retrieve previous mission runs": "Kunne ikke hente tildigere oppdragskjøringer",
268-
"Documentation": "Dokumentasjon"
268+
"Documentation": "Dokumentasjon",
269+
"Map of": "Kart over"
269270
}

frontend/src/utils/DeckMapView.tsx

Lines changed: 22 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ import { MapMetadata } from 'models/MapMetadata'
88
import { Pose } from 'models/Pose'
99
import { MapCompass } from 'utils/MapCompass'
1010
import { Deck } from 'models/Deck'
11+
import { useLanguageContext } from 'components/Contexts/LanguageContext'
1112

1213
interface DeckProps {
1314
deck: Deck
@@ -23,7 +24,6 @@ const StyledMap = styled.canvas`
2324
const StyledMapLimits = styled.div`
2425
display: flex;
2526
flex-direction: column;
26-
padding-left: 30px;
2727
justify-content: center;
2828
align-items: center;
2929
`
@@ -35,16 +35,24 @@ const StyledLoading = styled.div`
3535

3636
const StyledMapCompass = styled.div`
3737
display: flex;
38-
flex-direction: columns;
38+
flex-direction: row;
3939
align-items: end;
4040
`
4141

42+
const StyledCaption = styled.div`
43+
display: flex;
44+
flex-direction: column;
45+
justify-content: left;
46+
gap: 10px;
47+
`
48+
4249
export const DeckMapView = ({ deck, markedRobotPosition }: DeckProps) => {
4350
const [mapCanvas, setMapCanvas] = useState<HTMLCanvasElement>(document.createElement('canvas'))
4451
const [mapImage, setMapImage] = useState<HTMLImageElement>(document.createElement('img'))
4552
const [mapContext, setMapContext] = useState<CanvasRenderingContext2D>()
4653
const [mapMetadata, setMapMetadata] = useState<MapMetadata>()
4754
const [isLoading, setIsLoading] = useState<boolean>()
55+
const { TranslateText } = useLanguageContext()
4856

4957
const updateMap = useCallback(() => {
5058
let context = mapCanvas.getContext('2d')
@@ -65,6 +73,9 @@ export const DeckMapView = ({ deck, markedRobotPosition }: DeckProps) => {
6573
return image
6674
}
6775

76+
let mapName = mapMetadata?.mapName.split('.')[0].replace(/[^0-9a-z-A-Z ]/g, ' ')
77+
mapName = mapName ? mapName.charAt(0).toUpperCase() + mapName.slice(1) : ' '
78+
6879
useEffect(() => {
6980
const processImageURL = (imageBlob: Blob | string) => {
7081
const imageObjectURL = typeof imageBlob === 'string' ? imageBlob : URL.createObjectURL(imageBlob as Blob)
@@ -125,13 +136,15 @@ export const DeckMapView = ({ deck, markedRobotPosition }: DeckProps) => {
125136
)}
126137
{!isLoading && (
127138
<StyledMapLimits>
128-
<Typography variant="h2">
129-
{mapMetadata?.mapName ? mapMetadata.mapName : 'No map available'}
130-
</Typography>
131-
<StyledMapCompass>
132-
<StyledMap id="deckMapCanvas" />
133-
{mapMetadata && <MapCompass />}
134-
</StyledMapCompass>
139+
<StyledCaption>
140+
<StyledMapCompass>
141+
<StyledMap id="deckMapCanvas" />
142+
{mapMetadata && <MapCompass />}
143+
</StyledMapCompass>
144+
<Typography italic variant="body_short">
145+
{TranslateText('Map of') + ' ' + mapName}
146+
</Typography>
147+
</StyledCaption>
135148
</StyledMapLimits>
136149
)}
137150
</>

0 commit comments

Comments
 (0)