airswap-web
airswap-web copied to clipboard
869: Speeding up the tx changes the tx id and is not tracked
Fixes #869
Transactions are now tracked differently to account for hash changes.
Normally after a transaction is submitted it will use the hash to listen for a successful receipt. The problem is that the hash will change when you speed up a transaction.
I have a rewritten the whole listening part. Now it always listens for all events (swap, cancel, approve, deposit, withdrawal) and it will try to match it with any processing transaction in the store. It will first try to match with a hash, but if that fails it checks for matching attributes like order nonce, or amount.
If there's a match then the transaction is complete (or failed) and other actions can be fired from that, like show a toast.
Everything is consolidated in src/features/transactions/transactionsHooks.ts, I've also added some comments in there to make everything clear.
I've also done some refactoring.