From 6c06a3befb08c47529783e22d68afea3b86ecb91 Mon Sep 17 00:00:00 2001 From: Shafikul Islam Tanbir <58387559+shafiktanbir@users.noreply.github.com> Date: Sun, 25 Oct 2026 18:37:14 +0600 Subject: [PATCH] fix(dashboard): sort timing phases chronologically in mapTimingPhases (#2988) * fix(dashboard): sort timing phases chronologically in mapTimingPhases * ci: apply automated fixes --------- Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com> --- apps/dashboard/src/data/metrics.client.ts | 25 ++++++++++++++--------- 1 file changed, 15 insertions(+), 10 deletions(-) diff --git a/apps/dashboard/src/data/metrics.client.ts b/apps/dashboard/src/data/metrics.client.ts index 72a33c898..3784e0550 100644 --- a/apps/dashboard/src/data/metrics.client.ts +++ b/apps/dashboard/src/data/metrics.client.ts @@ -326,16 +326,21 @@ export function mapTimingPhases( timingPhases: RouterOutputs["tinybird"]["metricsTimingPhases"], percentile: (typeof PERCENTILES)[number], ) { - return timingPhases.data?.map((metric) => { - return { - timestamp: metric.timestamp, - dns: metric[`${percentile}Dns`], - ttfb: metric[`${percentile}Ttfb`], - transfer: metric[`${percentile}Transfer`], - connect: metric[`${percentile}Connect`], - tls: metric[`${percentile}Tls`], - }; - }); + return [...(timingPhases.data ?? [])] + .sort( + (a, b) => + new Date(a.timestamp).getTime() - new Date(b.timestamp).getTime(), + ) + .map((metric) => { + return { + timestamp: metric.timestamp, + dns: metric[`${percentile}Dns`], + ttfb: metric[`${percentile}Ttfb`], + transfer: metric[`${percentile}Transfer`], + connect: metric[`${percentile}Connect`], + tls: metric[`${percentile}Tls`], + }; + }); } export const periodToInterval = { -- 2.54.0