diff options
Diffstat (limited to 'src/webex/renderHtml.tsx')
-rw-r--r-- | src/webex/renderHtml.tsx | 17 |
1 files changed, 13 insertions, 4 deletions
diff --git a/src/webex/renderHtml.tsx b/src/webex/renderHtml.tsx index 2e21932b0..e4686adee 100644 --- a/src/webex/renderHtml.tsx +++ b/src/webex/renderHtml.tsx @@ -48,12 +48,21 @@ import * as React from "react"; * Render amount as HTML, which non-breaking space between * decimal value and currency. */ -export function renderAmount(amount: AmountJson) { - const x = amount.value + amount.fraction / Amounts.fractionalBase; - return <span>{x} {amount.currency}</span>; +export function renderAmount(amount: AmountJson | string) { + let a; + if (typeof amount === "string") { + a = Amounts.parse(amount); + } else { + a = amount; + } + if (!a) { + return <span>(invalid amount)</span>; + } + const x = a.value + a.fraction / Amounts.fractionalBase; + return <span>{x} {a.currency}</span>; } -export const AmountDisplay = ({amount}: {amount: AmountJson}) => renderAmount(amount); +export const AmountDisplay = ({amount}: {amount: AmountJson | string}) => renderAmount(amount); /** |