@@ -64,13 +64,13 @@ const formData = ref({
const handleSubmit = async () => {
-
+ console.log(formData, authStore)
toast.promise(authStore.login(formData.value), {
loading: 'Calling API',
success: (data) => {
return `Login Sucessfull - ${data?.name}`
},
- error: (data) => `[API] Error saving game - ${data?.response?.data?.message}`,
+ error: (data) => `[API] Error - ${data?.response?.data?.message}`
})
diff --git a/frontend/src/stores/auth.js b/frontend/src/stores/auth.js
index a2f86ee..c5bef31 100644
--- a/frontend/src/stores/auth.js
+++ b/frontend/src/stores/auth.js
@@ -6,18 +6,36 @@ export const useAuthStore = defineStore('auth', () => {
const apiStore = useAPIStore()
const currentUser = ref(undefined)
+ const token = ref(localStorage.getItem('token') || null)
const isLoggedIn = computed(() => {
- return currentUser.value !== undefined
+ return currentUser.value !== undefined && token.value !== null
})
const currentUserID = computed(() => {
return currentUser.value?.id
})
+ const setToken = (jwtToken) => {
+ token.value = jwtToken
+ if (jwtToken) {
+ localStorage.setItem('token', jwtToken)
+ } else {
+ localStorage.removeItem('token')
+ }
+ }
+
+ const getToken = () => {
+ return token.value
+ }
+
const login = async (credentials) => {
await apiStore.postLogin(credentials)
const response = await apiStore.getAuthUser()
+ const jwtToken = response
+ const user = response.data
+
+ setToken(jwtToken)
currentUser.value = response.data
return response.data
}
@@ -25,12 +43,16 @@ export const useAuthStore = defineStore('auth', () => {
const logout = async () => {
await apiStore.postLogout()
currentUser.value = undefined
+ setToken(null)
}
return {
currentUser,
isLoggedIn,
currentUserID,
+ token,
+ setToken,
+ getToken,
login,
logout,
}