import { User } from './models/user'; export const storeData = { state: { user: null, }, actions: { login: function ({ commit }) { commit('login'); }, logout: function ({ commit }) { commit('logout'); }, }, getters: { getCurrentUser: function (state) { if (!(state.user instanceof User)) { state.user = User.fromJWT(localStorage.getItem('token')); } return state.user; }, }, mutations: { /** * Log in a user and store them in vuex using the local storage token. * * @param state */ login: function (state) { state.user = User.fromJWT(localStorage.getItem('token')); }, logout: function (state) { console.log('logout'); state.user = null; } } };