diff --git a/packages/taler-wallet-webextension/src/NavigationBar.tsx b/packages/taler-wallet-webextension/src/NavigationBar.tsx index 2817f3299..8a41ee68e 100644 --- a/packages/taler-wallet-webextension/src/NavigationBar.tsx +++ b/packages/taler-wallet-webextension/src/NavigationBar.tsx @@ -59,7 +59,10 @@ function replaceAll( ): string { let result = pattern; for (const v in vars) { - result = result.replace(vars[v], !values[v] ? "" : values[v]); + result = result.replace( + vars[v], + !values[v] ? "" : encodeURIComponent(values[v]), + ); } return result; } diff --git a/packages/taler-wallet-webextension/src/wallet/Application.tsx b/packages/taler-wallet-webextension/src/wallet/Application.tsx index 194e34e6d..aef271442 100644 --- a/packages/taler-wallet-webextension/src/wallet/Application.tsx +++ b/packages/taler-wallet-webextension/src/wallet/Application.tsx @@ -20,7 +20,11 @@ * @author sebasjm */ -import { TalerUri, TranslatedString } from "@gnu-taler/taler-util"; +import { + TalerUri, + TranslatedString, + stringifyTalerUri, +} from "@gnu-taler/taler-util"; import { TranslationProvider, useTranslationContext, @@ -103,7 +107,11 @@ export function Application(): VNode { { - platform.openWalletURIFromPopup(talerActionUrl); + redirectTo( + Pages.defaultCta({ + uri: stringifyTalerUri(talerActionUrl), + }), + ); }} />