diff options
Diffstat (limited to 'src/store/module-user')
| -rw-r--r-- | src/store/module-user/actions.js | 4 | ||||
| -rw-r--r-- | src/store/module-user/getters.js | 1 | ||||
| -rw-r--r-- | src/store/module-user/index.js | 12 | ||||
| -rw-r--r-- | src/store/module-user/mutations.js | 17 | ||||
| -rw-r--r-- | src/store/module-user/state.js | 4 |
5 files changed, 38 insertions, 0 deletions
diff --git a/src/store/module-user/actions.js b/src/store/module-user/actions.js new file mode 100644 index 0000000..5e5d9c6 --- /dev/null +++ b/src/store/module-user/actions.js @@ -0,0 +1,4 @@ +/* +export const someAction = (state) => { +} +*/ diff --git a/src/store/module-user/getters.js b/src/store/module-user/getters.js new file mode 100644 index 0000000..64241d1 --- /dev/null +++ b/src/store/module-user/getters.js @@ -0,0 +1 @@ +export const loggedIn = (state) => Boolean(state.decodedToken.username) diff --git a/src/store/module-user/index.js b/src/store/module-user/index.js new file mode 100644 index 0000000..b41a219 --- /dev/null +++ b/src/store/module-user/index.js @@ -0,0 +1,12 @@ +import state from './state' +import * as getters from './getters' +import * as mutations from './mutations' +import * as actions from './actions' + +export default { + namespaced: true, + state, + getters, + mutations, + actions +} diff --git a/src/store/module-user/mutations.js b/src/store/module-user/mutations.js new file mode 100644 index 0000000..e8f4799 --- /dev/null +++ b/src/store/module-user/mutations.js @@ -0,0 +1,17 @@ +import axios from 'axios' +import jwtDecode from 'jwt-decode' +import { LocalStorage } from 'quasar' + +export const setAuthToken = (state, { authToken }) => { + state.authToken = authToken + state.decodedToken = jwtDecode(authToken) + axios.defaults.headers.common['Authorization'] = `Bearer ${authToken}` + LocalStorage.set('authToken', authToken) +} + +export const logout = (state) => { + state.authToken = null + state.decodedToken = {} + delete axios.defaults.headers.common['Authorization'] + LocalStorage.remove('authToken') +} diff --git a/src/store/module-user/state.js b/src/store/module-user/state.js new file mode 100644 index 0000000..b938620 --- /dev/null +++ b/src/store/module-user/state.js @@ -0,0 +1,4 @@ +export default { + authToken: null, + decodedToken: {}, +} |
