diff options
Diffstat (limited to 'packages/merchant-backoffice-ui/src/paths/instance/reserves/details/DetailPage.tsx')
-rw-r--r-- | packages/merchant-backoffice-ui/src/paths/instance/reserves/details/DetailPage.tsx | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/packages/merchant-backoffice-ui/src/paths/instance/reserves/details/DetailPage.tsx b/packages/merchant-backoffice-ui/src/paths/instance/reserves/details/DetailPage.tsx index 1d54198c8..54e8123e4 100644 --- a/packages/merchant-backoffice-ui/src/paths/instance/reserves/details/DetailPage.tsx +++ b/packages/merchant-backoffice-ui/src/paths/instance/reserves/details/DetailPage.tsx @@ -19,7 +19,11 @@ * @author Sebastian Javier Marchano (sebasjm) */ -import { Amounts } from "@gnu-taler/taler-util"; +import { + Amounts, + parsePaytoUri, + stringifyPaytoUri, +} from "@gnu-taler/taler-util"; import { useTranslationContext } from "@gnu-taler/web-util/lib/index.browser"; import { format } from "date-fns"; import { Fragment, h, VNode } from "preact"; @@ -49,7 +53,13 @@ export function DetailPage({ id, selected, onBack }: Props): VNode { const didExchangeAckTransfer = Amounts.isNonZero( Amounts.parseOrThrow(selected.exchange_initial_amount), ); - const link = `${selected.payto_uri}?message=${id}&amount=${selected.merchant_initial_amount}`; + const p = parsePaytoUri(selected.payto_uri); + if (p) { + p.params["message"] = id; + p.params["amount"] = selected.merchant_initial_amount; + } + + const link = !p ? selected.payto_uri : stringifyPaytoUri(p); return ( <div class="columns"> |