54 lines
1.2 KiB
JavaScript
54 lines
1.2 KiB
JavaScript
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
|