import classNames from 'classnames' import moment from 'moment' import Card from 'components/common/Card' import Divider from 'components/common/Divider' import Text from 'components/common/Text' import { TextLink } from 'components/common/TextLink' import { generateToastContent } from 'components/common/Toaster' import useTransactions from 'hooks/localStorage/useTransactions' import useStore from 'store' import useChainConfig from 'hooks/useChainConfig' export default function RecentTransactions() { const address = useStore((s) => s.address) const [transactions, setTransactions] = useTransactions() const chainConfig = useChainConfig() const recentTransactions = transactions.recent .filter((tx) => tx.address === address) .sort((a, b) => (a.timestamp > b.timestamp ? -1 : 1)) return (
Recent Transactions {recentTransactions.length === 0 ? ( No recent transactions ) : ( <>
{recentTransactions.map((tx) => { const { accountId, hash, content, message, timestamp } = tx return ( { if (hash) window.open(`${chainConfig.endpoints.explorer}${hash}`, '_blank') }} key={hash} >
Credit Account {accountId} {moment.unix(timestamp).format('lll')}
{message && ( {message} )} {content?.length > 0 && generateToastContent(content, chainConfig.assets)}
) })}
{ setTransactions({ recent: [] }) }} className='underline text-white/70 hover:no-underline' > Clear all Transactions
)}
) }