diff options
author | Ellie Day <heyellieday@gmail.com> | 2017-12-23 22:23:34 +0800 |
---|---|---|
committer | Ellie Day <heyellieday@gmail.com> | 2017-12-23 22:23:34 +0800 |
commit | a76324f6d397c3e746ba501cfd858c4869cb0af7 (patch) | |
tree | f29403ceaa71a7c374046d223b79f032e6045604 /app/scripts/lib | |
parent | d3f5ad874e4bf90cda4e440f9b0635c6ac416382 (diff) | |
download | tangerine-wallet-browser-a76324f6d397c3e746ba501cfd858c4869cb0af7.tar tangerine-wallet-browser-a76324f6d397c3e746ba501cfd858c4869cb0af7.tar.gz tangerine-wallet-browser-a76324f6d397c3e746ba501cfd858c4869cb0af7.tar.bz2 tangerine-wallet-browser-a76324f6d397c3e746ba501cfd858c4869cb0af7.tar.lz tangerine-wallet-browser-a76324f6d397c3e746ba501cfd858c4869cb0af7.tar.xz tangerine-wallet-browser-a76324f6d397c3e746ba501cfd858c4869cb0af7.tar.zst tangerine-wallet-browser-a76324f6d397c3e746ba501cfd858c4869cb0af7.zip |
Add ExtensionStore and add basic store instance syncing to main controller
Diffstat (limited to 'app/scripts/lib')
-rw-r--r-- | app/scripts/lib/extension-store.js | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/app/scripts/lib/extension-store.js b/app/scripts/lib/extension-store.js new file mode 100644 index 000000000..a8b730a65 --- /dev/null +++ b/app/scripts/lib/extension-store.js @@ -0,0 +1,20 @@ +const extension = require('extensionizer') + +const KEYS_TO_SYNC = ['KeyringController', 'PreferencesController'] + +module.exports = class ExtensionStore { + async fetch() { + return new Promise((resolve) => { + extension.storage.sync.get(KEYS_TO_SYNC, data => resolve(data)) + }) + } + async sync(state) { + const dataToSync = KEYS_TO_SYNC.reduce((result, key) => { + result[key] = state.data[key] + return result + }, {}) + return new Promise((resolve) => { + extension.storage.sync.set(dataToSync, () => resolve()) + }) + } +} |