aboutsummaryrefslogtreecommitdiff
path: root/packages/taler-wallet-webextension/src/hooks
diff options
context:
space:
mode:
authorSebastian <sebasjm@gmail.com>2021-10-12 15:18:29 -0300
committerSebastian <sebasjm@gmail.com>2021-10-12 15:18:29 -0300
commitb8d03b6b2aef630c0fafd7f6ab0fe317abfe1d93 (patch)
tree9dcb0d5d54903eabadd47524726f6424991d0c33 /packages/taler-wallet-webextension/src/hooks
parentbe8e3f4b1d090a536967f132a7fd4742bbcd5343 (diff)
downloadwallet-core-b8d03b6b2aef630c0fafd7f6ab0fe317abfe1d93.tar.xz
added example of withdrawal use cases
Diffstat (limited to 'packages/taler-wallet-webextension/src/hooks')
-rw-r--r--packages/taler-wallet-webextension/src/hooks/useTalerActionURL.ts48
1 files changed, 1 insertions, 47 deletions
diff --git a/packages/taler-wallet-webextension/src/hooks/useTalerActionURL.ts b/packages/taler-wallet-webextension/src/hooks/useTalerActionURL.ts
index 3178374f8..ff9cc029a 100644
--- a/packages/taler-wallet-webextension/src/hooks/useTalerActionURL.ts
+++ b/packages/taler-wallet-webextension/src/hooks/useTalerActionURL.ts
@@ -25,10 +25,7 @@ export function useTalerActionURL(): [string | undefined, (s: boolean) => void]
useEffect(() => {
async function check(): Promise<void> {
const talerUri = await findTalerUriInActiveTab();
- if (talerUri) {
- const actionUrl = actionForTalerUri(talerUri);
- setTalerActionUrl(actionUrl);
- }
+ setTalerActionUrl(talerUri)
}
check();
}, []);
@@ -36,49 +33,6 @@ export function useTalerActionURL(): [string | undefined, (s: boolean) => void]
return [url, setDismissed];
}
-function actionForTalerUri(talerUri: string): string | undefined {
- const uriType = classifyTalerUri(talerUri);
- 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;
-}
-
async function findTalerUriInActiveTab(): Promise<string | undefined> {
return new Promise((resolve, reject) => {
chrome.tabs.executeScript(