From 22a2b92022ccee5bdabbc8a5c8d90c6c0da2b0f2 Mon Sep 17 00:00:00 2001 From: Proddy Date: Tue, 12 Oct 2021 14:59:53 +0200 Subject: [PATCH] added number formatting and pluralization for uom times and seconds --- interface/src/project/EMSESPDataForm.tsx | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/interface/src/project/EMSESPDataForm.tsx b/interface/src/project/EMSESPDataForm.tsx index 4cc8eb80a..6accf8e98 100644 --- a/interface/src/project/EMSESPDataForm.tsx +++ b/interface/src/project/EMSESPDataForm.tsx @@ -104,6 +104,9 @@ type EMSESPDataFormProps = RestFormProps & AuthenticatedContextProps & WithWidthProps; +const pluralize = (count: number, noun: string, suffix = 's') => + ` ${Intl.NumberFormat().format(count)} ${noun}${count !== 1 ? suffix : ''} `; + export const formatDuration = (duration_min: number) => { const { days, hours, minutes } = parseMilliseconds(duration_min * 60000); let formatted = ''; @@ -119,9 +122,6 @@ export const formatDuration = (duration_min: number) => { return formatted; }; -const pluralize = (count: number, noun: string, suffix = 's') => - ` ${count} ${noun}${count !== 1 ? suffix : ''} `; - function formatValue(value: any, uom: number, digit: number) { switch (uom) { case DeviceValueUOM.HOURS: @@ -141,6 +141,9 @@ function formatValue(value: any, uom: number, digit: number) { ' ' + DeviceValueUOM_s[uom] ); + case DeviceValueUOM.TIMES: + case DeviceValueUOM.SECONDS: + return pluralize(value, DeviceValueUOM_s[uom]); default: return ( new Intl.NumberFormat().format(value) + ' ' + DeviceValueUOM_s[uom]