import { Vehicle } from "./api"; export function getVehicleDisplayStatus(vehicle: Vehicle): 'Online' | 'Offline' | 'Updating' | string { // Calculate status: Offline if no heartbeat for 5s let lastHeartbeatStr = vehicle.lastHeartbeat; // Fix timezone if missing Z if (!lastHeartbeatStr.endsWith('Z')) { lastHeartbeatStr += 'Z'; } const lastHeartbeatDate = new Date(lastHeartbeatStr); const diffMs = Date.now() - lastHeartbeatDate.getTime(); let displayStatus = vehicle.status; if (displayStatus === 'Online' && diffMs > 5000) { displayStatus = 'Offline'; } return displayStatus; }