/* This migration moves KeyringController.selectedAddress to PreferencesController.selectedAddress */ import { cloneDeep } from 'lodash' const version = 6 export default { version, migrate(originalVersionedData) { const versionedData = cloneDeep(originalVersionedData) 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 = { ...state, PreferencesController: { selectedAddress: keyringSubstate.selectedAccount, }, } // rm old state delete newState.KeyringController.selectedAccount return newState }