taler-typescript-core

Wallet core logic and WebUIs for various components
Log | Files | Refs | Submodules | README | LICENSE

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:
Mpackages/taler-wallet-webextension/src/wallet/Application.tsx | 23+++++++++++++++++++----
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)); }