1
0
mirror of https://github.com/kremalicious/metamask-extension.git synced 2024-10-22 19:26:13 +02:00

Minimize dispatches by using emitters and relying on state updates.

This commit is contained in:
Kevin Serrano 2016-11-15 17:12:13 -08:00
parent e18109f1ea
commit 5bfb700fa8
No known key found for this signature in database
GPG Key ID: 7CC862A58D2889B4
2 changed files with 12 additions and 26 deletions

View File

@ -108,7 +108,7 @@ module.exports = class KeyringController extends EventEmitter {
this.setupAccounts(accounts)
this.emit('update')
cb(null, this.getState())
cb()
})
})
}
@ -163,7 +163,7 @@ module.exports = class KeyringController extends EventEmitter {
this.setupAccounts(accounts)
this.persistAllKeyrings()
.then(() => {
cb(err, this.getState())
cb(err)
})
.catch((reason) => {
cb(reason)
@ -173,9 +173,7 @@ module.exports = class KeyringController extends EventEmitter {
placeSeedWords () {
const firstKeyring = this.keyrings[0]
console.log(firstKeyring)
const seedWords = firstKeyring.serialize().mnemonic
console.log(seedWords)
this.configManager.setSeedWords(seedWords)
}
@ -188,7 +186,7 @@ module.exports = class KeyringController extends EventEmitter {
this.keyrings = keyrings
this.setupAccounts()
this.emit('update')
cb(null, this.getState())
cb()
})
.catch((err) => {
console.error(err)
@ -215,7 +213,7 @@ module.exports = class KeyringController extends EventEmitter {
this.setupAccounts(accounts)
this.persistAllKeyrings()
.then(() => {
cb(null, this.getState())
cb()
})
.catch((reason) => {
cb(reason)
@ -228,7 +226,7 @@ module.exports = class KeyringController extends EventEmitter {
this.setupAccounts(accounts)
this.persistAllKeyrings()
.then(() => {
cb(null, this.getState())
cb()
})
.catch((reason) => {
cb(reason)
@ -521,6 +519,7 @@ module.exports = class KeyringController extends EventEmitter {
setLocked (cb) {
this.key = null
this.keyrings = []
this.emit('update')
cb()
}

View File

@ -161,12 +161,11 @@ function tryUnlockMetamask (password) {
return (dispatch) => {
dispatch(actions.showLoadingIndication())
dispatch(actions.unlockInProgress())
background.submitPassword(password, (err, newState) => {
background.submitPassword(password, (err) => {
dispatch(actions.hideLoadingIndication())
if (err) {
dispatch(actions.unlockFailed(err.message))
} else {
dispatch(this.updateMetamaskState(newState))
let selectedAccount
try {
selectedAccount = newState.metamask.selectedAccount
@ -195,23 +194,19 @@ function confirmSeedWords () {
function createNewVaultAndRestore (password, seed) {
return (dispatch) => {
dispatch(actions.showLoadingIndication())
background.createNewVaultAndRestore(password, seed, (err, newState) => {
background.createNewVaultAndRestore(password, seed, (err) => {
dispatch(actions.hideLoadingIndication())
if (err) return dispatch(actions.displayWarning(err.message))
dispatch(this.updateMetamaskState(newState))
})
}
}
function createNewVaultAndKeychain (password, entropy) {
return (dispatch) => {
background.createNewVaultAndKeychain(password, entropy, (err, newState) => {
background.createNewVaultAndKeychain(password, entropy, (err) => {
if (err) {
return dispatch(actions.showWarning(err.message))
}
dispatch(this.updateMetamaskState(newState))
dispatch(this.showNewVaultSeed())
})
}
}
@ -225,11 +220,10 @@ function revealSeedConfirmation () {
function requestRevealSeed (password) {
return (dispatch) => {
dispatch(actions.showLoadingIndication())
background.submitPassword(password, (err, newState) => {
background.submitPassword(password, (err) => {
dispatch(actions.hideLoadingIndication())
if (err) return dispatch(actions.displayWarning(err.message))
background.placeSeedWords()
dispatch(actions.showNewVaultSeed())
})
}
}
@ -238,13 +232,11 @@ function requestRevealSeed (password) {
function addNewKeyring (type, opts) {
return (dispatch) => {
dispatch(actions.showLoadingIndication())
background.addNewKeyring(type, opts, (err, newState) => {
background.addNewKeyring(type, opts, (err) => {
dispatch(this.hideLoadingIndication())
if (err) {
return dispatch(actions.showWarning(err))
}
dispatch(this.updateMetamaskState(newState))
dispatch(this.showAccountsPage())
})
}
}
@ -252,12 +244,11 @@ function addNewKeyring (type, opts) {
function addNewAccount (ringNumber = 0) {
return (dispatch) => {
dispatch(actions.showLoadingIndication())
background.addNewAccount(ringNumber, (err, newState) => {
background.addNewAccount(ringNumber, (err) => {
dispatch(this.hideLoadingIndication())
if (err) {
return dispatch(actions.showWarning(err))
}
dispatch(this.updateMetamaskState(newState))
})
}
}
@ -457,10 +448,6 @@ function lockMetamask () {
if (err) {
return dispatch(actions.displayWarning(err.message))
}
dispatch({
type: actions.LOCK_METAMASK,
})
})
}
}