mirror of
https://github.com/plankanban/planka.git
synced 2025-08-05 13:35:27 +02:00
parent
dab38cbc18
commit
7786533a90
40 changed files with 273 additions and 133 deletions
|
@ -1,15 +1,36 @@
|
|||
import Cookies from 'js-cookie';
|
||||
import jwtDecode from 'jwt-decode';
|
||||
|
||||
import Config from '../constants/Config';
|
||||
|
||||
export const setAccessToken = (accessToken) => {
|
||||
const { exp } = jwtDecode(accessToken);
|
||||
const expires = new Date(exp * 1000);
|
||||
|
||||
Cookies.set(Config.ACCESS_TOKEN_KEY, accessToken, {
|
||||
expires: Config.ACCESS_TOKEN_EXPIRES,
|
||||
expires,
|
||||
secure: window.location.protocol === 'https:',
|
||||
sameSite: 'strict',
|
||||
});
|
||||
|
||||
Cookies.set(Config.ACCESS_TOKEN_VERSION_KEY, Config.ACCESS_TOKEN_VERSION, {
|
||||
expires,
|
||||
});
|
||||
};
|
||||
|
||||
export const getAccessToken = () => Cookies.get(Config.ACCESS_TOKEN_KEY);
|
||||
|
||||
export const removeAccessToken = () => {
|
||||
Cookies.remove(Config.ACCESS_TOKEN_KEY);
|
||||
Cookies.remove(Config.ACCESS_TOKEN_VERSION_KEY);
|
||||
};
|
||||
|
||||
export const getAccessToken = () => {
|
||||
let accessToken = Cookies.get(Config.ACCESS_TOKEN_KEY);
|
||||
const accessTokenVersion = Cookies.get(Config.ACCESS_TOKEN_VERSION_KEY);
|
||||
|
||||
if (accessToken && accessTokenVersion !== Config.ACCESS_TOKEN_VERSION) {
|
||||
removeAccessToken();
|
||||
accessToken = undefined;
|
||||
}
|
||||
|
||||
return accessToken;
|
||||
};
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue