33 lines
691 B
TypeScript
33 lines
691 B
TypeScript
export function useLogout() {
|
|
const userStore = useUserStore();
|
|
const cartStore = useCartStore();
|
|
const wishlistStore = useWishlistStore();
|
|
const router = useRouter();
|
|
const { $appHelpers } = useNuxtApp();
|
|
|
|
const cookieRefresh = useCookie($appHelpers.COOKIES_REFRESH_TOKEN_KEY, {
|
|
default: () => '',
|
|
path: '/',
|
|
});
|
|
const cookieAccess = useCookie($appHelpers.COOKIES_ACCESS_TOKEN_KEY, {
|
|
default: () => '',
|
|
path: '/',
|
|
});
|
|
|
|
async function logout() {
|
|
userStore.setUser(null);
|
|
cartStore.setCurrentOrders(null);
|
|
wishlistStore.setWishlist(null);
|
|
|
|
cookieRefresh.value = '';
|
|
cookieAccess.value = '';
|
|
|
|
await router.push({
|
|
path: '/',
|
|
});
|
|
}
|
|
|
|
return {
|
|
logout,
|
|
};
|
|
}
|