Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add Brave Swap to Crypto Wallets #15859

Closed
onyb opened this issue May 14, 2021 · 1 comment · Fixed by brave/ethereum-remote-client#244
Closed

Add Brave Swap to Crypto Wallets #15859

onyb opened this issue May 14, 2021 · 1 comment · Fixed by brave/ethereum-remote-client#244

Comments

@onyb
Copy link
Member

onyb commented May 14, 2021

Improve layout of the Swap page

Status: ✅ (brave/ethereum-remote-client#237)

Allow asset dropdowns to have an unselected state

Add a state to display a "Select asset" text when:

  • the Swap page is first loaded, in the To field.
  • the same asset is selected in the From/To field, so the other one is reset to this state.

Status: ✅ (brave/ethereum-remote-client#240)

Swap amount validation

The amount entered must be validated against the available token balance AND the available ETH for paying gas.

Status: ✅ (brave/ethereum-remote-client#241)

Gas computation

The current gas estimates are completely off and need to be fixed. Here is a list of related TODOs.

Status: ✅ (brave/ethereum-remote-client#240 and brave/ethereum-remote-client#241)

Max amount button

Add a button near the From asset field, allowing users to set the maximum available balance in the amount field. The logic for this already exists (from the Send workflow), but there is some cleanup and integration work to do.

Status: ✅ (brave/ethereum-remote-client#241)

Add more tokens as Swap pairs

The allowed asset pairs are currently hardcoded. We need to obtain the list of tokens supported by 0x API, and add it to our Swap implementation.

Status: ✅ (brave/ethereum-remote-client#240)

Quote refresh

Periodically obtain a fresh quote (say every 30 seconds) and update the Redux state. Also needs to be done whenever there's a change in asset pairs and the amount. The queries to the API must be debounced.

Also, implement a countdown in the UI.

Status: ✅ (brave/ethereum-remote-client#240)

Search

Users should be able to search for tokens. Fuse.js can be used to implement fuzzy search. Most of the work is on the UI side.

Status: TODO

Fix component unit tests

Status: ⏭️ ONGOING

Code cleanups

Several components have leftover code from the Send boilerplate. Additionally, certain files could benefit from higher-order components to avoid duplication of code.

Status: ⏭️ (brave/ethereum-remote-client#242)

End-to-end swap

We need to carefully audit that the generated raw transaction is actually valid.

Nice to have: deploy 0x contracts and Swap API locally and perform an end-to-end swap transaction.

Status: ⏭️ (brave/ethereum-remote-client#242)

Approval screen (nice to have)

This is not necessary to roll out the first version of the Swap feature, but an additional screen for "Sign" would be nice to have. Today, the user must approve the swap from the transaction queue, which is not ideal.

Update: User is now automatically redirected to a view for approving the transaction.
Status: ⏭️ (brave/ethereum-remote-client#242)

Specify spending allowance

Allow user to approve token spending allowance. Requires a dedicated screen.

Status: ⏭️ (brave/ethereum-remote-client#242)

@onyb onyb added the feature/web3/wallet Integrating Ethereum+ wallet support label May 14, 2021
@onyb onyb self-assigned this May 14, 2021
@bbondy bbondy added this to the Ethereum Remote Client 1.0.30 milestone Jun 25, 2021
@bbondy bbondy changed the title Meta issue for Swap on ethereum-remote-client Swap on ethereum-remote-client Jun 25, 2021
@bbondy bbondy closed this as completed Jun 25, 2021
@bbondy bbondy changed the title Swap on ethereum-remote-client Enable Brave Swap Jun 25, 2021
@bbondy bbondy changed the title Enable Brave Swap Add Brave Swap to Crypto Wallets Jun 25, 2021
@srirambv
Copy link
Contributor

srirambv commented Jul 2, 2021

Verification passed on

Brave 1.26.67 Chromium: 91.0.4472.114 (Official Build) (x86_64)
Revision 4bb19460e8d88c3446b360b0df8fd991fee49c0b-refs/branch-heads/4472@{#1496}
OS macOS Version 10.15.7 (Build 19H114)
Component 1.0.31 Dev
Verified test plan from brave/ethereum-remote-client#244
  • Verified able to swap ETH to an ERC token successfully (Txhash)
    image

  • Verified able to swap an ERC20 Token to another ERC 20 Token (Approval Txhash)
    image

  • Verified swap transactions from ETH -> ERC20 or ERC20 -> ERC20 includes 0.875% Brave fees sent to 0xbd9420a98a7bd6b89765e5715e169481602d9c3d

ETH -> LINK BAT -> DAI
image image

Swap amount validation

  • Verified amount entered is validated against the available balance taking Gas fee into account
Balance + Fee Included Insufficient funds Insufficient gas fee Insufficient funds + Insufficient gas
image image image image

Gas computation

  • Verified live quotes & gas computations are shown and update as soon as the input value is changed
Live.Quote.Update.mov

Max amount button

  • Verified max button is shown above input field
  • Verified selecting max button pre-populates the input field with available balance for the selected token
  • Verified manually entered value is replaced with all available balance when max button is clicked
  • Verified if manually entered value is more than available balance, clicking max button resets value to the available balance
Max.button.and.Gas.computation.mov

Tokens as Swap pairs

Verified 311 tokens are added for swap pairs
<div class="swap-v2__asset-dropdown__symbol">ETH</div>
<div class="swap-v2__asset-dropdown__symbol">WETH</div>
<div class="swap-v2__asset-dropdown__symbol">USDT</div>
<div class="swap-v2__asset-dropdown__symbol">USDC</div>
<div class="swap-v2__asset-dropdown__symbol">UNI</div>
<div class="swap-v2__asset-dropdown__symbol">LINK</div>
<div class="swap-v2__asset-dropdown__symbol">BUSD</div>
<div class="swap-v2__asset-dropdown__symbol">MATIC</div>
<div class="swap-v2__asset-dropdown__symbol">WBTC</div>
<div class="swap-v2__asset-dropdown__symbol">DAI</div>
<div class="swap-v2__asset-dropdown__symbol">AAVE</div>
<div class="swap-v2__asset-dropdown__symbol">0XBTC</div>
<div class="swap-v2__asset-dropdown__symbol">1INCH</div>
<div class="swap-v2__asset-dropdown__symbol">2KEY</div>
<div class="swap-v2__asset-dropdown__symbol">ABAT</div>
<div class="swap-v2__asset-dropdown__symbol">ABUSD</div>
<div class="swap-v2__asset-dropdown__symbol">ADAI</div>
<div class="swap-v2__asset-dropdown__symbol">ADX</div>
<div class="swap-v2__asset-dropdown__symbol">AE</div>
<div class="swap-v2__asset-dropdown__symbol">AENJ</div>
<div class="swap-v2__asset-dropdown__symbol">AERGO</div>
<div class="swap-v2__asset-dropdown__symbol">AKNC</div>
<div class="swap-v2__asset-dropdown__symbol">ALEPH</div>
<div class="swap-v2__asset-dropdown__symbol">ALINK</div>
<div class="swap-v2__asset-dropdown__symbol">AMANA</div>
<div class="swap-v2__asset-dropdown__symbol">AMKR</div>
<div class="swap-v2__asset-dropdown__symbol">AMLT</div>
<div class="swap-v2__asset-dropdown__symbol">AMPL</div>
<div class="swap-v2__asset-dropdown__symbol">ANT</div>
<div class="swap-v2__asset-dropdown__symbol">APPC</div>
<div class="swap-v2__asset-dropdown__symbol">AREN</div>
<div class="swap-v2__asset-dropdown__symbol">ART</div>
<div class="swap-v2__asset-dropdown__symbol">ASNX</div>
<div class="swap-v2__asset-dropdown__symbol">AST</div>
<div class="swap-v2__asset-dropdown__symbol">ASUSD</div>
<div class="swap-v2__asset-dropdown__symbol">ATRI</div>
<div class="swap-v2__asset-dropdown__symbol">ATUSD</div>
<div class="swap-v2__asset-dropdown__symbol">AUC</div>
<div class="swap-v2__asset-dropdown__symbol">AUSDC</div>
<div class="swap-v2__asset-dropdown__symbol">AUSDT</div>
<div class="swap-v2__asset-dropdown__symbol">AVAL</div>
<div class="swap-v2__asset-dropdown__symbol">AWBTC</div>
<div class="swap-v2__asset-dropdown__symbol">AXN</div>
<div class="swap-v2__asset-dropdown__symbol">AZRX</div>
<div class="swap-v2__asset-dropdown__symbol">BADGER</div>
<div class="swap-v2__asset-dropdown__symbol">BAL</div>
<div class="swap-v2__asset-dropdown__symbol">BASIC</div>
<div class="swap-v2__asset-dropdown__symbol">BAT</div>
<div class="swap-v2__asset-dropdown__symbol">BC</div>
<div class="swap-v2__asset-dropdown__symbol">BCPT</div>
<div class="swap-v2__asset-dropdown__symbol">BETHER</div>
<div class="swap-v2__asset-dropdown__symbol">BLZ</div>
<div class="swap-v2__asset-dropdown__symbol">BMX</div>
<div class="swap-v2__asset-dropdown__symbol">BNT</div>
<div class="swap-v2__asset-dropdown__symbol">BOA</div>
<div class="swap-v2__asset-dropdown__symbol">BOB</div>
<div class="swap-v2__asset-dropdown__symbol">BOX</div>
<div class="swap-v2__asset-dropdown__symbol">BTU</div>
<div class="swap-v2__asset-dropdown__symbol">C20</div>
<div class="swap-v2__asset-dropdown__symbol">CAG</div>
<div class="swap-v2__asset-dropdown__symbol">CAMP</div>
<div class="swap-v2__asset-dropdown__symbol">CAT</div>
<div class="swap-v2__asset-dropdown__symbol">CBAT</div>
<div class="swap-v2__asset-dropdown__symbol">CDAI</div>
<div class="swap-v2__asset-dropdown__symbol">CEL</div>
<div class="swap-v2__asset-dropdown__symbol">CELR</div>
<div class="swap-v2__asset-dropdown__symbol">CETH</div>
<div class="swap-v2__asset-dropdown__symbol">CHAI</div>
<div class="swap-v2__asset-dropdown__symbol">CHSB</div>
<div class="swap-v2__asset-dropdown__symbol">COMP</div>
<div class="swap-v2__asset-dropdown__symbol">CRBN</div>
<div class="swap-v2__asset-dropdown__symbol">CREP</div>
<div class="swap-v2__asset-dropdown__symbol">CRO</div>
<div class="swap-v2__asset-dropdown__symbol">CRU</div>
<div class="swap-v2__asset-dropdown__symbol">CSAI</div>
<div class="swap-v2__asset-dropdown__symbol">CUSDC</div>
<div class="swap-v2__asset-dropdown__symbol">CUSDT</div>
<div class="swap-v2__asset-dropdown__symbol">CVP</div>
<div class="swap-v2__asset-dropdown__symbol">CWBTC</div>
<div class="swap-v2__asset-dropdown__symbol">CZRX</div>
<div class="swap-v2__asset-dropdown__symbol">DATA</div>
<div class="swap-v2__asset-dropdown__symbol">DAY</div>
<div class="swap-v2__asset-dropdown__symbol">DCN</div>
<div class="swap-v2__asset-dropdown__symbol">DDIM</div>
<div class="swap-v2__asset-dropdown__symbol">DDX</div>
<div class="swap-v2__asset-dropdown__symbol">DF</div>
<div class="swap-v2__asset-dropdown__symbol">DG</div>
<div class="swap-v2__asset-dropdown__symbol">DGD</div>
<div class="swap-v2__asset-dropdown__symbol">DIA</div>
<div class="swap-v2__asset-dropdown__symbol">DKA</div>
<div class="swap-v2__asset-dropdown__symbol">DMST</div>
<div class="swap-v2__asset-dropdown__symbol">DNT</div>
<div class="swap-v2__asset-dropdown__symbol">DODO</div>
<div class="swap-v2__asset-dropdown__symbol">DRC</div>
<div class="swap-v2__asset-dropdown__symbol">DREAM</div>
<div class="swap-v2__asset-dropdown__symbol">DRT</div>
<div class="swap-v2__asset-dropdown__symbol">DTH</div>
<div class="swap-v2__asset-dropdown__symbol">DUCK</div>
<div class="swap-v2__asset-dropdown__symbol">EDG</div>
<div class="swap-v2__asset-dropdown__symbol">EL</div>
<div class="swap-v2__asset-dropdown__symbol">ELF</div>
<div class="swap-v2__asset-dropdown__symbol">ELTCOIN</div>
<div class="swap-v2__asset-dropdown__symbol">ELY</div>
<div class="swap-v2__asset-dropdown__symbol">ENG</div>
<div class="swap-v2__asset-dropdown__symbol">ENJ</div>
<div class="swap-v2__asset-dropdown__symbol">ENTRP</div>
<div class="swap-v2__asset-dropdown__symbol">ETHBNT</div>
<div class="swap-v2__asset-dropdown__symbol">EURS</div>
<div class="swap-v2__asset-dropdown__symbol">FET</div>
<div class="swap-v2__asset-dropdown__symbol">FKX</div>
<div class="swap-v2__asset-dropdown__symbol">FLX</div>
<div class="swap-v2__asset-dropdown__symbol">FNT</div>
<div class="swap-v2__asset-dropdown__symbol">FOAM</div>
<div class="swap-v2__asset-dropdown__symbol">FRM</div>
<div class="swap-v2__asset-dropdown__symbol">FTM</div>
<div class="swap-v2__asset-dropdown__symbol">FUN</div>
<div class="swap-v2__asset-dropdown__symbol">FWB</div>
<div class="swap-v2__asset-dropdown__symbol">GAME</div>
<div class="swap-v2__asset-dropdown__symbol">GEN</div>
<div class="swap-v2__asset-dropdown__symbol">GET</div>
<div class="swap-v2__asset-dropdown__symbol">GLM</div>
<div class="swap-v2__asset-dropdown__symbol">GLQ</div>
<div class="swap-v2__asset-dropdown__symbol">GNO</div>
<div class="swap-v2__asset-dropdown__symbol">GOLD</div>
<div class="swap-v2__asset-dropdown__symbol">GRID</div>
<div class="swap-v2__asset-dropdown__symbol">GRT</div>
<div class="swap-v2__asset-dropdown__symbol">GUP</div>
<div class="swap-v2__asset-dropdown__symbol">GUSD</div>
<div class="swap-v2__asset-dropdown__symbol">HEX</div>
<div class="swap-v2__asset-dropdown__symbol">HGT</div>
<div class="swap-v2__asset-dropdown__symbol">HOT</div>
<div class="swap-v2__asset-dropdown__symbol">HUNT</div>
<div class="swap-v2__asset-dropdown__symbol">HUSD</div>
<div class="swap-v2__asset-dropdown__symbol">IDRT</div>
<div class="swap-v2__asset-dropdown__symbol">IMP</div>
<div class="swap-v2__asset-dropdown__symbol">IND</div>
<div class="swap-v2__asset-dropdown__symbol">IQN</div>
<div class="swap-v2__asset-dropdown__symbol">JET</div>
<div class="swap-v2__asset-dropdown__symbol">JOY</div>
<div class="swap-v2__asset-dropdown__symbol">KEEP</div>
<div class="swap-v2__asset-dropdown__symbol">KEY</div>
<div class="swap-v2__asset-dropdown__symbol">KNCL</div>
<div class="swap-v2__asset-dropdown__symbol">KTON</div>
<div class="swap-v2__asset-dropdown__symbol">LDO</div>
<div class="swap-v2__asset-dropdown__symbol">LEND</div>
<div class="swap-v2__asset-dropdown__symbol">LGO</div>
<div class="swap-v2__asset-dropdown__symbol">LMY</div>
<div class="swap-v2__asset-dropdown__symbol">LOOMOLD</div>
<div class="swap-v2__asset-dropdown__symbol">LPT</div>
<div class="swap-v2__asset-dropdown__symbol">LRC</div>
<div class="swap-v2__asset-dropdown__symbol">LTO</div>
<div class="swap-v2__asset-dropdown__symbol">LUN</div>
<div class="swap-v2__asset-dropdown__symbol">LUNA</div>
<div class="swap-v2__asset-dropdown__symbol">LVN</div>
<div class="swap-v2__asset-dropdown__symbol">MAAPL</div>
<div class="swap-v2__asset-dropdown__symbol">MAHA</div>
<div class="swap-v2__asset-dropdown__symbol">MAMZN</div>
<div class="swap-v2__asset-dropdown__symbol">MANA</div>
<div class="swap-v2__asset-dropdown__symbol">MAS</div>
<div class="swap-v2__asset-dropdown__symbol">MATTER</div>
<div class="swap-v2__asset-dropdown__symbol">MBABA</div>
<div class="swap-v2__asset-dropdown__symbol">MDX</div>
<div class="swap-v2__asset-dropdown__symbol">MET</div>
<div class="swap-v2__asset-dropdown__symbol">METM</div>
<div class="swap-v2__asset-dropdown__symbol">MFT</div>
<div class="swap-v2__asset-dropdown__symbol">MGOOGL</div>
<div class="swap-v2__asset-dropdown__symbol">MIAU</div>
<div class="swap-v2__asset-dropdown__symbol">MINDS</div>
<div class="swap-v2__asset-dropdown__symbol">MIR</div>
<div class="swap-v2__asset-dropdown__symbol">MITH</div>
<div class="swap-v2__asset-dropdown__symbol">MKR</div>
<div class="swap-v2__asset-dropdown__symbol">MLN</div>
<div class="swap-v2__asset-dropdown__symbol">MMSFT</div>
<div class="swap-v2__asset-dropdown__symbol">MNFLX</div>
<div class="swap-v2__asset-dropdown__symbol">MOD</div>
<div class="swap-v2__asset-dropdown__symbol">MQQQ</div>
<div class="swap-v2__asset-dropdown__symbol">MSLV</div>
<div class="swap-v2__asset-dropdown__symbol">MTA</div>
<div class="swap-v2__asset-dropdown__symbol">MTL</div>
<div class="swap-v2__asset-dropdown__symbol">MTLX</div>
<div class="swap-v2__asset-dropdown__symbol">MTSLA</div>
<div class="swap-v2__asset-dropdown__symbol">MTWTR</div>
<div class="swap-v2__asset-dropdown__symbol">MUSD</div>
<div class="swap-v2__asset-dropdown__symbol">MUSO</div>
<div class="swap-v2__asset-dropdown__symbol">MVIXY</div>
<div class="swap-v2__asset-dropdown__symbol">MYB</div>
<div class="swap-v2__asset-dropdown__symbol">NANJ</div>
<div class="swap-v2__asset-dropdown__symbol">NBU</div>
<div class="swap-v2__asset-dropdown__symbol">NCT</div>
<div class="swap-v2__asset-dropdown__symbol">NDX</div>
<div class="swap-v2__asset-dropdown__symbol">NEU</div>
<div class="swap-v2__asset-dropdown__symbol">NEXO</div>
<div class="swap-v2__asset-dropdown__symbol">NMR</div>
<div class="swap-v2__asset-dropdown__symbol">OCTO</div>
<div class="swap-v2__asset-dropdown__symbol">OGN</div>
<div class="swap-v2__asset-dropdown__symbol">OGO</div>
<div class="swap-v2__asset-dropdown__symbol">OMG</div>
<div class="swap-v2__asset-dropdown__symbol">ONE</div>
<div class="swap-v2__asset-dropdown__symbol">ORBS</div>
<div class="swap-v2__asset-dropdown__symbol">OST</div>
<div class="swap-v2__asset-dropdown__symbol">OUSD</div>
<div class="swap-v2__asset-dropdown__symbol">OVR</div>
<div class="swap-v2__asset-dropdown__symbol">OXT</div>
<div class="swap-v2__asset-dropdown__symbol">PARETO</div>
<div class="swap-v2__asset-dropdown__symbol">PAX</div>
<div class="swap-v2__asset-dropdown__symbol">PAXG</div>
<div class="swap-v2__asset-dropdown__symbol">PERL</div>
<div class="swap-v2__asset-dropdown__symbol">PERP</div>
<div class="swap-v2__asset-dropdown__symbol">PKT</div>
<div class="swap-v2__asset-dropdown__symbol">PLA</div>
<div class="swap-v2__asset-dropdown__symbol">PLAY</div>
<div class="swap-v2__asset-dropdown__symbol">PLOT</div>
<div class="swap-v2__asset-dropdown__symbol">PLR</div>
<div class="swap-v2__asset-dropdown__symbol">PLU</div>
<div class="swap-v2__asset-dropdown__symbol">PNK</div>
<div class="swap-v2__asset-dropdown__symbol">POLY</div>
<div class="swap-v2__asset-dropdown__symbol">POOLZ</div>
<div class="swap-v2__asset-dropdown__symbol">POP</div>
<div class="swap-v2__asset-dropdown__symbol">POWR</div>
<div class="swap-v2__asset-dropdown__symbol">PPT</div>
<div class="swap-v2__asset-dropdown__symbol">PROPS</div>
<div class="swap-v2__asset-dropdown__symbol">QNT</div>
<div class="swap-v2__asset-dropdown__symbol">QRX</div>
<div class="swap-v2__asset-dropdown__symbol">QSP</div>
<div class="swap-v2__asset-dropdown__symbol">RAE</div>
<div class="swap-v2__asset-dropdown__symbol">RAI</div>
<div class="swap-v2__asset-dropdown__symbol">RARI</div>
<div class="swap-v2__asset-dropdown__symbol">RBC</div>
<div class="swap-v2__asset-dropdown__symbol">RDN</div>
<div class="swap-v2__asset-dropdown__symbol">REEF</div>
<div class="swap-v2__asset-dropdown__symbol">REN</div>
<div class="swap-v2__asset-dropdown__symbol">RENBCH</div>
<div class="swap-v2__asset-dropdown__symbol">RENBTC</div>
<div class="swap-v2__asset-dropdown__symbol">RENFIL</div>
<div class="swap-v2__asset-dropdown__symbol">RENZEC</div>
<div class="swap-v2__asset-dropdown__symbol">REP</div>
<div class="swap-v2__asset-dropdown__symbol">REQ</div>
<div class="swap-v2__asset-dropdown__symbol">REVV</div>
<div class="swap-v2__asset-dropdown__symbol">RFI</div>
<div class="swap-v2__asset-dropdown__symbol">RFR</div>
<div class="swap-v2__asset-dropdown__symbol">RFUEL</div>
<div class="swap-v2__asset-dropdown__symbol">RING</div>
<div class="swap-v2__asset-dropdown__symbol">RLC</div>
<div class="swap-v2__asset-dropdown__symbol">RNDR</div>
<div class="swap-v2__asset-dropdown__symbol">ROOBEE</div>
<div class="swap-v2__asset-dropdown__symbol">ROOK</div>
<div class="swap-v2__asset-dropdown__symbol">ROUTE</div>
<div class="swap-v2__asset-dropdown__symbol">RVT</div>
<div class="swap-v2__asset-dropdown__symbol">SAI</div>
<div class="swap-v2__asset-dropdown__symbol">SAN</div>
<div class="swap-v2__asset-dropdown__symbol">SATT</div>
<div class="swap-v2__asset-dropdown__symbol">SBTC</div>
<div class="swap-v2__asset-dropdown__symbol">SETH</div>
<div class="swap-v2__asset-dropdown__symbol">SIG</div>
<div class="swap-v2__asset-dropdown__symbol">SKL</div>
<div class="swap-v2__asset-dropdown__symbol">SKM</div>
<div class="swap-v2__asset-dropdown__symbol">SNGLS</div>
<div class="swap-v2__asset-dropdown__symbol">SNT</div>
<div class="swap-v2__asset-dropdown__symbol">SNTVT</div>
<div class="swap-v2__asset-dropdown__symbol">SNX</div>
<div class="swap-v2__asset-dropdown__symbol">SOUL</div>
<div class="swap-v2__asset-dropdown__symbol">SPANK</div>
<div class="swap-v2__asset-dropdown__symbol">SPN</div>
<div class="swap-v2__asset-dropdown__symbol">SPND</div>
<div class="swap-v2__asset-dropdown__symbol">STAKE</div>
<div class="swap-v2__asset-dropdown__symbol">STAR</div>
<div class="swap-v2__asset-dropdown__symbol">STETH</div>
<div class="swap-v2__asset-dropdown__symbol">STMX</div>
<div class="swap-v2__asset-dropdown__symbol">STORJ</div>
<div class="swap-v2__asset-dropdown__symbol">SUSD</div>
<div class="swap-v2__asset-dropdown__symbol">SWM</div>
<div class="swap-v2__asset-dropdown__symbol">SWT</div>
<div class="swap-v2__asset-dropdown__symbol">SYAX</div>
<div class="swap-v2__asset-dropdown__symbol">SYFL</div>
<div class="swap-v2__asset-dropdown__symbol">SYLO</div>
<div class="swap-v2__asset-dropdown__symbol">TBTC</div>
<div class="swap-v2__asset-dropdown__symbol">TKN</div>
<div class="swap-v2__asset-dropdown__symbol">TLN</div>
<div class="swap-v2__asset-dropdown__symbol">TOP</div>
<div class="swap-v2__asset-dropdown__symbol">TRST</div>
<div class="swap-v2__asset-dropdown__symbol">TUSD</div>
<div class="swap-v2__asset-dropdown__symbol">UBI</div>
<div class="swap-v2__asset-dropdown__symbol">UMA</div>
<div class="swap-v2__asset-dropdown__symbol">UPX</div>
<div class="swap-v2__asset-dropdown__symbol">USDN</div>
<div class="swap-v2__asset-dropdown__symbol">USDS</div>
<div class="swap-v2__asset-dropdown__symbol">USDX</div>
<div class="swap-v2__asset-dropdown__symbol">UST</div>
<div class="swap-v2__asset-dropdown__symbol">VAL</div>
<div class="swap-v2__asset-dropdown__symbol">VIDT</div>
<div class="swap-v2__asset-dropdown__symbol">VSP</div>
<div class="swap-v2__asset-dropdown__symbol">WINGS</div>
<div class="swap-v2__asset-dropdown__symbol">WIS</div>
<div class="swap-v2__asset-dropdown__symbol">WISE</div>
<div class="swap-v2__asset-dropdown__symbol">WOO</div>
<div class="swap-v2__asset-dropdown__symbol">WTC</div>
<div class="swap-v2__asset-dropdown__symbol">XAUR</div>
<div class="swap-v2__asset-dropdown__symbol">XBP</div>
<div class="swap-v2__asset-dropdown__symbol">XGG</div>
<div class="swap-v2__asset-dropdown__symbol">XNK</div>
<div class="swap-v2__asset-dropdown__symbol">XOR</div>
<div class="swap-v2__asset-dropdown__symbol">YEED</div>
<div class="swap-v2__asset-dropdown__symbol">YFDOT</div>
<div class="swap-v2__asset-dropdown__symbol">YFI</div>
<div class="swap-v2__asset-dropdown__symbol">YFL</div>
<div class="swap-v2__asset-dropdown__symbol">YLD</div>
<div class="swap-v2__asset-dropdown__symbol">ZAP</div>
<div class="swap-v2__asset-dropdown__symbol">ZCRT</div>
<div class="swap-v2__asset-dropdown__symbol">ZEON</div>
<div class="swap-v2__asset-dropdown__symbol">ZORA</div>
<div class="swap-v2__asset-dropdown__symbol">ZRX</div>

Quote refresh

  • Verified quote auto-refreshes every 40secs
  • Verified if the input value is changed or the GWEI is changed, quote is auto-reset to 40 sec and refreshes value very 40 sec
Auto-Quote.Refresh.mov

ERC20 -> ERC20 Approval & Swap

Swap using Hardware Keys

  • Verified able to connect Ledger Nano to the CW successfully
  • Verified able to perform a swap using Ledger Nano (Txhash)

Set Allowance Warning

  • Verified set allowance tooltip is shown conditionally when an allowance is set in the past
    image

Verification passed on

Brave 1.27.87 Chromium: 91.0.4472.124 (Official Build) beta (64-bit)
Revision 7345a6d1bfcaff81162a957e9b7d52649fe2ac38-refs/branch-heads/4472_114@{#6}
OS Windows 10 OS Version 2009 (Build 19043.1052)
Component 1.0.32 Dev
Verified test plan from brave/ethereum-remote-client#244
  • Verified able to swap ETH to an ERC token successfully (Txhash)
    image

  • Verified able to swap an ERC20 Token to another ERC 20 Token (Approval Txhash)
    image

  • Verified swap transactions from ETH -> ERC20 or ERC20 -> ERC20 includes 0.875% Brave fees sent to 0xbd9420a98a7bd6b89765e5715e169481602d9c3d

ETH -> BAT DAI -> LINK
image image

Swap amount validation

  • Verified amount entered is validated against the available balance taking Gas fee into account
Balance + Fee Included Insufficient funds Insufficient gas fee Insufficient funds + Insufficient gas
image image image image

Gas computation

  • Verified live quotes & gas computations are shown and update as soon as the input value is changed
Live.Quote.Update.-.Win.mov

Max amount button

  • Verified max button is shown above input field
  • Verified selecting max button pre-populates the input field with available balance for the selected token
  • Verified manually entered value is replaced with all available balance when max button is clicked
  • Verified if manually entered value is more than available balance, clicking max button resets value to the available balance
Max.Button.and.Gas.Computation.-.Win.mov

Tokens as Swap pairs

Verified 311 tokens are added for swap pairs
<div class="swap-v2__asset-dropdown__symbol">ETH</div>
<div class="swap-v2__asset-dropdown__symbol">WETH</div>
<div class="swap-v2__asset-dropdown__symbol">USDT</div>
<div class="swap-v2__asset-dropdown__symbol">USDC</div>
<div class="swap-v2__asset-dropdown__symbol">UNI</div>
<div class="swap-v2__asset-dropdown__symbol">LINK</div>
<div class="swap-v2__asset-dropdown__symbol">BUSD</div>
<div class="swap-v2__asset-dropdown__symbol">MATIC</div>
<div class="swap-v2__asset-dropdown__symbol">WBTC</div>
<div class="swap-v2__asset-dropdown__symbol">DAI</div>
<div class="swap-v2__asset-dropdown__symbol">AAVE</div>
<div class="swap-v2__asset-dropdown__symbol">0XBTC</div>
<div class="swap-v2__asset-dropdown__symbol">1INCH</div>
<div class="swap-v2__asset-dropdown__symbol">2KEY</div>
<div class="swap-v2__asset-dropdown__symbol">ABAT</div>
<div class="swap-v2__asset-dropdown__symbol">ABUSD</div>
<div class="swap-v2__asset-dropdown__symbol">ADAI</div>
<div class="swap-v2__asset-dropdown__symbol">ADX</div>
<div class="swap-v2__asset-dropdown__symbol">AE</div>
<div class="swap-v2__asset-dropdown__symbol">AENJ</div>
<div class="swap-v2__asset-dropdown__symbol">AERGO</div>
<div class="swap-v2__asset-dropdown__symbol">AKNC</div>
<div class="swap-v2__asset-dropdown__symbol">ALEPH</div>
<div class="swap-v2__asset-dropdown__symbol">ALINK</div>
<div class="swap-v2__asset-dropdown__symbol">AMANA</div>
<div class="swap-v2__asset-dropdown__symbol">AMKR</div>
<div class="swap-v2__asset-dropdown__symbol">AMLT</div>
<div class="swap-v2__asset-dropdown__symbol">AMPL</div>
<div class="swap-v2__asset-dropdown__symbol">ANT</div>
<div class="swap-v2__asset-dropdown__symbol">APPC</div>
<div class="swap-v2__asset-dropdown__symbol">AREN</div>
<div class="swap-v2__asset-dropdown__symbol">ART</div>
<div class="swap-v2__asset-dropdown__symbol">ASNX</div>
<div class="swap-v2__asset-dropdown__symbol">AST</div>
<div class="swap-v2__asset-dropdown__symbol">ASUSD</div>
<div class="swap-v2__asset-dropdown__symbol">ATRI</div>
<div class="swap-v2__asset-dropdown__symbol">ATUSD</div>
<div class="swap-v2__asset-dropdown__symbol">AUC</div>
<div class="swap-v2__asset-dropdown__symbol">AUSDC</div>
<div class="swap-v2__asset-dropdown__symbol">AUSDT</div>
<div class="swap-v2__asset-dropdown__symbol">AVAL</div>
<div class="swap-v2__asset-dropdown__symbol">AWBTC</div>
<div class="swap-v2__asset-dropdown__symbol">AXN</div>
<div class="swap-v2__asset-dropdown__symbol">AZRX</div>
<div class="swap-v2__asset-dropdown__symbol">BADGER</div>
<div class="swap-v2__asset-dropdown__symbol">BAL</div>
<div class="swap-v2__asset-dropdown__symbol">BASIC</div>
<div class="swap-v2__asset-dropdown__symbol">BAT</div>
<div class="swap-v2__asset-dropdown__symbol">BC</div>
<div class="swap-v2__asset-dropdown__symbol">BCPT</div>
<div class="swap-v2__asset-dropdown__symbol">BETHER</div>
<div class="swap-v2__asset-dropdown__symbol">BLZ</div>
<div class="swap-v2__asset-dropdown__symbol">BMX</div>
<div class="swap-v2__asset-dropdown__symbol">BNT</div>
<div class="swap-v2__asset-dropdown__symbol">BOA</div>
<div class="swap-v2__asset-dropdown__symbol">BOB</div>
<div class="swap-v2__asset-dropdown__symbol">BOX</div>
<div class="swap-v2__asset-dropdown__symbol">BTU</div>
<div class="swap-v2__asset-dropdown__symbol">C20</div>
<div class="swap-v2__asset-dropdown__symbol">CAG</div>
<div class="swap-v2__asset-dropdown__symbol">CAMP</div>
<div class="swap-v2__asset-dropdown__symbol">CAT</div>
<div class="swap-v2__asset-dropdown__symbol">CBAT</div>
<div class="swap-v2__asset-dropdown__symbol">CDAI</div>
<div class="swap-v2__asset-dropdown__symbol">CEL</div>
<div class="swap-v2__asset-dropdown__symbol">CELR</div>
<div class="swap-v2__asset-dropdown__symbol">CETH</div>
<div class="swap-v2__asset-dropdown__symbol">CHAI</div>
<div class="swap-v2__asset-dropdown__symbol">CHSB</div>
<div class="swap-v2__asset-dropdown__symbol">COMP</div>
<div class="swap-v2__asset-dropdown__symbol">CRBN</div>
<div class="swap-v2__asset-dropdown__symbol">CREP</div>
<div class="swap-v2__asset-dropdown__symbol">CRO</div>
<div class="swap-v2__asset-dropdown__symbol">CRU</div>
<div class="swap-v2__asset-dropdown__symbol">CSAI</div>
<div class="swap-v2__asset-dropdown__symbol">CUSDC</div>
<div class="swap-v2__asset-dropdown__symbol">CUSDT</div>
<div class="swap-v2__asset-dropdown__symbol">CVP</div>
<div class="swap-v2__asset-dropdown__symbol">CWBTC</div>
<div class="swap-v2__asset-dropdown__symbol">CZRX</div>
<div class="swap-v2__asset-dropdown__symbol">DATA</div>
<div class="swap-v2__asset-dropdown__symbol">DAY</div>
<div class="swap-v2__asset-dropdown__symbol">DCN</div>
<div class="swap-v2__asset-dropdown__symbol">DDIM</div>
<div class="swap-v2__asset-dropdown__symbol">DDX</div>
<div class="swap-v2__asset-dropdown__symbol">DF</div>
<div class="swap-v2__asset-dropdown__symbol">DG</div>
<div class="swap-v2__asset-dropdown__symbol">DGD</div>
<div class="swap-v2__asset-dropdown__symbol">DIA</div>
<div class="swap-v2__asset-dropdown__symbol">DKA</div>
<div class="swap-v2__asset-dropdown__symbol">DMST</div>
<div class="swap-v2__asset-dropdown__symbol">DNT</div>
<div class="swap-v2__asset-dropdown__symbol">DODO</div>
<div class="swap-v2__asset-dropdown__symbol">DRC</div>
<div class="swap-v2__asset-dropdown__symbol">DREAM</div>
<div class="swap-v2__asset-dropdown__symbol">DRT</div>
<div class="swap-v2__asset-dropdown__symbol">DTH</div>
<div class="swap-v2__asset-dropdown__symbol">DUCK</div>
<div class="swap-v2__asset-dropdown__symbol">EDG</div>
<div class="swap-v2__asset-dropdown__symbol">EL</div>
<div class="swap-v2__asset-dropdown__symbol">ELF</div>
<div class="swap-v2__asset-dropdown__symbol">ELTCOIN</div>
<div class="swap-v2__asset-dropdown__symbol">ELY</div>
<div class="swap-v2__asset-dropdown__symbol">ENG</div>
<div class="swap-v2__asset-dropdown__symbol">ENJ</div>
<div class="swap-v2__asset-dropdown__symbol">ENTRP</div>
<div class="swap-v2__asset-dropdown__symbol">ETHBNT</div>
<div class="swap-v2__asset-dropdown__symbol">EURS</div>
<div class="swap-v2__asset-dropdown__symbol">FET</div>
<div class="swap-v2__asset-dropdown__symbol">FKX</div>
<div class="swap-v2__asset-dropdown__symbol">FLX</div>
<div class="swap-v2__asset-dropdown__symbol">FNT</div>
<div class="swap-v2__asset-dropdown__symbol">FOAM</div>
<div class="swap-v2__asset-dropdown__symbol">FRM</div>
<div class="swap-v2__asset-dropdown__symbol">FTM</div>
<div class="swap-v2__asset-dropdown__symbol">FUN</div>
<div class="swap-v2__asset-dropdown__symbol">FWB</div>
<div class="swap-v2__asset-dropdown__symbol">GAME</div>
<div class="swap-v2__asset-dropdown__symbol">GEN</div>
<div class="swap-v2__asset-dropdown__symbol">GET</div>
<div class="swap-v2__asset-dropdown__symbol">GLM</div>
<div class="swap-v2__asset-dropdown__symbol">GLQ</div>
<div class="swap-v2__asset-dropdown__symbol">GNO</div>
<div class="swap-v2__asset-dropdown__symbol">GOLD</div>
<div class="swap-v2__asset-dropdown__symbol">GRID</div>
<div class="swap-v2__asset-dropdown__symbol">GRT</div>
<div class="swap-v2__asset-dropdown__symbol">GUP</div>
<div class="swap-v2__asset-dropdown__symbol">GUSD</div>
<div class="swap-v2__asset-dropdown__symbol">HEX</div>
<div class="swap-v2__asset-dropdown__symbol">HGT</div>
<div class="swap-v2__asset-dropdown__symbol">HOT</div>
<div class="swap-v2__asset-dropdown__symbol">HUNT</div>
<div class="swap-v2__asset-dropdown__symbol">HUSD</div>
<div class="swap-v2__asset-dropdown__symbol">IDRT</div>
<div class="swap-v2__asset-dropdown__symbol">IMP</div>
<div class="swap-v2__asset-dropdown__symbol">IND</div>
<div class="swap-v2__asset-dropdown__symbol">IQN</div>
<div class="swap-v2__asset-dropdown__symbol">JET</div>
<div class="swap-v2__asset-dropdown__symbol">JOY</div>
<div class="swap-v2__asset-dropdown__symbol">KEEP</div>
<div class="swap-v2__asset-dropdown__symbol">KEY</div>
<div class="swap-v2__asset-dropdown__symbol">KNCL</div>
<div class="swap-v2__asset-dropdown__symbol">KTON</div>
<div class="swap-v2__asset-dropdown__symbol">LDO</div>
<div class="swap-v2__asset-dropdown__symbol">LEND</div>
<div class="swap-v2__asset-dropdown__symbol">LGO</div>
<div class="swap-v2__asset-dropdown__symbol">LMY</div>
<div class="swap-v2__asset-dropdown__symbol">LOOMOLD</div>
<div class="swap-v2__asset-dropdown__symbol">LPT</div>
<div class="swap-v2__asset-dropdown__symbol">LRC</div>
<div class="swap-v2__asset-dropdown__symbol">LTO</div>
<div class="swap-v2__asset-dropdown__symbol">LUN</div>
<div class="swap-v2__asset-dropdown__symbol">LUNA</div>
<div class="swap-v2__asset-dropdown__symbol">LVN</div>
<div class="swap-v2__asset-dropdown__symbol">MAAPL</div>
<div class="swap-v2__asset-dropdown__symbol">MAHA</div>
<div class="swap-v2__asset-dropdown__symbol">MAMZN</div>
<div class="swap-v2__asset-dropdown__symbol">MANA</div>
<div class="swap-v2__asset-dropdown__symbol">MAS</div>
<div class="swap-v2__asset-dropdown__symbol">MATTER</div>
<div class="swap-v2__asset-dropdown__symbol">MBABA</div>
<div class="swap-v2__asset-dropdown__symbol">MDX</div>
<div class="swap-v2__asset-dropdown__symbol">MET</div>
<div class="swap-v2__asset-dropdown__symbol">METM</div>
<div class="swap-v2__asset-dropdown__symbol">MFT</div>
<div class="swap-v2__asset-dropdown__symbol">MGOOGL</div>
<div class="swap-v2__asset-dropdown__symbol">MIAU</div>
<div class="swap-v2__asset-dropdown__symbol">MINDS</div>
<div class="swap-v2__asset-dropdown__symbol">MIR</div>
<div class="swap-v2__asset-dropdown__symbol">MITH</div>
<div class="swap-v2__asset-dropdown__symbol">MKR</div>
<div class="swap-v2__asset-dropdown__symbol">MLN</div>
<div class="swap-v2__asset-dropdown__symbol">MMSFT</div>
<div class="swap-v2__asset-dropdown__symbol">MNFLX</div>
<div class="swap-v2__asset-dropdown__symbol">MOD</div>
<div class="swap-v2__asset-dropdown__symbol">MQQQ</div>
<div class="swap-v2__asset-dropdown__symbol">MSLV</div>
<div class="swap-v2__asset-dropdown__symbol">MTA</div>
<div class="swap-v2__asset-dropdown__symbol">MTL</div>
<div class="swap-v2__asset-dropdown__symbol">MTLX</div>
<div class="swap-v2__asset-dropdown__symbol">MTSLA</div>
<div class="swap-v2__asset-dropdown__symbol">MTWTR</div>
<div class="swap-v2__asset-dropdown__symbol">MUSD</div>
<div class="swap-v2__asset-dropdown__symbol">MUSO</div>
<div class="swap-v2__asset-dropdown__symbol">MVIXY</div>
<div class="swap-v2__asset-dropdown__symbol">MYB</div>
<div class="swap-v2__asset-dropdown__symbol">NANJ</div>
<div class="swap-v2__asset-dropdown__symbol">NBU</div>
<div class="swap-v2__asset-dropdown__symbol">NCT</div>
<div class="swap-v2__asset-dropdown__symbol">NDX</div>
<div class="swap-v2__asset-dropdown__symbol">NEU</div>
<div class="swap-v2__asset-dropdown__symbol">NEXO</div>
<div class="swap-v2__asset-dropdown__symbol">NMR</div>
<div class="swap-v2__asset-dropdown__symbol">OCTO</div>
<div class="swap-v2__asset-dropdown__symbol">OGN</div>
<div class="swap-v2__asset-dropdown__symbol">OGO</div>
<div class="swap-v2__asset-dropdown__symbol">OMG</div>
<div class="swap-v2__asset-dropdown__symbol">ONE</div>
<div class="swap-v2__asset-dropdown__symbol">ORBS</div>
<div class="swap-v2__asset-dropdown__symbol">OST</div>
<div class="swap-v2__asset-dropdown__symbol">OUSD</div>
<div class="swap-v2__asset-dropdown__symbol">OVR</div>
<div class="swap-v2__asset-dropdown__symbol">OXT</div>
<div class="swap-v2__asset-dropdown__symbol">PARETO</div>
<div class="swap-v2__asset-dropdown__symbol">PAX</div>
<div class="swap-v2__asset-dropdown__symbol">PAXG</div>
<div class="swap-v2__asset-dropdown__symbol">PERL</div>
<div class="swap-v2__asset-dropdown__symbol">PERP</div>
<div class="swap-v2__asset-dropdown__symbol">PKT</div>
<div class="swap-v2__asset-dropdown__symbol">PLA</div>
<div class="swap-v2__asset-dropdown__symbol">PLAY</div>
<div class="swap-v2__asset-dropdown__symbol">PLOT</div>
<div class="swap-v2__asset-dropdown__symbol">PLR</div>
<div class="swap-v2__asset-dropdown__symbol">PLU</div>
<div class="swap-v2__asset-dropdown__symbol">PNK</div>
<div class="swap-v2__asset-dropdown__symbol">POLY</div>
<div class="swap-v2__asset-dropdown__symbol">POOLZ</div>
<div class="swap-v2__asset-dropdown__symbol">POP</div>
<div class="swap-v2__asset-dropdown__symbol">POWR</div>
<div class="swap-v2__asset-dropdown__symbol">PPT</div>
<div class="swap-v2__asset-dropdown__symbol">PROPS</div>
<div class="swap-v2__asset-dropdown__symbol">QNT</div>
<div class="swap-v2__asset-dropdown__symbol">QRX</div>
<div class="swap-v2__asset-dropdown__symbol">QSP</div>
<div class="swap-v2__asset-dropdown__symbol">RAE</div>
<div class="swap-v2__asset-dropdown__symbol">RAI</div>
<div class="swap-v2__asset-dropdown__symbol">RARI</div>
<div class="swap-v2__asset-dropdown__symbol">RBC</div>
<div class="swap-v2__asset-dropdown__symbol">RDN</div>
<div class="swap-v2__asset-dropdown__symbol">REEF</div>
<div class="swap-v2__asset-dropdown__symbol">REN</div>
<div class="swap-v2__asset-dropdown__symbol">RENBCH</div>
<div class="swap-v2__asset-dropdown__symbol">RENBTC</div>
<div class="swap-v2__asset-dropdown__symbol">RENFIL</div>
<div class="swap-v2__asset-dropdown__symbol">RENZEC</div>
<div class="swap-v2__asset-dropdown__symbol">REP</div>
<div class="swap-v2__asset-dropdown__symbol">REQ</div>
<div class="swap-v2__asset-dropdown__symbol">REVV</div>
<div class="swap-v2__asset-dropdown__symbol">RFI</div>
<div class="swap-v2__asset-dropdown__symbol">RFR</div>
<div class="swap-v2__asset-dropdown__symbol">RFUEL</div>
<div class="swap-v2__asset-dropdown__symbol">RING</div>
<div class="swap-v2__asset-dropdown__symbol">RLC</div>
<div class="swap-v2__asset-dropdown__symbol">RNDR</div>
<div class="swap-v2__asset-dropdown__symbol">ROOBEE</div>
<div class="swap-v2__asset-dropdown__symbol">ROOK</div>
<div class="swap-v2__asset-dropdown__symbol">ROUTE</div>
<div class="swap-v2__asset-dropdown__symbol">RVT</div>
<div class="swap-v2__asset-dropdown__symbol">SAI</div>
<div class="swap-v2__asset-dropdown__symbol">SAN</div>
<div class="swap-v2__asset-dropdown__symbol">SATT</div>
<div class="swap-v2__asset-dropdown__symbol">SBTC</div>
<div class="swap-v2__asset-dropdown__symbol">SETH</div>
<div class="swap-v2__asset-dropdown__symbol">SIG</div>
<div class="swap-v2__asset-dropdown__symbol">SKL</div>
<div class="swap-v2__asset-dropdown__symbol">SKM</div>
<div class="swap-v2__asset-dropdown__symbol">SNGLS</div>
<div class="swap-v2__asset-dropdown__symbol">SNT</div>
<div class="swap-v2__asset-dropdown__symbol">SNTVT</div>
<div class="swap-v2__asset-dropdown__symbol">SNX</div>
<div class="swap-v2__asset-dropdown__symbol">SOUL</div>
<div class="swap-v2__asset-dropdown__symbol">SPANK</div>
<div class="swap-v2__asset-dropdown__symbol">SPN</div>
<div class="swap-v2__asset-dropdown__symbol">SPND</div>
<div class="swap-v2__asset-dropdown__symbol">STAKE</div>
<div class="swap-v2__asset-dropdown__symbol">STAR</div>
<div class="swap-v2__asset-dropdown__symbol">STETH</div>
<div class="swap-v2__asset-dropdown__symbol">STMX</div>
<div class="swap-v2__asset-dropdown__symbol">STORJ</div>
<div class="swap-v2__asset-dropdown__symbol">SUSD</div>
<div class="swap-v2__asset-dropdown__symbol">SWM</div>
<div class="swap-v2__asset-dropdown__symbol">SWT</div>
<div class="swap-v2__asset-dropdown__symbol">SYAX</div>
<div class="swap-v2__asset-dropdown__symbol">SYFL</div>
<div class="swap-v2__asset-dropdown__symbol">SYLO</div>
<div class="swap-v2__asset-dropdown__symbol">TBTC</div>
<div class="swap-v2__asset-dropdown__symbol">TKN</div>
<div class="swap-v2__asset-dropdown__symbol">TLN</div>
<div class="swap-v2__asset-dropdown__symbol">TOP</div>
<div class="swap-v2__asset-dropdown__symbol">TRST</div>
<div class="swap-v2__asset-dropdown__symbol">TUSD</div>
<div class="swap-v2__asset-dropdown__symbol">UBI</div>
<div class="swap-v2__asset-dropdown__symbol">UMA</div>
<div class="swap-v2__asset-dropdown__symbol">UPX</div>
<div class="swap-v2__asset-dropdown__symbol">USDN</div>
<div class="swap-v2__asset-dropdown__symbol">USDS</div>
<div class="swap-v2__asset-dropdown__symbol">USDX</div>
<div class="swap-v2__asset-dropdown__symbol">UST</div>
<div class="swap-v2__asset-dropdown__symbol">VAL</div>
<div class="swap-v2__asset-dropdown__symbol">VIDT</div>
<div class="swap-v2__asset-dropdown__symbol">VSP</div>
<div class="swap-v2__asset-dropdown__symbol">WINGS</div>
<div class="swap-v2__asset-dropdown__symbol">WIS</div>
<div class="swap-v2__asset-dropdown__symbol">WISE</div>
<div class="swap-v2__asset-dropdown__symbol">WOO</div>
<div class="swap-v2__asset-dropdown__symbol">WTC</div>
<div class="swap-v2__asset-dropdown__symbol">XAUR</div>
<div class="swap-v2__asset-dropdown__symbol">XBP</div>
<div class="swap-v2__asset-dropdown__symbol">XGG</div>
<div class="swap-v2__asset-dropdown__symbol">XNK</div>
<div class="swap-v2__asset-dropdown__symbol">XOR</div>
<div class="swap-v2__asset-dropdown__symbol">YEED</div>
<div class="swap-v2__asset-dropdown__symbol">YFDOT</div>
<div class="swap-v2__asset-dropdown__symbol">YFI</div>
<div class="swap-v2__asset-dropdown__symbol">YFL</div>
<div class="swap-v2__asset-dropdown__symbol">YLD</div>
<div class="swap-v2__asset-dropdown__symbol">ZAP</div>
<div class="swap-v2__asset-dropdown__symbol">ZCRT</div>
<div class="swap-v2__asset-dropdown__symbol">ZEON</div>
<div class="swap-v2__asset-dropdown__symbol">ZORA</div>
<div class="swap-v2__asset-dropdown__symbol">ZRX</div>

Quote refresh

  • Verified quote auto-refreshes every 40secs
  • Verified if the input value is changed or the GWEI is changed, quote is auto-reset to 40 sec and refreshes value very 40 sec
Auto-Quote.Refresh.-.Win.mov

ERC20 -> ERC20 Approval & Swap

Swap using Hardware Keys

  • Verified able to connect Ledger Nano to the CW successfully
  • Verified able to perform a swap using Ledger Nano (Txhash)

Set Allowance Warning

  • Verified set allowance tooltip is shown conditionally when an allowance is set in the past
    image

Verification passed on

Brave 1.28.37 Chromium: 91.0.4472.124 (Official Build) nightly (64-bit)
Revision 7345a6d1bfcaff81162a957e9b7d52649fe2ac38-refs/branch-heads/4472_114@{#6}
OS Linux
Component 1.0.32 Dev
Verified test plan from brave/ethereum-remote-client#244
  • Verified able to swap ETH to an ERC token successfully (Txhash)
    image

  • Verified able to swap an ERC20 Token to another ERC 20 Token (Approval Txhash)

  • Verified swap transactions from ETH -> ERC20 or ERC20 -> ERC20 includes 0.875% Brave fees sent to 0xbd9420a98a7bd6b89765e5715e169481602d9c3d

ETH -> LINK LINK - BAT
image image

Swap amount validation

  • Verified amount entered is validated against the available balance taking Gas fee into account
Balance + Fee Included Insufficient funds Insufficient gas fee Insufficient funds + Insufficient gas
image image image image

Gas computation

  • Verified live quotes & gas computations are shown and update as soon as the input value is changed
Live.Quote.Update.-Linux.mp4

Max amount button

  • Verified max button is shown above input field
  • Verified selecting max button pre-populates the input field with available balance for the selected token
  • Verified manually entered value is replaced with all available balance when max button is clicked
  • Verified if manually entered value is more than available balance, clicking max button resets value to the available balance
Max.button.and.Gas.Computation.-.Linux.mp4

Tokens as Swap pairs

Verified 311 tokens are added for swap pairs
<div class="swap-v2__asset-dropdown__symbol">ETH</div>
<div class="swap-v2__asset-dropdown__symbol">WETH</div>
<div class="swap-v2__asset-dropdown__symbol">USDT</div>
<div class="swap-v2__asset-dropdown__symbol">USDC</div>
<div class="swap-v2__asset-dropdown__symbol">UNI</div>
<div class="swap-v2__asset-dropdown__symbol">LINK</div>
<div class="swap-v2__asset-dropdown__symbol">BUSD</div>
<div class="swap-v2__asset-dropdown__symbol">MATIC</div>
<div class="swap-v2__asset-dropdown__symbol">WBTC</div>
<div class="swap-v2__asset-dropdown__symbol">DAI</div>
<div class="swap-v2__asset-dropdown__symbol">AAVE</div>
<div class="swap-v2__asset-dropdown__symbol">0XBTC</div>
<div class="swap-v2__asset-dropdown__symbol">1INCH</div>
<div class="swap-v2__asset-dropdown__symbol">2KEY</div>
<div class="swap-v2__asset-dropdown__symbol">ABAT</div>
<div class="swap-v2__asset-dropdown__symbol">ABUSD</div>
<div class="swap-v2__asset-dropdown__symbol">ADAI</div>
<div class="swap-v2__asset-dropdown__symbol">ADX</div>
<div class="swap-v2__asset-dropdown__symbol">AE</div>
<div class="swap-v2__asset-dropdown__symbol">AENJ</div>
<div class="swap-v2__asset-dropdown__symbol">AERGO</div>
<div class="swap-v2__asset-dropdown__symbol">AKNC</div>
<div class="swap-v2__asset-dropdown__symbol">ALEPH</div>
<div class="swap-v2__asset-dropdown__symbol">ALINK</div>
<div class="swap-v2__asset-dropdown__symbol">AMANA</div>
<div class="swap-v2__asset-dropdown__symbol">AMKR</div>
<div class="swap-v2__asset-dropdown__symbol">AMLT</div>
<div class="swap-v2__asset-dropdown__symbol">AMPL</div>
<div class="swap-v2__asset-dropdown__symbol">ANT</div>
<div class="swap-v2__asset-dropdown__symbol">APPC</div>
<div class="swap-v2__asset-dropdown__symbol">AREN</div>
<div class="swap-v2__asset-dropdown__symbol">ART</div>
<div class="swap-v2__asset-dropdown__symbol">ASNX</div>
<div class="swap-v2__asset-dropdown__symbol">AST</div>
<div class="swap-v2__asset-dropdown__symbol">ASUSD</div>
<div class="swap-v2__asset-dropdown__symbol">ATRI</div>
<div class="swap-v2__asset-dropdown__symbol">ATUSD</div>
<div class="swap-v2__asset-dropdown__symbol">AUC</div>
<div class="swap-v2__asset-dropdown__symbol">AUSDC</div>
<div class="swap-v2__asset-dropdown__symbol">AUSDT</div>
<div class="swap-v2__asset-dropdown__symbol">AVAL</div>
<div class="swap-v2__asset-dropdown__symbol">AWBTC</div>
<div class="swap-v2__asset-dropdown__symbol">AXN</div>
<div class="swap-v2__asset-dropdown__symbol">AZRX</div>
<div class="swap-v2__asset-dropdown__symbol">BADGER</div>
<div class="swap-v2__asset-dropdown__symbol">BAL</div>
<div class="swap-v2__asset-dropdown__symbol">BASIC</div>
<div class="swap-v2__asset-dropdown__symbol">BAT</div>
<div class="swap-v2__asset-dropdown__symbol">BC</div>
<div class="swap-v2__asset-dropdown__symbol">BCPT</div>
<div class="swap-v2__asset-dropdown__symbol">BETHER</div>
<div class="swap-v2__asset-dropdown__symbol">BLZ</div>
<div class="swap-v2__asset-dropdown__symbol">BMX</div>
<div class="swap-v2__asset-dropdown__symbol">BNT</div>
<div class="swap-v2__asset-dropdown__symbol">BOA</div>
<div class="swap-v2__asset-dropdown__symbol">BOB</div>
<div class="swap-v2__asset-dropdown__symbol">BOX</div>
<div class="swap-v2__asset-dropdown__symbol">BTU</div>
<div class="swap-v2__asset-dropdown__symbol">C20</div>
<div class="swap-v2__asset-dropdown__symbol">CAG</div>
<div class="swap-v2__asset-dropdown__symbol">CAMP</div>
<div class="swap-v2__asset-dropdown__symbol">CAT</div>
<div class="swap-v2__asset-dropdown__symbol">CBAT</div>
<div class="swap-v2__asset-dropdown__symbol">CDAI</div>
<div class="swap-v2__asset-dropdown__symbol">CEL</div>
<div class="swap-v2__asset-dropdown__symbol">CELR</div>
<div class="swap-v2__asset-dropdown__symbol">CETH</div>
<div class="swap-v2__asset-dropdown__symbol">CHAI</div>
<div class="swap-v2__asset-dropdown__symbol">CHSB</div>
<div class="swap-v2__asset-dropdown__symbol">COMP</div>
<div class="swap-v2__asset-dropdown__symbol">CRBN</div>
<div class="swap-v2__asset-dropdown__symbol">CREP</div>
<div class="swap-v2__asset-dropdown__symbol">CRO</div>
<div class="swap-v2__asset-dropdown__symbol">CRU</div>
<div class="swap-v2__asset-dropdown__symbol">CSAI</div>
<div class="swap-v2__asset-dropdown__symbol">CUSDC</div>
<div class="swap-v2__asset-dropdown__symbol">CUSDT</div>
<div class="swap-v2__asset-dropdown__symbol">CVP</div>
<div class="swap-v2__asset-dropdown__symbol">CWBTC</div>
<div class="swap-v2__asset-dropdown__symbol">CZRX</div>
<div class="swap-v2__asset-dropdown__symbol">DATA</div>
<div class="swap-v2__asset-dropdown__symbol">DAY</div>
<div class="swap-v2__asset-dropdown__symbol">DCN</div>
<div class="swap-v2__asset-dropdown__symbol">DDIM</div>
<div class="swap-v2__asset-dropdown__symbol">DDX</div>
<div class="swap-v2__asset-dropdown__symbol">DF</div>
<div class="swap-v2__asset-dropdown__symbol">DG</div>
<div class="swap-v2__asset-dropdown__symbol">DGD</div>
<div class="swap-v2__asset-dropdown__symbol">DIA</div>
<div class="swap-v2__asset-dropdown__symbol">DKA</div>
<div class="swap-v2__asset-dropdown__symbol">DMST</div>
<div class="swap-v2__asset-dropdown__symbol">DNT</div>
<div class="swap-v2__asset-dropdown__symbol">DODO</div>
<div class="swap-v2__asset-dropdown__symbol">DRC</div>
<div class="swap-v2__asset-dropdown__symbol">DREAM</div>
<div class="swap-v2__asset-dropdown__symbol">DRT</div>
<div class="swap-v2__asset-dropdown__symbol">DTH</div>
<div class="swap-v2__asset-dropdown__symbol">DUCK</div>
<div class="swap-v2__asset-dropdown__symbol">EDG</div>
<div class="swap-v2__asset-dropdown__symbol">EL</div>
<div class="swap-v2__asset-dropdown__symbol">ELF</div>
<div class="swap-v2__asset-dropdown__symbol">ELTCOIN</div>
<div class="swap-v2__asset-dropdown__symbol">ELY</div>
<div class="swap-v2__asset-dropdown__symbol">ENG</div>
<div class="swap-v2__asset-dropdown__symbol">ENJ</div>
<div class="swap-v2__asset-dropdown__symbol">ENTRP</div>
<div class="swap-v2__asset-dropdown__symbol">ETHBNT</div>
<div class="swap-v2__asset-dropdown__symbol">EURS</div>
<div class="swap-v2__asset-dropdown__symbol">FET</div>
<div class="swap-v2__asset-dropdown__symbol">FKX</div>
<div class="swap-v2__asset-dropdown__symbol">FLX</div>
<div class="swap-v2__asset-dropdown__symbol">FNT</div>
<div class="swap-v2__asset-dropdown__symbol">FOAM</div>
<div class="swap-v2__asset-dropdown__symbol">FRM</div>
<div class="swap-v2__asset-dropdown__symbol">FTM</div>
<div class="swap-v2__asset-dropdown__symbol">FUN</div>
<div class="swap-v2__asset-dropdown__symbol">FWB</div>
<div class="swap-v2__asset-dropdown__symbol">GAME</div>
<div class="swap-v2__asset-dropdown__symbol">GEN</div>
<div class="swap-v2__asset-dropdown__symbol">GET</div>
<div class="swap-v2__asset-dropdown__symbol">GLM</div>
<div class="swap-v2__asset-dropdown__symbol">GLQ</div>
<div class="swap-v2__asset-dropdown__symbol">GNO</div>
<div class="swap-v2__asset-dropdown__symbol">GOLD</div>
<div class="swap-v2__asset-dropdown__symbol">GRID</div>
<div class="swap-v2__asset-dropdown__symbol">GRT</div>
<div class="swap-v2__asset-dropdown__symbol">GUP</div>
<div class="swap-v2__asset-dropdown__symbol">GUSD</div>
<div class="swap-v2__asset-dropdown__symbol">HEX</div>
<div class="swap-v2__asset-dropdown__symbol">HGT</div>
<div class="swap-v2__asset-dropdown__symbol">HOT</div>
<div class="swap-v2__asset-dropdown__symbol">HUNT</div>
<div class="swap-v2__asset-dropdown__symbol">HUSD</div>
<div class="swap-v2__asset-dropdown__symbol">IDRT</div>
<div class="swap-v2__asset-dropdown__symbol">IMP</div>
<div class="swap-v2__asset-dropdown__symbol">IND</div>
<div class="swap-v2__asset-dropdown__symbol">IQN</div>
<div class="swap-v2__asset-dropdown__symbol">JET</div>
<div class="swap-v2__asset-dropdown__symbol">JOY</div>
<div class="swap-v2__asset-dropdown__symbol">KEEP</div>
<div class="swap-v2__asset-dropdown__symbol">KEY</div>
<div class="swap-v2__asset-dropdown__symbol">KNCL</div>
<div class="swap-v2__asset-dropdown__symbol">KTON</div>
<div class="swap-v2__asset-dropdown__symbol">LDO</div>
<div class="swap-v2__asset-dropdown__symbol">LEND</div>
<div class="swap-v2__asset-dropdown__symbol">LGO</div>
<div class="swap-v2__asset-dropdown__symbol">LMY</div>
<div class="swap-v2__asset-dropdown__symbol">LOOMOLD</div>
<div class="swap-v2__asset-dropdown__symbol">LPT</div>
<div class="swap-v2__asset-dropdown__symbol">LRC</div>
<div class="swap-v2__asset-dropdown__symbol">LTO</div>
<div class="swap-v2__asset-dropdown__symbol">LUN</div>
<div class="swap-v2__asset-dropdown__symbol">LUNA</div>
<div class="swap-v2__asset-dropdown__symbol">LVN</div>
<div class="swap-v2__asset-dropdown__symbol">MAAPL</div>
<div class="swap-v2__asset-dropdown__symbol">MAHA</div>
<div class="swap-v2__asset-dropdown__symbol">MAMZN</div>
<div class="swap-v2__asset-dropdown__symbol">MANA</div>
<div class="swap-v2__asset-dropdown__symbol">MAS</div>
<div class="swap-v2__asset-dropdown__symbol">MATTER</div>
<div class="swap-v2__asset-dropdown__symbol">MBABA</div>
<div class="swap-v2__asset-dropdown__symbol">MDX</div>
<div class="swap-v2__asset-dropdown__symbol">MET</div>
<div class="swap-v2__asset-dropdown__symbol">METM</div>
<div class="swap-v2__asset-dropdown__symbol">MFT</div>
<div class="swap-v2__asset-dropdown__symbol">MGOOGL</div>
<div class="swap-v2__asset-dropdown__symbol">MIAU</div>
<div class="swap-v2__asset-dropdown__symbol">MINDS</div>
<div class="swap-v2__asset-dropdown__symbol">MIR</div>
<div class="swap-v2__asset-dropdown__symbol">MITH</div>
<div class="swap-v2__asset-dropdown__symbol">MKR</div>
<div class="swap-v2__asset-dropdown__symbol">MLN</div>
<div class="swap-v2__asset-dropdown__symbol">MMSFT</div>
<div class="swap-v2__asset-dropdown__symbol">MNFLX</div>
<div class="swap-v2__asset-dropdown__symbol">MOD</div>
<div class="swap-v2__asset-dropdown__symbol">MQQQ</div>
<div class="swap-v2__asset-dropdown__symbol">MSLV</div>
<div class="swap-v2__asset-dropdown__symbol">MTA</div>
<div class="swap-v2__asset-dropdown__symbol">MTL</div>
<div class="swap-v2__asset-dropdown__symbol">MTLX</div>
<div class="swap-v2__asset-dropdown__symbol">MTSLA</div>
<div class="swap-v2__asset-dropdown__symbol">MTWTR</div>
<div class="swap-v2__asset-dropdown__symbol">MUSD</div>
<div class="swap-v2__asset-dropdown__symbol">MUSO</div>
<div class="swap-v2__asset-dropdown__symbol">MVIXY</div>
<div class="swap-v2__asset-dropdown__symbol">MYB</div>
<div class="swap-v2__asset-dropdown__symbol">NANJ</div>
<div class="swap-v2__asset-dropdown__symbol">NBU</div>
<div class="swap-v2__asset-dropdown__symbol">NCT</div>
<div class="swap-v2__asset-dropdown__symbol">NDX</div>
<div class="swap-v2__asset-dropdown__symbol">NEU</div>
<div class="swap-v2__asset-dropdown__symbol">NEXO</div>
<div class="swap-v2__asset-dropdown__symbol">NMR</div>
<div class="swap-v2__asset-dropdown__symbol">OCTO</div>
<div class="swap-v2__asset-dropdown__symbol">OGN</div>
<div class="swap-v2__asset-dropdown__symbol">OGO</div>
<div class="swap-v2__asset-dropdown__symbol">OMG</div>
<div class="swap-v2__asset-dropdown__symbol">ONE</div>
<div class="swap-v2__asset-dropdown__symbol">ORBS</div>
<div class="swap-v2__asset-dropdown__symbol">OST</div>
<div class="swap-v2__asset-dropdown__symbol">OUSD</div>
<div class="swap-v2__asset-dropdown__symbol">OVR</div>
<div class="swap-v2__asset-dropdown__symbol">OXT</div>
<div class="swap-v2__asset-dropdown__symbol">PARETO</div>
<div class="swap-v2__asset-dropdown__symbol">PAX</div>
<div class="swap-v2__asset-dropdown__symbol">PAXG</div>
<div class="swap-v2__asset-dropdown__symbol">PERL</div>
<div class="swap-v2__asset-dropdown__symbol">PERP</div>
<div class="swap-v2__asset-dropdown__symbol">PKT</div>
<div class="swap-v2__asset-dropdown__symbol">PLA</div>
<div class="swap-v2__asset-dropdown__symbol">PLAY</div>
<div class="swap-v2__asset-dropdown__symbol">PLOT</div>
<div class="swap-v2__asset-dropdown__symbol">PLR</div>
<div class="swap-v2__asset-dropdown__symbol">PLU</div>
<div class="swap-v2__asset-dropdown__symbol">PNK</div>
<div class="swap-v2__asset-dropdown__symbol">POLY</div>
<div class="swap-v2__asset-dropdown__symbol">POOLZ</div>
<div class="swap-v2__asset-dropdown__symbol">POP</div>
<div class="swap-v2__asset-dropdown__symbol">POWR</div>
<div class="swap-v2__asset-dropdown__symbol">PPT</div>
<div class="swap-v2__asset-dropdown__symbol">PROPS</div>
<div class="swap-v2__asset-dropdown__symbol">QNT</div>
<div class="swap-v2__asset-dropdown__symbol">QRX</div>
<div class="swap-v2__asset-dropdown__symbol">QSP</div>
<div class="swap-v2__asset-dropdown__symbol">RAE</div>
<div class="swap-v2__asset-dropdown__symbol">RAI</div>
<div class="swap-v2__asset-dropdown__symbol">RARI</div>
<div class="swap-v2__asset-dropdown__symbol">RBC</div>
<div class="swap-v2__asset-dropdown__symbol">RDN</div>
<div class="swap-v2__asset-dropdown__symbol">REEF</div>
<div class="swap-v2__asset-dropdown__symbol">REN</div>
<div class="swap-v2__asset-dropdown__symbol">RENBCH</div>
<div class="swap-v2__asset-dropdown__symbol">RENBTC</div>
<div class="swap-v2__asset-dropdown__symbol">RENFIL</div>
<div class="swap-v2__asset-dropdown__symbol">RENZEC</div>
<div class="swap-v2__asset-dropdown__symbol">REP</div>
<div class="swap-v2__asset-dropdown__symbol">REQ</div>
<div class="swap-v2__asset-dropdown__symbol">REVV</div>
<div class="swap-v2__asset-dropdown__symbol">RFI</div>
<div class="swap-v2__asset-dropdown__symbol">RFR</div>
<div class="swap-v2__asset-dropdown__symbol">RFUEL</div>
<div class="swap-v2__asset-dropdown__symbol">RING</div>
<div class="swap-v2__asset-dropdown__symbol">RLC</div>
<div class="swap-v2__asset-dropdown__symbol">RNDR</div>
<div class="swap-v2__asset-dropdown__symbol">ROOBEE</div>
<div class="swap-v2__asset-dropdown__symbol">ROOK</div>
<div class="swap-v2__asset-dropdown__symbol">ROUTE</div>
<div class="swap-v2__asset-dropdown__symbol">RVT</div>
<div class="swap-v2__asset-dropdown__symbol">SAI</div>
<div class="swap-v2__asset-dropdown__symbol">SAN</div>
<div class="swap-v2__asset-dropdown__symbol">SATT</div>
<div class="swap-v2__asset-dropdown__symbol">SBTC</div>
<div class="swap-v2__asset-dropdown__symbol">SETH</div>
<div class="swap-v2__asset-dropdown__symbol">SIG</div>
<div class="swap-v2__asset-dropdown__symbol">SKL</div>
<div class="swap-v2__asset-dropdown__symbol">SKM</div>
<div class="swap-v2__asset-dropdown__symbol">SNGLS</div>
<div class="swap-v2__asset-dropdown__symbol">SNT</div>
<div class="swap-v2__asset-dropdown__symbol">SNTVT</div>
<div class="swap-v2__asset-dropdown__symbol">SNX</div>
<div class="swap-v2__asset-dropdown__symbol">SOUL</div>
<div class="swap-v2__asset-dropdown__symbol">SPANK</div>
<div class="swap-v2__asset-dropdown__symbol">SPN</div>
<div class="swap-v2__asset-dropdown__symbol">SPND</div>
<div class="swap-v2__asset-dropdown__symbol">STAKE</div>
<div class="swap-v2__asset-dropdown__symbol">STAR</div>
<div class="swap-v2__asset-dropdown__symbol">STETH</div>
<div class="swap-v2__asset-dropdown__symbol">STMX</div>
<div class="swap-v2__asset-dropdown__symbol">STORJ</div>
<div class="swap-v2__asset-dropdown__symbol">SUSD</div>
<div class="swap-v2__asset-dropdown__symbol">SWM</div>
<div class="swap-v2__asset-dropdown__symbol">SWT</div>
<div class="swap-v2__asset-dropdown__symbol">SYAX</div>
<div class="swap-v2__asset-dropdown__symbol">SYFL</div>
<div class="swap-v2__asset-dropdown__symbol">SYLO</div>
<div class="swap-v2__asset-dropdown__symbol">TBTC</div>
<div class="swap-v2__asset-dropdown__symbol">TKN</div>
<div class="swap-v2__asset-dropdown__symbol">TLN</div>
<div class="swap-v2__asset-dropdown__symbol">TOP</div>
<div class="swap-v2__asset-dropdown__symbol">TRST</div>
<div class="swap-v2__asset-dropdown__symbol">TUSD</div>
<div class="swap-v2__asset-dropdown__symbol">UBI</div>
<div class="swap-v2__asset-dropdown__symbol">UMA</div>
<div class="swap-v2__asset-dropdown__symbol">UPX</div>
<div class="swap-v2__asset-dropdown__symbol">USDN</div>
<div class="swap-v2__asset-dropdown__symbol">USDS</div>
<div class="swap-v2__asset-dropdown__symbol">USDX</div>
<div class="swap-v2__asset-dropdown__symbol">UST</div>
<div class="swap-v2__asset-dropdown__symbol">VAL</div>
<div class="swap-v2__asset-dropdown__symbol">VIDT</div>
<div class="swap-v2__asset-dropdown__symbol">VSP</div>
<div class="swap-v2__asset-dropdown__symbol">WINGS</div>
<div class="swap-v2__asset-dropdown__symbol">WIS</div>
<div class="swap-v2__asset-dropdown__symbol">WISE</div>
<div class="swap-v2__asset-dropdown__symbol">WOO</div>
<div class="swap-v2__asset-dropdown__symbol">WTC</div>
<div class="swap-v2__asset-dropdown__symbol">XAUR</div>
<div class="swap-v2__asset-dropdown__symbol">XBP</div>
<div class="swap-v2__asset-dropdown__symbol">XGG</div>
<div class="swap-v2__asset-dropdown__symbol">XNK</div>
<div class="swap-v2__asset-dropdown__symbol">XOR</div>
<div class="swap-v2__asset-dropdown__symbol">YEED</div>
<div class="swap-v2__asset-dropdown__symbol">YFDOT</div>
<div class="swap-v2__asset-dropdown__symbol">YFI</div>
<div class="swap-v2__asset-dropdown__symbol">YFL</div>
<div class="swap-v2__asset-dropdown__symbol">YLD</div>
<div class="swap-v2__asset-dropdown__symbol">ZAP</div>
<div class="swap-v2__asset-dropdown__symbol">ZCRT</div>
<div class="swap-v2__asset-dropdown__symbol">ZEON</div>
<div class="swap-v2__asset-dropdown__symbol">ZORA</div>
<div class="swap-v2__asset-dropdown__symbol">ZRX</div>

Quote refresh

  • Verified quote auto-refreshes every 40secs
  • Verified if the input value is changed or the GWEI is changed, quote is auto-reset to 40 sec and refreshes value very 40 sec
Auto-Quote.Refresh.mp4

ERC20 -> ERC20 Approval & Swap

Swap using Hardware Keys

  • Verification not done as Linux still has issues with connecting to hardware keys

Set Allowance Warning

  • Verified set allowance tooltip is shown conditionally when an allowance is set in the past
    image

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment