From 8769fc4dc19447f67a42eb941fb43ba7223772eb Mon Sep 17 00:00:00 2001 From: Arne Schauf Date: Sat, 3 Mar 2018 01:06:44 +0100 Subject: upgrade quasar to latest version --- src/store/index.js | 14 ++++++++++++++ src/store/module-user/actions.js | 4 ++++ src/store/module-user/getters.js | 1 + src/store/module-user/index.js | 12 ++++++++++++ src/store/module-user/mutations.js | 17 +++++++++++++++++ src/store/module-user/state.js | 4 ++++ 6 files changed, 52 insertions(+) create mode 100644 src/store/index.js create mode 100644 src/store/module-user/actions.js create mode 100644 src/store/module-user/getters.js create mode 100644 src/store/module-user/index.js create mode 100644 src/store/module-user/mutations.js create mode 100644 src/store/module-user/state.js (limited to 'src/store') diff --git a/src/store/index.js b/src/store/index.js new file mode 100644 index 0000000..1bc6b7d --- /dev/null +++ b/src/store/index.js @@ -0,0 +1,14 @@ +import Vue from 'vue' +import Vuex from 'vuex' + +import user from './module-user' + +Vue.use(Vuex) + +const store = new Vuex.Store({ + modules: { + user + } +}) + +export default store 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: {}, +} -- cgit v1.2.3-54-g00ecf