Files
hossein-por-shop/frontend/composables/api/auth/useAuth.ts
T
2025-02-23 23:21:41 +03:30

36 lines
730 B
TypeScript

export const useAuth = () => {
// state
const token = useCookie("token");
const refreshToken = useCookie("refresh-token");
// methods
const updateToken = (newToken: string) => {
token.value = newToken;
};
const updateRefreshToken = (newToken: string) => {
refreshToken.value = newToken;
};
const logout = (reload?: boolean) => {
token.value = undefined;
refreshToken.value = undefined;
if (reload) window.location.reload();
};
// computed
const isLoggedIn = computed(() => !!token.value);
return {
token,
refreshToken,
updateRefreshToken,
updateToken,
logout,
isLoggedIn,
};
};