From 929b54e8a703774d28f5f27bf85bea21148da606 Mon Sep 17 00:00:00 2001 From: regeter <2320305+regeter@users.noreply.github.com> Date: Wed, 4 Mar 2026 22:11:16 -0800 Subject: [PATCH 1/3] fix: Don't show fractions of meters/feet --- src/Utils.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/Utils.js b/src/Utils.js index 960c3a5..166f979 100644 --- a/src/Utils.js +++ b/src/Utils.js @@ -152,9 +152,9 @@ export function formatDistance(distanceMeters) { const distanceFeet = distanceMeters * 3.28084; const distanceMiles = distanceMeters * 0.000621371; - const metric = distanceMeters < 1000 ? distanceMeters.toFixed(1) + " m" : (distanceMeters / 1000).toFixed(2) + " km"; + const metric = distanceMeters < 1000 ? distanceMeters.toFixed(0) + " m" : (distanceMeters / 1000).toFixed(2) + " km"; - const imperial = distanceFeet < 5280 ? distanceFeet.toFixed(1) + " ft" : distanceMiles.toFixed(2) + " mi"; + const imperial = distanceFeet < 5280 ? distanceFeet.toFixed(0) + " ft" : distanceMiles.toFixed(2) + " mi"; return { metric, imperial }; } From 3e8f9f0f7b33f7dd18f64e625e56398558e75c4e Mon Sep 17 00:00:00 2001 From: regeter <2320305+regeter@users.noreply.github.com> Date: Thu, 5 Mar 2026 10:05:36 -0800 Subject: [PATCH 2/3] feat: dataframe sidepanel --- src/App.js | 45 ++++++++++++++++++- src/Dataframe.js | 8 ++-- src/global.css | 111 +++++++++++++++++++++++++++++++++++++++++------ 3 files changed, 146 insertions(+), 18 deletions(-) diff --git a/src/App.js b/src/App.js index 22bbd77..dda415e 100644 --- a/src/App.js +++ b/src/App.js @@ -131,6 +131,7 @@ class App extends React.Component { featuredObject: { msg: "Click a table row to select object" }, extraColumns: [], toggleOptions: Object.fromEntries(ALL_TOGGLES.map((t) => [t.id, false])), + isDataframeCollapsed: false, filters: { logTypes: { createVehicle: true, @@ -1082,6 +1083,12 @@ class App extends React.Component { })); }; + toggleDataframe = () => { + this.setState((prevState) => ({ + isDataframeCollapsed: !prevState.isDataframeCollapsed, + })); + }; + render() { const { featuredObject, @@ -1092,13 +1099,49 @@ class App extends React.Component { dynamicMarkerLocations, visibleToggles, filters, + isDataframeCollapsed, } = this.state; const selectedEventTime = featuredObject?.timestamp ? new Date(featuredObject.timestamp).getTime() : null; const availableFilters = currentLogData.solutionType === "ODRD" ? ODRD_FILTERS : []; return ( -