11import Stack from "@mui/material/Stack" ;
22import { StatBox } from "@/Components/v2/design-elements" ;
33
4+ import prettyMilliseconds from "pretty-ms" ;
45import { useTheme } from "@mui/material/styles" ;
56import type { MonitorStats , Monitor } from "@/Types/Monitor" ;
6- import { getHumanReadableDuration } from "@/Utils/timeUtilsLegacy.js" ;
77import { getStatusPalette } from "@/Utils/MonitorUtils" ;
88import { useTranslation } from "react-i18next" ;
99
@@ -32,11 +32,16 @@ export const MonitorStatBoxes = ({
3232
3333 // Determine time since last check
3434 const timeOfLastCheck = monitorStats ?. lastCheckTimestamp || 0 ;
35- const timeSinceLastCheck = Date . now ( ) - timeOfLastCheck ;
35+ const timeSinceLastCheck = Date . now ( ) - timeOfLastCheck || 0 ;
3636
37- const streakTime = getHumanReadableDuration ( timeSinceLastFailure ) ;
37+ const options = {
38+ secondsDecimalDigits : 0 ,
39+ millisecondsDecimalDigits : 0 ,
40+ } ;
3841
39- const lastCheckTime = getHumanReadableDuration ( timeSinceLastCheck ) ;
42+ const streakTime = prettyMilliseconds ( timeSinceLastFailure , options ) ;
43+
44+ const lastCheckTime = prettyMilliseconds ( timeSinceLastCheck , options ) ;
4045 const palette = getStatusPalette ( monitor ?. status ) ;
4146
4247 return (
@@ -55,7 +60,7 @@ export const MonitorStatBoxes = ({
5560 />
5661 < StatBox
5762 title = { t ( "pages.common.monitors.statBoxes.lastResponseTime" ) }
58- subtitle = { monitorStats ?. lastResponseTime + " ms" }
63+ subtitle = { prettyMilliseconds ( monitorStats ?. lastResponseTime ?? 0 ) }
5964 />
6065
6166 { monitor ?. type === "http" && (
0 commit comments