mirror of
https://github.com/kremalicious/metamask-extension.git
synced 2024-11-23 10:30:04 +01:00
203a56fb92
Now from the UI console, you can always call `logState()`, and it will print the state stringified into the console, ready to drop into the ui dev mode states folder, or other inspection. This should make it easier to diagnose user bugs in the future.
48 lines
913 B
JavaScript
48 lines
913 B
JavaScript
const extend = require('xtend')
|
|
|
|
//
|
|
// Sub-Reducers take in the complete state and return their sub-state
|
|
//
|
|
const reduceIdentities = require('./reducers/identities')
|
|
const reduceMetamask = require('./reducers/metamask')
|
|
const reduceApp = require('./reducers/app')
|
|
|
|
window.METAMASK_CACHED_LOG_STATE = null
|
|
|
|
module.exports = rootReducer
|
|
|
|
function rootReducer (state, action) {
|
|
// clone
|
|
state = extend(state)
|
|
|
|
if (action.type === 'GLOBAL_FORCE_UPDATE') {
|
|
return action.value
|
|
}
|
|
|
|
//
|
|
// Identities
|
|
//
|
|
|
|
state.identities = reduceIdentities(state, action)
|
|
|
|
//
|
|
// MetaMask
|
|
//
|
|
|
|
state.metamask = reduceMetamask(state, action)
|
|
|
|
//
|
|
// AppState
|
|
//
|
|
|
|
state.appState = reduceApp(state, action)
|
|
|
|
window.METAMASK_CACHED_LOG_STATE = state
|
|
return state
|
|
}
|
|
|
|
window.logState = function() {
|
|
var stateString = JSON.stringify(window.METAMASK_CACHED_LOG_STATE, null, 2)
|
|
console.log(stateString)
|
|
}
|