aboutsummaryrefslogtreecommitdiff
path: root/src/lib
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib')
-rw-r--r--src/lib/persisted_state.js54
1 files changed, 28 insertions, 26 deletions
diff --git a/src/lib/persisted_state.js b/src/lib/persisted_state.js
index 006107e2..002f92b4 100644
--- a/src/lib/persisted_state.js
+++ b/src/lib/persisted_state.js
@@ -17,7 +17,9 @@ const saveImmedeatelyActions = [
'clearCurrentUser',
'setCurrentUser',
'setHighlight',
- 'setOption'
+ 'setOption',
+ 'setClientData',
+ 'setToken'
]
const defaultStorage = (() => {
@@ -43,8 +45,8 @@ export default function createPersistedState ({
storage = defaultStorage,
subscriber = store => handler => store.subscribe(handler)
} = {}) {
- return store => {
- getState(key, storage).then((savedState) => {
+ return getState(key, storage).then((savedState) => {
+ return store => {
try {
if (typeof savedState === 'object') {
// build user cache
@@ -67,36 +69,36 @@ export default function createPersistedState ({
value: store.state.config.customTheme
})
}
- if (store.state.users.lastLoginName) {
- store.dispatch('loginUser', {username: store.state.users.lastLoginName, password: 'xxx'})
+ if (store.state.oauth.token) {
+ console.log(store.state.oauth)
+ store.dispatch('loginUser', store.state.oauth.token)
}
loaded = true
} catch (e) {
console.log("Couldn't load state")
loaded = true
}
- })
-
- subscriber(store)((mutation, state) => {
- try {
- if (saveImmedeatelyActions.includes(mutation.type)) {
- setState(key, reducer(state, paths), storage)
- .then(success => {
- if (typeof success !== 'undefined') {
+ subscriber(store)((mutation, state) => {
+ try {
+ if (saveImmedeatelyActions.includes(mutation.type)) {
+ setState(key, reducer(state, paths), storage)
+ .then(success => {
+ if (typeof success !== 'undefined') {
+ if (mutation.type === 'setOption') {
+ store.dispatch('settingsSaved', { success })
+ }
+ }
+ }, error => {
if (mutation.type === 'setOption') {
- store.dispatch('settingsSaved', { success })
+ store.dispatch('settingsSaved', { error })
}
- }
- }, error => {
- if (mutation.type === 'setOption') {
- store.dispatch('settingsSaved', { error })
- }
- })
+ })
+ }
+ } catch (e) {
+ console.log("Couldn't persist state:")
+ console.log(e)
}
- } catch (e) {
- console.log("Couldn't persist state:")
- console.log(e)
- }
- })
- }
+ })
+ }
+ })
}