diff options
Diffstat (limited to 'ui/app/reducers/metamask.js')
-rw-r--r-- | ui/app/reducers/metamask.js | 185 |
1 files changed, 93 insertions, 92 deletions
diff --git a/ui/app/reducers/metamask.js b/ui/app/reducers/metamask.js index 646100120..f3ef8eb11 100644 --- a/ui/app/reducers/metamask.js +++ b/ui/app/reducers/metamask.js @@ -3,7 +3,8 @@ const actions = require('../actions') module.exports = reduceMetamask -function reduceMetamask(state, action) { +function reduceMetamask (state, action) { + let newState // clone + defaults var metamaskState = extend({ @@ -17,99 +18,99 @@ function reduceMetamask(state, action) { switch (action.type) { - case actions.SHOW_ACCOUNTS_PAGE: - var state = extend(metamaskState) - delete state.seedWords - return state - - case actions.UPDATE_METAMASK_STATE: - return extend(metamaskState, action.value) - - case actions.AGREE_TO_DISCLAIMER: - return extend(metamaskState, { - isConfirmed: true, - }) - - case actions.UNLOCK_METAMASK: - return extend(metamaskState, { - isUnlocked: true, - isInitialized: true, - selectedAccount: action.value, - }) - - case actions.LOCK_METAMASK: - return extend(metamaskState, { - isUnlocked: false, - }) - - case actions.SET_RPC_TARGET: - return extend(metamaskState, { - provider: { - type: 'rpc', - rpcTarget: action.value, - }, - }) - - case actions.SET_PROVIDER_TYPE: - return extend(metamaskState, { - provider: { - type: action.value, - }, - }) - - case actions.COMPLETED_TX: - var stringId = String(action.id) - var newState = extend(metamaskState, { - unconfTxs: {}, - unconfMsgs: {}, - }) - for (var id in metamaskState.unconfTxs) { - if (id !== stringId) { - newState.unconfTxs[id] = metamaskState.unconfTxs[id] + case actions.SHOW_ACCOUNTS_PAGE: + newState = extend(metamaskState) + delete newState.seedWords + return newState + + case actions.UPDATE_METAMASK_STATE: + return extend(metamaskState, action.value) + + case actions.AGREE_TO_DISCLAIMER: + return extend(metamaskState, { + isConfirmed: true, + }) + + case actions.UNLOCK_METAMASK: + return extend(metamaskState, { + isUnlocked: true, + isInitialized: true, + selectedAccount: action.value, + }) + + case actions.LOCK_METAMASK: + return extend(metamaskState, { + isUnlocked: false, + }) + + case actions.SET_RPC_TARGET: + return extend(metamaskState, { + provider: { + type: 'rpc', + rpcTarget: action.value, + }, + }) + + case actions.SET_PROVIDER_TYPE: + return extend(metamaskState, { + provider: { + type: action.value, + }, + }) + + case actions.COMPLETED_TX: + var stringId = String(action.id) + newState = extend(metamaskState, { + unconfTxs: {}, + unconfMsgs: {}, + }) + for (const id in metamaskState.unconfTxs) { + if (id !== stringId) { + newState.unconfTxs[id] = metamaskState.unconfTxs[id] + } } - } - for (var id in metamaskState.unconfMsgs) { - if (id !== stringId) { - newState.unconfMsgs[id] = metamaskState.unconfMsgs[id] + for (const id in metamaskState.unconfMsgs) { + if (id !== stringId) { + newState.unconfMsgs[id] = metamaskState.unconfMsgs[id] + } } - } - return newState - - case actions.SHOW_NEW_VAULT_SEED: - return extend(metamaskState, { - isUnlocked: true, - isInitialized: false, - }) - - case actions.CLEAR_SEED_WORD_CACHE: - var newState = extend(metamaskState, { - isUnlocked: true, - isInitialized: true, - selectedAccount: action.value, - }) - delete newState.seedWords - return newState - - case actions.SHOW_ACCOUNT_DETAIL: - const newState = extend(metamaskState, { - isUnlocked: true, - isInitialized: true, - selectedAccount: action.value, - selectedAddress: action.value, - }) - delete newState.seedWords - return newState - - case actions.SAVE_ACCOUNT_LABEL: - const account = action.value.account - const name = action.value.label - var id = {} - id[account] = extend(metamaskState.identities[account], { name }) - var identities = extend(metamaskState.identities, id) - return extend(metamaskState, { identities }) - - default: - return metamaskState + return newState + + case actions.SHOW_NEW_VAULT_SEED: + return extend(metamaskState, { + isUnlocked: true, + isInitialized: false, + }) + + case actions.CLEAR_SEED_WORD_CACHE: + newState = extend(metamaskState, { + isUnlocked: true, + isInitialized: true, + selectedAccount: action.value, + }) + delete newState.seedWords + return newState + + case actions.SHOW_ACCOUNT_DETAIL: + newState = extend(metamaskState, { + isUnlocked: true, + isInitialized: true, + selectedAccount: action.value, + selectedAddress: action.value, + }) + delete newState.seedWords + return newState + + case actions.SAVE_ACCOUNT_LABEL: + const account = action.value.account + const name = action.value.label + var id = {} + id[account] = extend(metamaskState.identities[account], { name }) + var identities = extend(metamaskState.identities, id) + return extend(metamaskState, { identities }) + + default: + return metamaskState } } |