/* This migration ensures previous installations get a `firstTimeInfo` key on the metamask state, so that we can version notices in the future. */ import { cloneDeep } from 'lodash' const version = 20 export default { version, migrate(originalVersionedData) { const versionedData = cloneDeep(originalVersionedData) versionedData.meta.version = version try { const state = versionedData.data const newState = transformState(state) versionedData.data = newState } catch (err) { console.warn(`MetaMask Migration #${version}${err.stack}`) } return Promise.resolve(versionedData) }, } function transformState(state) { const newState = state if ('metamask' in newState && !('firstTimeInfo' in newState.metamask)) { newState.metamask.firstTimeInfo = { version: '3.12.0', date: Date.now(), } } return newState }