localStorage.js 947 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. /* eslint-disable no-console */
  2. // ~/plugins/localStorage.js
  3. import createPersistedState from 'vuex-persistedstate'
  4. import { isStorageAvailable } from '@/utils'
  5. const { OLD_STORE_NAME, STORE_NAME = 'tornadoClassicV2' } = process.env
  6. function migrate() {
  7. if (isStorageAvailable('localStorage') && OLD_STORE_NAME !== STORE_NAME) {
  8. const oldStore = localStorage[OLD_STORE_NAME]
  9. if (oldStore) {
  10. localStorage.setItem(STORE_NAME, oldStore)
  11. localStorage.removeItem(OLD_STORE_NAME)
  12. }
  13. }
  14. }
  15. export default ({ store, isHMR }) => {
  16. if (isHMR) {
  17. return
  18. }
  19. if (!store.$isLoadedFromIPFS()) {
  20. const paths = [
  21. 'metamask.netId',
  22. 'application.selectedStatistic',
  23. 'application.selectedInstance',
  24. 'txHashKeeper',
  25. 'settings',
  26. 'account',
  27. 'relayer.jobs',
  28. 'encryptedNote.ui'
  29. ]
  30. migrate()
  31. createPersistedState({
  32. key: STORE_NAME,
  33. paths
  34. })(store)
  35. }
  36. }