mirror of
https://github.com/kremalicious/metamask-extension.git
synced 2024-11-25 20:02:58 +01:00
Use async/await for seedPhraseVerifier.verifyAccounts (#9100)
This commit is contained in:
parent
a7089193c8
commit
e435291074
@ -16,41 +16,33 @@ const seedPhraseVerifier = {
|
||||
* @returns {Promise<void>} - Promises undefined
|
||||
*
|
||||
*/
|
||||
verifyAccounts (createdAccounts, seedWords) {
|
||||
async verifyAccounts (createdAccounts, seedWords) {
|
||||
if (!createdAccounts || createdAccounts.length < 1) {
|
||||
throw new Error('No created accounts defined.')
|
||||
}
|
||||
|
||||
return new Promise((resolve, reject) => {
|
||||
const keyringController = new KeyringController({})
|
||||
const Keyring = keyringController.getKeyringClassForType('HD Key Tree')
|
||||
const opts = {
|
||||
mnemonic: seedWords,
|
||||
numberOfAccounts: createdAccounts.length,
|
||||
}
|
||||
|
||||
if (!createdAccounts || createdAccounts.length < 1) {
|
||||
return reject(new Error('No created accounts defined.'))
|
||||
const keyring = new Keyring(opts)
|
||||
const restoredAccounts = await keyring.getAccounts()
|
||||
log.debug('Created accounts: ' + JSON.stringify(createdAccounts))
|
||||
log.debug('Restored accounts: ' + JSON.stringify(restoredAccounts))
|
||||
|
||||
if (restoredAccounts.length !== createdAccounts.length) {
|
||||
// this should not happen...
|
||||
throw new Error('Wrong number of accounts')
|
||||
}
|
||||
|
||||
for (let i = 0; i < restoredAccounts.length; i++) {
|
||||
if (restoredAccounts[i].toLowerCase() !== createdAccounts[i].toLowerCase()) {
|
||||
throw new Error('Not identical accounts! Original: ' + createdAccounts[i] + ', Restored: ' + restoredAccounts[i])
|
||||
}
|
||||
|
||||
const keyringController = new KeyringController({})
|
||||
const Keyring = keyringController.getKeyringClassForType('HD Key Tree')
|
||||
const opts = {
|
||||
mnemonic: seedWords,
|
||||
numberOfAccounts: createdAccounts.length,
|
||||
}
|
||||
|
||||
const keyring = new Keyring(opts)
|
||||
keyring.getAccounts()
|
||||
.then((restoredAccounts) => {
|
||||
|
||||
log.debug('Created accounts: ' + JSON.stringify(createdAccounts))
|
||||
log.debug('Restored accounts: ' + JSON.stringify(restoredAccounts))
|
||||
|
||||
if (restoredAccounts.length !== createdAccounts.length) {
|
||||
// this should not happen...
|
||||
return reject(new Error('Wrong number of accounts'))
|
||||
}
|
||||
|
||||
for (let i = 0; i < restoredAccounts.length; i++) {
|
||||
if (restoredAccounts[i].toLowerCase() !== createdAccounts[i].toLowerCase()) {
|
||||
return reject(new Error('Not identical accounts! Original: ' + createdAccounts[i] + ', Restored: ' + restoredAccounts[i]))
|
||||
}
|
||||
}
|
||||
return resolve()
|
||||
})
|
||||
})
|
||||
}
|
||||
},
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user