From acc5a9f078d259d149f5c0939823aaaf4bca231d Mon Sep 17 00:00:00 2001 From: DesignerThan Date: Tue, 17 Feb 2026 09:16:43 +0100 Subject: [PATCH 1/2] fix: sort fuel log by odometer as secondary criterion when dates are identical --- src/lib/stores/fuel-log.svelte.ts | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/lib/stores/fuel-log.svelte.ts b/src/lib/stores/fuel-log.svelte.ts index 433d8086..d1d3d6b7 100644 --- a/src/lib/stores/fuel-log.svelte.ts +++ b/src/lib/stores/fuel-log.svelte.ts @@ -16,7 +16,11 @@ class FuelLogStore { .get(`/vehicles/${vehicleStore.selectedId}/fuel-logs`) .then(({ data: res }) => { const logs: FuelLog[] = res.data; - logs.sort((a, b) => compareDesc(a.date, b.date)); + logs.sort((a, b) => { + const dateDiff = compareDesc(a.date, b.date); + if (dateDiff !== 0) return dateDiff; + return (b.odometer ?? 0) - (a.odometer ?? 0); + }); this.fuelLogs = logs; this.error = undefined; }) From 89c0b0caee76932d084102351e69169ed2697167 Mon Sep 17 00:00:00 2001 From: DesignerThan Date: Tue, 17 Feb 2026 09:20:35 +0100 Subject: [PATCH 2/2] fix: sort maintenance log by date and as secondary by odometer --- src/lib/stores/maintenance.svelte.ts | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/lib/stores/maintenance.svelte.ts b/src/lib/stores/maintenance.svelte.ts index 727034e2..98cad7b1 100644 --- a/src/lib/stores/maintenance.svelte.ts +++ b/src/lib/stores/maintenance.svelte.ts @@ -1,6 +1,7 @@ import type { FuelLog, MaintenanceLog } from '$lib/domain'; import { apiClient } from '$lib/helper/api.helper'; import type { ApiResponse } from '$lib/response'; +import { compareDesc } from 'date-fns'; import { vehicleStore } from './vehicle.svelte'; class MaintenanceStore { @@ -15,6 +16,11 @@ class MaintenanceStore { .get(`/vehicles/${vehicleStore.selectedId}/maintenance-logs`) .then(({ data: res }) => { const logs: MaintenanceLog[] = res.data; + logs.sort((a, b) => { + const dateDiff = compareDesc(a.date, b.date); + if (dateDiff !== 0) return dateDiff; + return b.odometer - a.odometer; + }); this.maintenanceLogs = logs; this.error = undefined; })