-
Notifications
You must be signed in to change notification settings - Fork 21
/
Copy pathauth.js
45 lines (38 loc) · 1015 Bytes
/
auth.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
import api from '../../../api/auth'
const state = {
user: {},
roles: [],
permissions: []
}
const getters = {
getAuth: state => state.user,
getRoles: state => state.roles,
getPermissions: state => state.permissions
}
const actions = {
async setAuth ({ commit }) {
const payload = (await api.auth()).data
commit('setAuth', await payload.user)
},
async setRoles ({ commit }) {
const payload = (await api.roles()).data
commit('setRoles', await payload.roles)
},
async setPermissions ({ commit }) {
const payload = (await api.permissions()).data
commit('setPermissions', await payload.permissions)
}
}
const mutations = {
setAuth: (state, payload) => { state.auth = payload },
setRoles: (state, payload) => { state.roles = payload },
setPermissions: (state, payload) => { state.permissions = payload }
}
// if This will not work we will need to save it in a constant Namespace
export default {
namespaced: true,
state,
getters,
actions,
mutations
}