From 4ed4535bc090acf3e5a3b7781ba458d077aac751 Mon Sep 17 00:00:00 2001 From: Sebastian Date: Fri, 7 May 2021 18:10:27 -0300 Subject: preact routing on the wallet --- packages/taler-wallet-webextension/src/pages/withdraw.tsx | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) (limited to 'packages/taler-wallet-webextension/src/pages/withdraw.tsx') diff --git a/packages/taler-wallet-webextension/src/pages/withdraw.tsx b/packages/taler-wallet-webextension/src/pages/withdraw.tsx index 1d628be22..d99bcf9c0 100644 --- a/packages/taler-wallet-webextension/src/pages/withdraw.tsx +++ b/packages/taler-wallet-webextension/src/pages/withdraw.tsx @@ -34,12 +34,14 @@ import { import { WithdrawUriInfoResponse } from "@gnu-taler/taler-util"; import { JSX } from "preact/jsx-runtime"; -function WithdrawalDialog(props: { talerWithdrawUri: string }): JSX.Element { +interface Props { + talerWithdrawUri?: string; +} +export function WithdrawalDialog({ talerWithdrawUri }: Props): JSX.Element { const [details, setDetails] = useState(undefined); const [selectedExchange, setSelectedExchange] = useState< string | undefined >(undefined); - const talerWithdrawUri = props.talerWithdrawUri; const [cancelled, setCancelled] = useState(false); const [selecting, setSelecting] = useState(false); const [errMsg, setErrMsg] = useState(""); @@ -52,10 +54,9 @@ function WithdrawalDialog(props: { talerWithdrawUri: string }): JSX.Element { }, []); useEffect(() => { + if (!talerWithdrawUri) return const fetchData = async (): Promise => { - const res = await getWithdrawalDetailsForUri({ - talerWithdrawUri: props.talerWithdrawUri, - }); + const res = await getWithdrawalDetailsForUri({ talerWithdrawUri }); setDetails(res); if (res.defaultExchangeBaseUrl) { setSelectedExchange(res.defaultExchangeBaseUrl); @@ -64,6 +65,10 @@ function WithdrawalDialog(props: { talerWithdrawUri: string }): JSX.Element { fetchData(); }, [selectedExchange, errMsg, selecting, talerWithdrawUri, updateCounter]); + if (!talerWithdrawUri) { + return missing withdraw uri; + } + if (!details) { return Loading...; } -- cgit v1.2.3