From 81079ad89f117376b7da610708f2a2ed860c30f7 Mon Sep 17 00:00:00 2001 From: lorentz Date: Thu, 7 May 2026 22:02:52 -0400 Subject: [PATCH] fix(08-02): coerce Postgres numeric hours_worked to Number before toFixed Postgres returns NUMERIC columns as strings via pg, so calling .toFixed(1) on time_entries.hours_worked from /api/engagement/user/[userId] threw at runtime. The period-level hours in the same response are already parseFloat'd; the recentEntries and matchedEntries arrays pass rows through verbatim, so wrap with Number() at render. --- components/mobile/EngagementRecentEntries.tsx | 2 +- components/mobile/EngagementRecentMeetings.tsx | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/components/mobile/EngagementRecentEntries.tsx b/components/mobile/EngagementRecentEntries.tsx index dbf216c..ecad3c9 100644 --- a/components/mobile/EngagementRecentEntries.tsx +++ b/components/mobile/EngagementRecentEntries.tsx @@ -71,7 +71,7 @@ export function EngagementRecentEntries({ entries }: EngagementRecentEntriesProp {dateLabel} - {entry.hours_worked.toFixed(1)}h + {Number(entry.hours_worked).toFixed(1)}h {isBillable && ( Billable diff --git a/components/mobile/EngagementRecentMeetings.tsx b/components/mobile/EngagementRecentMeetings.tsx index 4b4ebb6..fe2167f 100644 --- a/components/mobile/EngagementRecentMeetings.tsx +++ b/components/mobile/EngagementRecentMeetings.tsx @@ -109,7 +109,7 @@ export function EngagementRecentMeetings({ meetings }: EngagementRecentMeetingsP