diff options
| author | Roger Braun <roger@rogerbraun.net> | 2017-02-26 11:39:42 +0100 |
|---|---|---|
| committer | Roger Braun <roger@rogerbraun.net> | 2017-02-26 11:39:42 +0100 |
| commit | 290180a987ecb4949fc877c512f3cff120bcbc70 (patch) | |
| tree | 7217c877059e94bd9a435021b7e2cd42b66e24cb /src/lib/persisted_state.js | |
| parent | 7661357cf669ef57bfdd3e39c0c5574094984de4 (diff) | |
| parent | bebd5c3328422aacf65996776e282d032347c5c9 (diff) | |
Merge branch 'develop' into feature/hash-routed
Diffstat (limited to 'src/lib/persisted_state.js')
| -rw-r--r-- | src/lib/persisted_state.js | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/src/lib/persisted_state.js b/src/lib/persisted_state.js index de1e5383..6a17ca99 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 { throttle } from 'lodash' -import { inflate, deflate } from 'pako' +import lzstring from 'lz-string' const defaultReducer = (state, paths) => ( paths.length === 0 ? state : paths.reduce((substate, path) => { @@ -36,22 +36,22 @@ const defaultStorage = (() => { })() const defaultSetState = (key, state, storage) => { - return storage.setItem(key, deflate(JSON.stringify(state), { to: 'string' })) + return storage.setItem(key, lzstring.compressToUTF16(JSON.stringify(state))) } export default function createPersistedState ({ - key = 'vuex', + key = 'vuex-lz', paths = [], getState = (key, storage) => { let value = storage.getItem(key) try { - value = inflate(value, { to: 'string' }) + value = lzstring.decompressFromUTF16(value) // inflate(value, { to: 'string' }) } catch (e) { console.log("Couldn't inflate value... Maybe upgrading") } return value && value !== 'undefined' ? JSON.parse(value) : undefined }, - setState = throttle(defaultSetState, 5000), + setState = throttle(defaultSetState, 60000), reducer = defaultReducer, storage = defaultStorage, subscriber = store => handler => store.subscribe(handler) |
