import Vue from 'vue'; import Vuex from "vuex"; import api from './api.js' Vue.use(Vuex); const store = new Vuex.Store({ state: { errs: [], userInfo: {ID: "", Verification: ""}, moods: [], }, actions: { getMoods({commit, state}) { return api.getMoods(state.userInfo) .then(resp => { commit('setMoods', resp.data) }) }, getNewUser({commit}) { return api.getNewUser() .then(resp => { commit('setUser', resp.data); }) }, getUserInfo({state}, userInfo) { if (userInfo) return api.getUserInfo(userInfo) else return api.getUserInfo(state.userInfo) }, setMood({state}, mood) { return api.setMood(state.userInfo, mood) }, }, mutations: { setUser(state, userInfo) { state.userInfo = userInfo; }, setMoods(state, moods) { state.moods = moods; }, clearError(state) { state.errs = [] }, addError(state, err) { state.errs.push(err) } } }); export default store