const createStore = require('redux').createStore
const applyMiddleware = require('redux').applyMiddleware
const thunkMiddleware = require('redux-thunk').default
const rootReducer = require('../ducks')
// const createLogger = require('redux-logger').createLogger

global.METAMASK_DEBUG = process.env.METAMASK_DEBUG

module.exports = configureStore

// const loggerMiddleware = createLogger({
//   predicate: () => global.METAMASK_DEBUG,
// })

// const middlewares = [thunkMiddleware, loggerMiddleware]
const middlewares = [thunkMiddleware]

const createStoreWithMiddleware = applyMiddleware(...middlewares)(createStore)

function configureStore (initialState) {
  return createStoreWithMiddleware(rootReducer, initialState)
}