From a6c751198bfd20c990fa63685b87a455e1555fcb Mon Sep 17 00:00:00 2001 From: itskovacs Date: Wed, 5 Nov 2025 18:02:23 +0100 Subject: [PATCH] :lipstick: Trip table days: order by asc date, asc label --- src/src/app/components/trip/trip.component.ts | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/src/src/app/components/trip/trip.component.ts b/src/src/app/components/trip/trip.component.ts index ca5ee5c..33bcde8 100644 --- a/src/src/app/components/trip/trip.component.ts +++ b/src/src/app/components/trip/trip.component.ts @@ -386,13 +386,15 @@ export class TripComponent implements AfterViewInit { .sort((a, b) => { const dateA = a.day.dt; const dateB = b.day.dt; - if (dateA && dateB) return dateA.localeCompare(dateB) || (a.item.time || '').localeCompare(b.item.time || ''); - if (!dateA && !dateB) { - return ( - (a.day.label || '').localeCompare(b.day.label || '') || (a.item.time || '').localeCompare(b.item.time || '') - ); + if (dateA !== dateB) { + if (!dateA) return 1; + if (!dateB) return -1; + const dateCompare = dateA.localeCompare(dateB); + if (dateCompare !== 0) return dateCompare; } - return dateA ? -1 : 1; + const labelCompare = (a.day.label || '').localeCompare(b.day.label || ''); + if (labelCompare !== 0) return labelCompare; + return (a.item.time || '').localeCompare(b.item.time || ''); }) .map(({ item, day }) => { const lat = item.lat ?? item.place?.lat;