- import { Iterable, fromJS } from 'immutable';
- import { hydrateCompose } from './compose';
- import { importFetchedAccounts } from './importer';
-
- export const STORE_HYDRATE = 'STORE_HYDRATE';
- export const STORE_HYDRATE_LAZY = 'STORE_HYDRATE_LAZY';
-
- const convertState = rawState =>
- fromJS(rawState, (k, v) =>
- Iterable.isIndexed(v) ? v.toList() : v.toMap());
-
- export function hydrateStore(rawState) {
- return dispatch => {
- const state = convertState(rawState);
-
- dispatch({
- type: STORE_HYDRATE,
- state,
- });
-
- dispatch(hydrateCompose());
- dispatch(importFetchedAccounts(Object.values(rawState.accounts)));
- };
- };
|