Closed 0xmilktea closed 2 weeks ago
[x] Update the Supply & Bridge asset dropdowns to reflect the correct wallet balance.
Supply = only show the balance of assets held in an ICON wallet
Bridge = only show the balance of assets on the origination chain
Arbitrum One
> Arbitrum
0.0034 BNB
? The extra 0.0000116 amounts to $0.008, which isn't worth the space it occupies.BNB Chain wallet
in the top right and I only see the balance of assets on BNB Chain in the wallet dropdown. Yet the Swap panel simultaneously shows the balance & address of assets on Avalanche and Arbitrum, so it would be helpful to turn the top-right wallet dropdown into a Multi-chain wallet
that lists the balances for each supported EVM chain.
Thorswap allows you to see the wallet balance for multiple EVM chains, but you have to add each one explicitly.
Switch Network
> Switch to {blockchain}
.
Cancel
button in the confirmation modal to say Close
instead? There's no way to cancel the transaction once it gets to this point, so I don't want to give people the wrong impression.
Can confirm - after I connected my keplr wallet my screen went white
For the sign-in modal:
View disclaimer
assets
to crypto
in Swap and transfer assets cross-chain.
Ethereum ecosystem
to Ethereum & EVM ecosystem
Current | Ideal |
---|---|
No EVM-based wallet detected.
Add a wallet like [Hana](), [MetaMask](), or [Raby]() to your browser, then try again.
Outstanding from my previous comment:
Hey, Could we also add BTCB and WTBC linked to BTC on this PR? BNB BTCB: 0x7130d2A12B9BCbFAe4f2634d864A1Ee1Ce3Ead9c ARB WBTC: 0x2f2a2543B76A4166549F7aaB2e75Bef0aefC5B0f
ICON BTC: cx07b184a37f03c6ab681fcbd0b45aec6dc3eafbeb
[x] Let's put ICON first, and order every other chain alphabetically underneath (I wanted to avoid bias, but it is helpful to highlight the only chain that's fully supported).
[x] Update the ETH logo to use the same version as the Trade and Stats pages (that's our bad, sorry). The ETH logo in the app is actually off-centre, so it might be a good time to revisit which of ETH's many faces we use. What do you think is more recognisable, the current version or this one? https://cryptologos.cc/logos/versions/ethereum-eth-logo-colored.svg?v=032
[x] Keep the blockchain logos visible on the left, even at smaller sizes. Without them, it's hard to scan the list and makes the right side of the modal look bare.
[x] Add a Close
option to the modal when the screen size is below 600px so that it's easier to close on mobile. (Swiping down will sometimes dismiss the modal, but most of the time it bounces back so it's hard to get out of.)
[x] Add margin-bottom: 0px;
to the Transfer time
entry in the swap metadata so there's consistent spacing at the top & bottom of the container.
[x] Increase the decimal precision to avoid showing 0.00
for small amounts (4-6 decimals will be helpful for higher-value tokens):
[x] Make the Bridge tab default to transfer ETH from Arbitrum to ICON
[x] Update the activity text in the signed-in state to You have no pending cross-chain transactions.
[ ] Add a buffer to the 100% option for native gas tokens (e.g. BNB on BSC, ETH on Arbitrum). If you choose 100% when you try to swap & transfer those assets currently, it won't trigger the wallet to sign the transaction.
Let's tackle these issues, in addition to the outstanding comments left by myself and Anton, then this PR should be ready to go. @swiftcc624 @0xmilktea If any of these items can't/won't be addressed before launch, please mention it here so I know where we stand.
[x] Swap transactions between Arbitrum & BNB Chain keep getting rolled back, but the UI acts like they're still pending. Are we able to detect when this happens so we can either clear them or let the user know they failed?
[x] Add the option to remove failed transactions from the list:
[ ] Transactions from ICON-based assets to BTCB are unable to estimate the fee?
[ ] Make BNB Chain the default for BNB and BTCB in the Swap panel, and make Arbitrum (or the currently active EVM chain) the default for ETH. After you choose one of these three tokens from the asset list, it should open the blockchain selector to show that you have options, like it does for bnUSD, AVAX, and sARCH.
so it might be a good time to revisit which of ETH's many faces we use
I'd say the purple one with its own background, so it doesn't matter where it's shown.
Add a Close option to the modal when the screen size is below 600px
Updated, but there is a device check rather then width check, so you might not see it, depending on where you test.
Ok, here's what we need to take care of before we launch (ignore everything above unless I've called it out specifically):
[ ] Update the BTC token (see Anton's comment)
[x] When you don't have enough of the gas token to pay for a transaction (e.g. BNB on BSC, ETH on Arbitrum, AVAX on Avalanche), nothing happens when you click Swap or Transfer in the confirmation modal (on Avalanche, it'll let you sign the transaction but then nothing happens). Let's add a buffer to the 100% option for native gas tokens to account for the bridge + network fees (much like the 2 ICX buffer we have in place for ICON), and update the confirmation modal so people know when/why they can't go any further:
Add {gas token} to your wallet to cover transaction fees.
[x] Make BNB Chain the default for BNB and BTCB in the Swap panel, and make Arbitrum (or the currently active EVM chain) the default for ETH. After you choose one of these three tokens from the asset list, it should open the blockchain selector to show that you have options, like it does for bnUSD, AVAX, and sARCH.
[x] Update the Swap and Transfer tabs to support the bnUSD & ETH wallet balance for all EVM chains connected to your wallet, not just the active one.
[x] Fix the For
wallet balance on the Swap tab so that it appears when the address is known. It currently remains hidden until a wallet is connected to the origination chain:
[x] Fix the order of assets in the dropdown. They're supposed to be ordered by wallet value, but it seems pretty random.
[x] Add support for ETH on BNB Chain in the main wallet:
[x] If we can squeeze it into this release, let's also improve the empty state for EVM wallets:
Current | Ideal |
---|---|
No EVM-based wallet detected.
Add a wallet like Hana, MetaMask, or Raby to your browser, then try again.
As mentioned in Discord, the UI is taking a long time to register the state of transactions.
A transaction that was rolled back still shows as pending in the UI 2 hours later.
Some transactions are pending for a long time, and I don't know whether that's on the smart contracts or the frontend. Transactions that involve arb &/or bsc seem to be the worst, but xcallscan only seems to show the arb<>icon side of the transaction so I can't see if or what went wrong.
The destination chain balance can take a while to update on the Swap tab after the transaction has been cleared from the activity section (I noticed this with ETH and bnUSD specifically). I made the same cross-chain swap twice because my balance was still 0 after the first swap was complete. Even after the second swap, my balance remained at 0 until some amount of clicking around and force refreshing (or time) finally triggered it to update.
Thanks for this, @0xmilktea! We were planning to rework the design next week to accommodate the previous behaviour, but this keeps it simple.
REVERTED
(answers the question of what happened to the funds), and update the Remove
link to use sentence case rather than all-caps:Current | Preferred |
---|---|
Cancel
button should change to Close
(because you can no longer cancel the transaction). The Swap confirmation modal has been updated to account for this, but the Transfer modal was missed.
EDIT: when I have enough BNB to cover BNB Chain transactions, it works without issue. It's not clear what's causing this behaviour, though, so it would be better to prefill 0.0000
or something instead of appearing non-responsive.
When I try to swap or transfer ETH on BNB Chain, clicking Transfer in the confirmation modal doesn't trigger the wallet.
I'm not sure what the gas requirement is for this transaction, but my balance is 0.03438 BNB
and I have no issue when I swap/transfer bnUSD or BNB from BNB Chain.
just tried to bridge eth from arbi to bsc and it has been pending for 7 minutes now - noticed this transaction has not shown up on xcallscan yet either
My BSC <> ARB transactions are also stuck in a pending state (one for almost an hour now). I think it's related to ETH, though, as my last bnUSD transfer from ARB > BSC was done in 20 seconds.
merge executeTransfer and executeSwap core logic into one internal function in archway and evm.
Still a few decimal-related issues to take care of:
This is not the correct error message to display for this issue:
Unknown errors should use this message:
Couldn't complete your transaction. View common transaction issues.
Known errors should be more specific, and concise. This one should say:
Couldn't approve ETH transfer.
That's it. There's no reason to link to the docs, because that won't help them here.
The latest updates on your projects. Learn more about Vercel for Git ↗︎