refresh-token-util-for-rtk-query
Version:
Reusable RTK Query baseQuery with refresh token
20 lines (18 loc) • 734 B
text/typescript
let ACCESS_KEY = "access_token";
let REFRESH_KEY = "refresh_token";
let LOGIN_FLAG_KEY = "isLoggedIn";
export const tokenStorage = {
getAccessToken: () => localStorage.getItem(ACCESS_KEY),
getRefreshToken: () => localStorage.getItem(REFRESH_KEY),
saveTokens: (tokens: { accessToken: string; refreshToken: string }) => {
localStorage.setItem(ACCESS_KEY, tokens.accessToken);
localStorage.setItem(REFRESH_KEY, tokens.refreshToken);
localStorage.setItem(LOGIN_FLAG_KEY, "true");
},
clearTokens: () => {
localStorage.removeItem(ACCESS_KEY);
localStorage.removeItem(REFRESH_KEY);
localStorage.setItem(LOGIN_FLAG_KEY, "false");
},
isLoggedIn: () => localStorage.getItem(LOGIN_FLAG_KEY) === "true",
};