superhero-com / superhero-wallet

Superhero is a multi-blockchain wallet to manage crypto assets and navigate the web3 and DeFi space. Currently supporting Bitcoin, Ethereum and æternity blockchains.
https://wallet.superhero.com
ISC License
40 stars 38 forks source link

Wallet Initialization - select blockchain account (remove aeternity default) #3317

Closed smaroudasunicorn closed 3 weeks ago

smaroudasunicorn commented 1 month ago

Story: Following the new priority order of Bitcoin, Ethereum, æternity blockchains and the multi-blockchain approach, the default æternity account when creating a new wallet should be removed. Instead a new step is introduced into Create wallet flow - selection of blockchain to create user's first wallet account on.

Acceptance criteria: Initial screen/Create new wallet/Create wallet modal where the user is presented options with supported blockchains (currently Bitcoin, Ethereum, æternity) to select from in order to create the first account in the new wallet. Next step is Set password (optional, seed phrase encryption with password will be optional, separate task to be created for this issue).

Design:

Image

Image

Image

Image

Image

Prototype REC:

https://github.com/user-attachments/assets/0dd58728-146b-4fa9-be83-bff18a8b240c

Figma reference: https://www.figma.com/design/3oGLWzSH0oJljo4RETZtur/Superhero-Wallet-UI-(%E2%9C%94%EF%B8%8FUpdated)?node-id=33514-212196&node-type=frame&t=e7x73MSXRWA7VcpO-0

smaroudasunicorn commented 4 weeks ago

I am ok

peronczyk commented 3 weeks ago

Ready to be tested @Liubov-crypto

Liubov-crypto commented 3 weeks ago

I've got the same issue as @CedrikNikita , when I'm creating a new wallet and choose BTC/ETH as 1st account, then logged out and login with seed phrase, my BTC/ETH account will be not available. I will see AE account by default and have to add BTC/ETH acc manually. @peronczyk please check it.

https://github.com/user-attachments/assets/a0d6ec20-bbff-414d-8943-6141ce7ba166

peronczyk commented 3 weeks ago

@onvisions & @smaroudasunicorn what should happen in the case described by Liubov? Restoring the accounts from the mnemonic is a process where the logic goes through the protocols and checks if there are any accounts that has any balance or transaction history. So if you take a mnemonic where there is no accounts with balance/history we are adding the AE account by default to have at least one account. Should I change this behavior?

peronczyk commented 3 weeks ago

@onvisions & @smaroudasunicorn what should happen in the case described by Liubov? Restoring the accounts from the mnemonic is a process where the logic goes through the protocols and checks if there are any accounts that has any balance or transaction history. So if you take a mnemonic where there is no accounts with balance/history we are adding the AE account by default to have at least one account. Should I change this behavior?

Decision made on the Daily Scrum meeting: user should be asked about account (potocol) he wants to use if no accounts was discovered on provided mnemonic.

peronczyk commented 3 weeks ago

@Liubov-crypto I updated my PR according to above agreements. Please retest.

Liubov-crypto commented 3 weeks ago

LGTM