diff --git a/src/components/Header.vue b/src/components/Header.vue
index 65d4671..048ab71 100644
--- a/src/components/Header.vue
+++ b/src/components/Header.vue
@@ -5,13 +5,18 @@
toggleDark()">
-
+ setToken('')">
+
+
diff --git a/src/components/icons/IconLogout.vue b/src/components/icons/IconLogout.vue
new file mode 100644
index 0000000..11ec9b2
--- /dev/null
+++ b/src/components/icons/IconLogout.vue
@@ -0,0 +1,8 @@
+
+
+
diff --git a/src/components/icons/IconMenu.vue b/src/components/icons/IconMenu.vue
deleted file mode 100644
index 1852c4c..0000000
--- a/src/components/icons/IconMenu.vue
+++ /dev/null
@@ -1,8 +0,0 @@
-
-
-
diff --git a/src/components/icons/index.ts b/src/components/icons/index.ts
index 07964c1..0ec8768 100644
--- a/src/components/icons/index.ts
+++ b/src/components/icons/index.ts
@@ -5,5 +5,5 @@ export { default as IconLink } from './IconLink.vue'
export { default as IconSpinner } from './IconSpinner.vue'
export { default as IconNoGift } from './IconNoGift.vue'
export { default as IconLightDark } from './IconLightDark.vue'
-export { default as IconMenu } from './IconMenu.vue'
+export { default as IconLogout } from './IconLogout.vue'
export { default as IconCloudQuestion } from './IconCloudQuestion.vue'
diff --git a/src/composables/index.ts b/src/composables/index.ts
index 698d7ff..bae9bf9 100644
--- a/src/composables/index.ts
+++ b/src/composables/index.ts
@@ -1,3 +1,5 @@
export * from './useWishlistsStore'
export * from './useWishlistStore'
export * from './useModal'
+export * from './useAxios'
+export * from './useAuth'
diff --git a/src/composables/useAuth.ts b/src/composables/useAuth.ts
index c0cee60..8e5fa54 100644
--- a/src/composables/useAuth.ts
+++ b/src/composables/useAuth.ts
@@ -1,4 +1,4 @@
-import { readonly } from 'vue'
+import { computed, readonly } from 'vue'
import { useStorage } from '@vueuse/core'
const state = useStorage('auth-token', '')
@@ -7,9 +7,14 @@ const setToken = (token: string): void => {
state.value = token
}
-export default () => {
+const isAuthenticated = computed(() => {
+ return state.value !== ''
+})
+
+export const useAuth = () => {
return {
setToken,
+ isAuthenticated,
token: readonly(state),
}
}
diff --git a/src/composables/useAxios.ts b/src/composables/useAxios.ts
index 40732ed..e444108 100644
--- a/src/composables/useAxios.ts
+++ b/src/composables/useAxios.ts
@@ -7,7 +7,7 @@ import axios, {
import { apiConfig } from '@/config'
import { ref } from 'vue'
import router from '../router'
-import useAuth from './useAuth'
+import { useAuth } from './useAuth'
export interface CustomAxiosError extends AxiosError {
ignore: boolean
diff --git a/src/views/LoginView.vue b/src/views/LoginView.vue
index b57dfa6..fc957ea 100644
--- a/src/views/LoginView.vue
+++ b/src/views/LoginView.vue
@@ -3,7 +3,7 @@ import { useRouter } from 'vue-router'
import { useI18n } from 'vue-i18n'
import { Form } from 'vee-validate'
import { object, string } from 'yup'
-import useAuth from '@/composables/useAuth'
+import { useAuth } from '@/composables'
import BaseButton from '@/components/BaseButton.vue'
import TextInput from '@/components/TextInput.vue'