commit d2563c16473b2848ecf8a45474dd43983faceac0
parent 5d9390bb3437171353db99e7afd8cbcca432ba5c
Author: Sebastian <sebasjm@gmail.com>
Date: Fri, 3 Jun 2022 10:19:33 -0300
use preact matcher internal api call
Diffstat:
1 file 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
@@ -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));
}