aboutsummaryrefslogtreecommitdiff
path: root/packages
diff options
context:
space:
mode:
Diffstat (limited to 'packages')
-rw-r--r--packages/taler-wallet-webextension/src/wallet/Application.tsx23
1 files changed, 19 insertions, 4 deletions
diff --git a/packages/taler-wallet-webextension/src/wallet/Application.tsx b/packages/taler-wallet-webextension/src/wallet/Application.tsx
index 84aa0dd84..b0527f72d 100644
--- a/packages/taler-wallet-webextension/src/wallet/Application.tsx
+++ b/packages/taler-wallet-webextension/src/wallet/Application.tsx
@@ -247,8 +247,23 @@ function Redirect({ to }: { to: string }): null {
return null;
}
-function shouldShowPendingOperations(path: string): boolean {
- // FIXME: replace includes with a match API like preact router does
- // [Pages.balanceHistory, Pages.dev, Pages.settings, Pages.backup]
- return ["/balance/history/", "/dev", "/settings", "/backup"].includes(path);
+function matchesRoute(url: string, route: string): boolean {
+ type MatcherFunc = (
+ url: string,
+ route: string,
+ opts: any,
+ ) => Record<string, string> | false;
+
+ const internalPreactMatcher: MatcherFunc = (Router as any).exec;
+ const result = internalPreactMatcher(url, route, {});
+ return !result ? false : true;
+}
+
+function shouldShowPendingOperations(url: string): boolean {
+ return [
+ Pages.balanceHistory.pattern,
+ Pages.dev,
+ Pages.settings,
+ Pages.backup,
+ ].some((p) => matchesRoute(url, p));
}