aboutsummaryrefslogtreecommitdiff
path: root/packages/taler-wallet-webextension/src/popup/TalerActionFound.tsx
diff options
context:
space:
mode:
authorSebastian <sebasjm@gmail.com>2021-11-30 17:29:33 -0300
committerSebastian <sebasjm@gmail.com>2021-11-30 17:29:33 -0300
commit54d4a1efe0a55a80ed594f14698da16dfded8c47 (patch)
treef0e70c6c389f009eccd230cfd63cf647de6e2f78 /packages/taler-wallet-webextension/src/popup/TalerActionFound.tsx
parent045a7c0aa10d8e7b3cb5fa139e868b327680f846 (diff)
downloadwallet-core-54d4a1efe0a55a80ed594f14698da16dfded8c47.tar.xz
add a taler action from the history page
Diffstat (limited to 'packages/taler-wallet-webextension/src/popup/TalerActionFound.tsx')
-rw-r--r--packages/taler-wallet-webextension/src/popup/TalerActionFound.tsx48
1 files changed, 1 insertions, 47 deletions
diff --git a/packages/taler-wallet-webextension/src/popup/TalerActionFound.tsx b/packages/taler-wallet-webextension/src/popup/TalerActionFound.tsx
index b2220e37b..40e9111fb 100644
--- a/packages/taler-wallet-webextension/src/popup/TalerActionFound.tsx
+++ b/packages/taler-wallet-webextension/src/popup/TalerActionFound.tsx
@@ -22,6 +22,7 @@
import { classifyTalerUri, TalerUriType } from "@gnu-taler/taler-util";
import { Fragment, h } from "preact";
import { ButtonPrimary, ButtonSuccess } from "../components/styled/index";
+import { actionForTalerUri } from "../utils/index";
export interface Props {
url: string;
@@ -108,50 +109,3 @@ export function TalerActionFound({ url, onDismiss }: Props) {
</Fragment>
);
}
-
-function actionForTalerUri(
- uriType: TalerUriType,
- talerUri: string,
-): string | undefined {
- switch (uriType) {
- case TalerUriType.TalerWithdraw:
- return makeExtensionUrlWithParams("static/wallet.html#/withdraw", {
- talerWithdrawUri: talerUri,
- });
- case TalerUriType.TalerPay:
- return makeExtensionUrlWithParams("static/wallet.html#/pay", {
- talerPayUri: talerUri,
- });
- case TalerUriType.TalerTip:
- return makeExtensionUrlWithParams("static/wallet.html#/tip", {
- talerTipUri: talerUri,
- });
- case TalerUriType.TalerRefund:
- return makeExtensionUrlWithParams("static/wallet.html#/refund", {
- talerRefundUri: talerUri,
- });
- case TalerUriType.TalerNotifyReserve:
- // FIXME: implement
- break;
- default:
- console.warn(
- "Response with HTTP 402 has Taler header, but header value is not a taler:// URI.",
- );
- break;
- }
- return undefined;
-}
-
-function makeExtensionUrlWithParams(
- url: string,
- params?: { [name: string]: string | undefined },
-): string {
- const innerUrl = new URL(chrome.extension.getURL("/" + url));
- if (params) {
- const hParams = Object.keys(params)
- .map((k) => `${k}=${params[k]}`)
- .join("&");
- innerUrl.hash = innerUrl.hash + "?" + hParams;
- }
- return innerUrl.href;
-}