diff options
author | Dan Finlay <flyswatter@users.noreply.github.com> | 2017-05-16 06:35:19 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-05-16 06:35:19 +0800 |
commit | fe3e943169ec32cf6b1db3f9469855cbf8b51403 (patch) | |
tree | 64945456d8ec250191b0dca41fad6fadd6443a8d | |
parent | 117cf9c331468390867323000a233b510c47fee1 (diff) | |
parent | 81122170b5e1b5853a823a9290c58e514062cb3f (diff) | |
download | tangerine-wallet-browser-fe3e943169ec32cf6b1db3f9469855cbf8b51403.tar tangerine-wallet-browser-fe3e943169ec32cf6b1db3f9469855cbf8b51403.tar.gz tangerine-wallet-browser-fe3e943169ec32cf6b1db3f9469855cbf8b51403.tar.bz2 tangerine-wallet-browser-fe3e943169ec32cf6b1db3f9469855cbf8b51403.tar.lz tangerine-wallet-browser-fe3e943169ec32cf6b1db3f9469855cbf8b51403.tar.xz tangerine-wallet-browser-fe3e943169ec32cf6b1db3f9469855cbf8b51403.tar.zst tangerine-wallet-browser-fe3e943169ec32cf6b1db3f9469855cbf8b51403.zip |
Merge pull request #1422 from MetaMask/drop-asyncq
background - drop async-q in favor of async/await
-rw-r--r-- | app/scripts/background.js | 38 | ||||
-rw-r--r-- | package.json | 5 |
2 files changed, 18 insertions, 25 deletions
diff --git a/app/scripts/background.js b/app/scripts/background.js index 58f8e7556..e738a9712 100644 --- a/app/scripts/background.js +++ b/app/scripts/background.js @@ -1,6 +1,5 @@ const urlUtil = require('url') const endOfStream = require('end-of-stream') -const asyncQ = require('async-q') const pipe = require('pump') const LocalStorageStore = require('obs-store/lib/localStorage') const storeTransform = require('obs-store/lib/transform') @@ -30,34 +29,29 @@ let popupIsOpen = false const diskStore = new LocalStorageStore({ storageKey: STORAGE_KEY }) // initialization flow -asyncQ.waterfall([ - () => loadStateFromPersistence(), - (initState) => setupController(initState), -]) -.then(() => console.log('MetaMask initialization complete.')) -.catch((err) => { console.error(err) }) +initialize().catch(console.error) + +async function initialize() { + const initState = await loadStateFromPersistence() + await setupController(initState) + console.log('MetaMask initialization complete.') +} // // State and Persistence // -function loadStateFromPersistence () { +async function loadStateFromPersistence () { // migrations const migrator = new Migrator({ migrations }) - const initialState = migrator.generateInitialState(firstTimeState) - return asyncQ.waterfall([ - // read from disk - () => Promise.resolve(diskStore.getState() || initialState), - // migrate data - (versionedData) => migrator.migrateData(versionedData), - // write to disk - (versionedData) => { - diskStore.putState(versionedData) - return Promise.resolve(versionedData) - }, - // resolve to just data - (versionedData) => Promise.resolve(versionedData.data), - ]) + // read from disk + let versionedData = diskStore.getState() || migrator.generateInitialState(firstTimeState) + // migrate data + versionedData = await migrator.migrateData(versionedData) + // write to disk + diskStore.putState(versionedData) + // return just the data + return versionedData.data } function setupController (initState) { diff --git a/package.json b/package.json index f4bdbd998..3355b4442 100644 --- a/package.json +++ b/package.json @@ -35,7 +35,7 @@ { "presets": [ "es2015", - "stage-3" + "stage-0" ] } ], @@ -45,7 +45,6 @@ }, "dependencies": { "async": "^1.5.2", - "async-q": "^0.3.1", "babel-runtime": "^6.23.0", "bip39": "^2.2.0", "bluebird": "^3.5.0", @@ -128,7 +127,7 @@ "devDependencies": { "babel-eslint": "^6.0.5", "babel-plugin-transform-runtime": "^6.23.0", - "babel-preset-stage-3": "^6.24.1", + "babel-preset-stage-0": "^6.24.1", "babel-register": "^6.7.2", "babelify": "^7.2.0", "beefy": "^2.1.5", |