aboutsummaryrefslogtreecommitdiff
path: root/src/lib
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib')
-rw-r--r--src/lib/persisted_state.js9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/lib/persisted_state.js b/src/lib/persisted_state.js
index a518cb51..a47ad7d5 100644
--- a/src/lib/persisted_state.js
+++ b/src/lib/persisted_state.js
@@ -1,7 +1,7 @@
import merge from 'lodash.merge'
import objectPath from 'object-path'
import localforage from 'localforage'
-import { throttle } from 'lodash'
+import { throttle, each } from 'lodash'
const defaultReducer = (state, paths) => (
paths.length === 0 ? state : paths.reduce((substate, path) => {
@@ -33,6 +33,13 @@ export default function createPersistedState ({
return store => {
getState(key, storage).then((savedState) => {
if (typeof savedState === 'object') {
+ // build user cache
+ const usersState = savedState.users || {}
+ usersState.usersObject = {}
+ const users = usersState.users || []
+ each(users, (user) => { usersState.usersObject[user.id] = user })
+ savedState.users = usersState
+
store.replaceState(
merge({}, store.state, savedState)
)