// @flow import React from 'react' import { render } from 'react-dom' import { AppContainer } from 'react-hot-loader' import createHistory from 'history/createHashHistory' import createStore from 'renderer/createStore' import events from 'renderer/events' import { fetchAccounts } from 'actions/accounts' import { fetchSettings } from 'actions/settings' import { isLocked } from 'reducers/application' import App from 'components/App' import 'styles/global' const history = createHistory() const store = createStore(history) const rootNode = document.getElementById('app') events(store) store.dispatch(fetchSettings()) const state = store.getState() || {} if (!isLocked(state)) { store.dispatch(fetchAccounts()) } function r(Comp) { if (rootNode) { render({Comp}, rootNode) } } r() if (module.hot) { module.hot.accept('../components/App', () => { const NewApp = require('../components/App').default // eslint-disable-line global-require r() }) }