From ffd2a62c3f7df94365980302fef3bc3376b48182 Mon Sep 17 00:00:00 2001 From: Florian Dold Date: Mon, 3 Aug 2020 13:00:48 +0530 Subject: modularize repo, use pnpm, improve typechecking --- src/webex/pages/tip.tsx | 103 ------------------------------------------------ 1 file changed, 103 deletions(-) delete mode 100644 src/webex/pages/tip.tsx (limited to 'src/webex/pages/tip.tsx') diff --git a/src/webex/pages/tip.tsx b/src/webex/pages/tip.tsx deleted file mode 100644 index 4a1d3743a..000000000 --- a/src/webex/pages/tip.tsx +++ /dev/null @@ -1,103 +0,0 @@ -/* - This file is part of TALER - (C) 2017 GNUnet e.V. - - TALER is free software; you can redistribute it and/or modify it under the - terms of the GNU General Public License as published by the Free Software - Foundation; either version 3, or (at your option) any later version. - - TALER is distributed in the hope that it will be useful, but WITHOUT ANY - WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR - A PARTICULAR PURPOSE. See the GNU General Public License for more details. - - You should have received a copy of the GNU General Public License along with - TALER; see the file COPYING. If not, see - */ - -/** - * Page shown to the user to confirm creation - * of a reserve, usually requested by the bank. - * - * @author Florian Dold - */ - -import * as React from "react"; - -import { acceptTip, getTipStatus } from "../wxApi"; - -import { renderAmount, ProgressButton } from "../renderHtml"; - -import { useState, useEffect } from "react"; -import { TipStatus } from "../../types/walletTypes"; - -function TipDisplay(props: { talerTipUri: string }): JSX.Element { - const [tipStatus, setTipStatus] = useState(undefined); - const [discarded, setDiscarded] = useState(false); - const [loading, setLoading] = useState(false); - const [finished, setFinished] = useState(false); - - useEffect(() => { - const doFetch = async (): Promise => { - const ts = await getTipStatus(props.talerTipUri); - setTipStatus(ts); - }; - doFetch(); - }, [props.talerTipUri]); - - if (discarded) { - return You've discarded the tip.; - } - - if (finished) { - return Tip has been accepted!; - } - - if (!tipStatus) { - return Loading ...; - } - - const discard = (): void => { - setDiscarded(true); - }; - - const accept = async (): Promise => { - setLoading(true); - await acceptTip(tipStatus.tipId); - setFinished(true); - }; - - return ( -
-

Tip Received!

-

- You received a tip of {renderAmount(tipStatus.amount)}{" "} - from - {tipStatus.merchantOrigin}. -

-

- The tip is handled by the exchange{" "} - {tipStatus.exchangeUrl}. This exchange will charge fees - of {renderAmount(tipStatus.totalFees)} for this - operation. -

-
- accept()}> - Accept Tip - {" "} - -
-
- ); -} - -export function createTipPage(): JSX.Element { - const url = new URL(document.location.href); - const talerTipUri = url.searchParams.get("talerTipUri"); - if (typeof talerTipUri !== "string") { - throw Error("talerTipUri must be a string"); - } - - return ; -} -- cgit v1.2.3