aboutsummaryrefslogtreecommitdiffstats
path: root/app/scripts/lib/controllers/preferences.js
diff options
context:
space:
mode:
authorFrankie <frankie.diamond@gmail.com>2017-01-31 07:57:49 +0800
committerGitHub <noreply@github.com>2017-01-31 07:57:49 +0800
commit82578538198de74955d7bc5cfd3c9a02d1b69a6d (patch)
treeaad1a62ee4ed4b7e34c0bd78b9f680dc2aeaaded /app/scripts/lib/controllers/preferences.js
parentb6909574a7036c396ed85809cbd90aa2171b012f (diff)
parent0b9d37c6c8e714eb26bec5156e984a6b0cd268ad (diff)
downloadtangerine-wallet-browser-82578538198de74955d7bc5cfd3c9a02d1b69a6d.tar
tangerine-wallet-browser-82578538198de74955d7bc5cfd3c9a02d1b69a6d.tar.gz
tangerine-wallet-browser-82578538198de74955d7bc5cfd3c9a02d1b69a6d.tar.bz2
tangerine-wallet-browser-82578538198de74955d7bc5cfd3c9a02d1b69a6d.tar.lz
tangerine-wallet-browser-82578538198de74955d7bc5cfd3c9a02d1b69a6d.tar.xz
tangerine-wallet-browser-82578538198de74955d7bc5cfd3c9a02d1b69a6d.tar.zst
tangerine-wallet-browser-82578538198de74955d7bc5cfd3c9a02d1b69a6d.zip
Merge pull request #1069 from MetaMask/i1066
Introduce Preferences Controller
Diffstat (limited to 'app/scripts/lib/controllers/preferences.js')
-rw-r--r--app/scripts/lib/controllers/preferences.js33
1 files changed, 33 insertions, 0 deletions
diff --git a/app/scripts/lib/controllers/preferences.js b/app/scripts/lib/controllers/preferences.js
new file mode 100644
index 000000000..dc9464c4e
--- /dev/null
+++ b/app/scripts/lib/controllers/preferences.js
@@ -0,0 +1,33 @@
+const ObservableStore = require('obs-store')
+const normalizeAddress = require('../sig-util').normalize
+
+class PreferencesController {
+
+ constructor (opts = {}) {
+ const initState = opts.initState || {}
+ this.store = new ObservableStore(initState)
+ }
+
+ //
+ // PUBLIC METHODS
+ //
+
+ setSelectedAddress(_address) {
+ return new Promise((resolve, reject) => {
+ const address = normalizeAddress(_address)
+ this.store.updateState({ selectedAddress: address })
+ resolve()
+ })
+ }
+
+ getSelectedAddress(_address) {
+ return this.store.getState().selectedAddress
+ }
+
+ //
+ // PRIVATE METHODS
+ //
+
+}
+
+module.exports = PreferencesController