Wallet setup redesign (#2164)

* Prepare existing layouts and views

* Add icon view component and sprite svg

* Add wallet setup basics

* Add import method view basics

* Use external sprite file instead of inline svg

* Refactor hardware wallet setup flow

* Manually enter an xpub

* Prepare other views

* Update views and models

* Finalize wallet setup flow

* Updat tests, part 1

* Update tests, part 2

* Vaul: Fix missing retry button

* Add better Scan QR subtext

Still tbd.

* Make wallet account an advanced setting

* Prevent empty xpub

* Use textarea for seed input

* Remove redundant error message for missing file upload

* Confirm store updates after generating a new wallet

* Update wording

* Modify existing wallets

* Fix proposed method name

* Suggest using ColdCard Electrum export option only

Advise the user to use the electrum export of the coldcard instead of saying either electrum or wasabi export file … the electurm one contains more info, e.g. the wasabi one doesn't include the account key path.

* More concise WalletSetupMethod setting

* Test fix

* Update wallet removal code

* Fix back navigation quirk in change wallet case

* Fix behaviour on wallet enable/disable

* Fix initial wallet setup

* Improve modify view and messages

* Test fixes

* Seed import fix

Uses the correct form url for confirming addresses

* Quickfixes from design meeting

* Add enable toggle switch on modify page

* Confirm wallet removal

* Update setup view

* Update import view

* Icon finetuning

* Improve import options page

* Refactor QR code scanner

Allow for usage with and without modal

* Update copy and instructions on import pages

* Split generate options: Hot wallet and watch-only

* Implement hot wallet options correctly

* Minor test changes

* Navbar improvements

* Fix tables

* Fix badge color

* Routing related updates

Thanks @kukks for the suggestions!

* Wording updates

Thanks @kukks for the suggestions!

* Extend address types table for xpub import

Thanks @kukks for the suggestions!

* Rename controller

* Unify precondition checks

* Improve removal warning for hot wallets

* Add tooltip on why seed import is not recommended

* Add tooltip icon

* Add Specter import info
This commit is contained in:
d11n
2021-02-11 11:48:54 +01:00
committed by GitHub
parent 3736cbc107
commit f4fa7c927c
40 changed files with 2039 additions and 243 deletions

View File

@@ -8,15 +8,8 @@ namespace BTCPayServer.Models.StoreViewModels
public class DerivationSchemeViewModel
{
public DerivationSchemeViewModel()
{
}
[Display(Name = "Derivation scheme")]
public string DerivationScheme
{
get; set;
}
public string DerivationScheme { get; set; }
public List<(string KeyPath, string Address, RootedKeyPath RootedKeyPath)> AddressSamples
{
@@ -25,6 +18,7 @@ namespace BTCPayServer.Models.StoreViewModels
public string CryptoCode { get; set; }
public string KeyPath { get; set; }
[Display(Name = "Root fingerprint")]
public string RootFingerprint { get; set; }
[Display(Name = "Hint address")]
public string HintAddress { get; set; }
@@ -33,16 +27,20 @@ namespace BTCPayServer.Models.StoreViewModels
public KeyPath RootKeyPath { get; set; }
[Display(Name = "Wallet File")]
[Display(Name = "Wallet file")]
public IFormFile WalletFile { get; set; }
[Display(Name = "Wallet File Content")]
[Display(Name = "Wallet file content")]
public string WalletFileContent { get; set; }
public string Config { get; set; }
public string Source { get; set; }
[Display(Name = "Derivation scheme format")]
public string DerivationSchemeFormat { get; set; }
[Display(Name = "Account key")]
public string AccountKey { get; set; }
public BTCPayNetwork Network { get; set; }
[Display(Name = "Can use hot wallet")]
public bool CanUseHotWallet { get; set; }
[Display(Name = "Can use RPC import")]
public bool CanUseRPCImport { get; set; }
public RootedKeyPath GetAccountKeypath()