diff options
author | Florian Dold <florian.dold@gmail.com> | 2020-08-20 11:59:06 +0530 |
---|---|---|
committer | Florian Dold <florian.dold@gmail.com> | 2020-08-20 11:59:06 +0530 |
commit | 57000c22141afde7eb7b13ccbd16f06d6b6eb5cd (patch) | |
tree | fc0de2a8a01bdc637325ec735e7a8f68e856532c /packages/taler-wallet-webextension/src/pages/popup.tsx | |
parent | 7ff93d8ef64d8ae832c2267192ce1f97bf914776 (diff) | |
download | wallet-core-57000c22141afde7eb7b13ccbd16f06d6b6eb5cd.tar.xz |
add auto-refund test case, fix bug detected by it
Diffstat (limited to 'packages/taler-wallet-webextension/src/pages/popup.tsx')
-rw-r--r-- | packages/taler-wallet-webextension/src/pages/popup.tsx | 39 |
1 files changed, 35 insertions, 4 deletions
diff --git a/packages/taler-wallet-webextension/src/pages/popup.tsx b/packages/taler-wallet-webextension/src/pages/popup.tsx index e833f5950..d7cdd548e 100644 --- a/packages/taler-wallet-webextension/src/pages/popup.tsx +++ b/packages/taler-wallet-webextension/src/pages/popup.tsx @@ -33,9 +33,11 @@ import { Balance, classifyTalerUri, TalerUriType, + TransactionsResponse, + Transaction, + TransactionType, } from "taler-wallet-core"; - import { abbrev, renderAmount, PageLink } from "../renderHtml"; import * as wxApi from "../wxApi"; @@ -309,9 +311,37 @@ function formatAndCapitalize(text: string): string { return text; } -const HistoryComponent = (props: any): JSX.Element => { - return <span>TBD</span>; -}; +function TransactionItem(props: { tx: Transaction }): JSX.Element { + const tx = props.tx; + return <pre>{JSON.stringify(tx)}</pre> +} + +function WalletHistory(props: any): JSX.Element { + const [transactions, setTransactions] = useState< + TransactionsResponse | undefined + >(); + + useEffect(() => { + const fetchData = async (): Promise<void> => { + const res = await wxApi.getTransactions(); + setTransactions(res); + }; + fetchData(); + // eslint-disable-next-line react-hooks/exhaustive-deps + }, []); + + if (!transactions) { + return <div>Loading ...</div>; + } + + return ( + <div> + {transactions.transactions.map((tx) => ( + <TransactionItem tx={tx} /> + ))} + </div> + ); +} class WalletSettings extends React.Component<any, any> { render(): JSX.Element { @@ -492,6 +522,7 @@ function WalletPopup(): JSX.Element { <WalletBalanceView route="/balance" default /> <WalletSettings route="/settings" /> <WalletDebug route="/debug" /> + <WalletHistory route="/history" /> </Router> </div> </div> |