mirror of
https://github.com/kremalicious/metamask-extension.git
synced 2024-12-23 09:52:26 +01:00
Debounce storage to avoid crashing pump
This commit is contained in:
parent
2f13790653
commit
ceebc6caa4
@ -1,6 +1,7 @@
|
||||
const urlUtil = require('url')
|
||||
const endOfStream = require('end-of-stream')
|
||||
const pump = require('pump')
|
||||
const debounce = require('debounce-stream')
|
||||
const log = require('loglevel')
|
||||
const extension = require('extensionizer')
|
||||
const LocalStorageStore = require('obs-store/lib/localStorage')
|
||||
@ -65,11 +66,7 @@ async function loadStateFromPersistence () {
|
||||
log.error('error fetching state from local store:', err)
|
||||
}
|
||||
|
||||
console.log('Comparing localdata and versionedData')
|
||||
console.dir({ localData })
|
||||
|
||||
if (Object.keys(localData).length > 0) {
|
||||
console.log('using the local store data')
|
||||
versionedData = localData
|
||||
}
|
||||
}
|
||||
@ -117,8 +114,12 @@ function setupController (initState) {
|
||||
// setup state persistence
|
||||
pump(
|
||||
asStream(controller.store),
|
||||
debounce(200),
|
||||
storeTransform(versionifyData),
|
||||
storeTransform(syncDataWithExtension),
|
||||
(error) => {
|
||||
log.error('pump hit error', error)
|
||||
}
|
||||
)
|
||||
|
||||
function versionifyData (state) {
|
||||
@ -126,15 +127,14 @@ function setupController (initState) {
|
||||
return versionedData
|
||||
}
|
||||
|
||||
function syncDataWithExtension(state) {
|
||||
async function syncDataWithExtension(state) {
|
||||
if (localStore.isSupported) {
|
||||
try {
|
||||
console.log('persisting state', state)
|
||||
localStore.set(state)
|
||||
await localStore.set(state)
|
||||
} catch (err) {
|
||||
log.error('error setting state in local store:', err)
|
||||
}
|
||||
}
|
||||
} else { log.error('local store not supported') }
|
||||
return state
|
||||
}
|
||||
|
||||
|
@ -62,6 +62,7 @@
|
||||
"clone": "^2.1.1",
|
||||
"copy-to-clipboard": "^3.0.8",
|
||||
"debounce": "^1.0.0",
|
||||
"debounce-stream": "^2.0.0",
|
||||
"deep-extend": "^0.5.0",
|
||||
"detect-node": "^2.0.3",
|
||||
"disc": "^1.3.2",
|
||||
|
Loading…
Reference in New Issue
Block a user