aboutsummaryrefslogtreecommitdiffstats
path: root/app/scripts/keyrings
diff options
context:
space:
mode:
authorDan Finlay <dan@danfinlay.com>2017-01-18 08:22:22 +0800
committerDan Finlay <dan@danfinlay.com>2017-01-18 08:24:45 +0800
commit1ff4894b674bbcbac1998228454129018e4642b6 (patch)
tree5ddf81cc89253ea6ca8a19f19cee0efe328c2742 /app/scripts/keyrings
parent958cbfbde44c201cf71f5dfcb7b1748bb43e597f (diff)
downloadtangerine-wallet-browser-1ff4894b674bbcbac1998228454129018e4642b6.tar.gz
tangerine-wallet-browser-1ff4894b674bbcbac1998228454129018e4642b6.tar.zst
tangerine-wallet-browser-1ff4894b674bbcbac1998228454129018e4642b6.zip
Allow importing of private key strings
Fixes #1021 A top-right menu item now allows `Account Import`. It has a menu (with one item for now) that allows importing a private key string. Errors are displayed, and a success navigates the user to their account list, where the imported account is labeled `LOOSE`.
Diffstat (limited to 'app/scripts/keyrings')
-rw-r--r--app/scripts/keyrings/simple.js18
1 files changed, 12 insertions, 6 deletions
diff --git a/app/scripts/keyrings/simple.js b/app/scripts/keyrings/simple.js
index d604430b8..46687fcaf 100644
--- a/app/scripts/keyrings/simple.js
+++ b/app/scripts/keyrings/simple.js
@@ -20,13 +20,19 @@ class SimpleKeyring extends EventEmitter {
}
deserialize (privateKeys = []) {
- this.wallets = privateKeys.map((privateKey) => {
- const stripped = ethUtil.stripHexPrefix(privateKey)
- const buffer = new Buffer(stripped, 'hex')
- const wallet = Wallet.fromPrivateKey(buffer)
- return wallet
+ return new Promise((resolve, reject) => {
+ try {
+ this.wallets = privateKeys.map((privateKey) => {
+ const stripped = ethUtil.stripHexPrefix(privateKey)
+ const buffer = new Buffer(stripped, 'hex')
+ const wallet = Wallet.fromPrivateKey(buffer)
+ return wallet
+ })
+ } catch (e) {
+ reject(e)
+ }
+ resolve()
})
- return Promise.resolve()
}
addAccounts (n = 1) {