diff options
Diffstat (limited to 'app/scripts/migrations/006.js')
-rw-r--r-- | app/scripts/migrations/006.js | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/app/scripts/migrations/006.js b/app/scripts/migrations/006.js new file mode 100644 index 000000000..950c4deb8 --- /dev/null +++ b/app/scripts/migrations/006.js @@ -0,0 +1,41 @@ +const version = 6 + +/* + +This migration moves KeyringController.selectedAddress to PreferencesController.selectedAddress + +*/ + +const extend = require('xtend') + +module.exports = { + version, + + migrate: function (versionedData) { + versionedData.meta.version = version + try { + const state = versionedData.data + const newState = migrateState(state) + versionedData.data = newState + } catch (err) { + console.warn(`MetaMask Migration #${version}` + err.stack) + } + return Promise.resolve(versionedData) + }, +} + +function migrateState (state) { + const keyringSubstate = state.KeyringController + + // add new state + const newState = extend(state, { + PreferencesController: { + selectedAddress: keyringSubstate.selectedAccount, + }, + }) + + // rm old state + delete newState.KeyringController.selectedAccount + + return newState +} |