UNPKG

trainingpeaks-sdk

Version:
32 lines (31 loc) 1.01 kB
export const createAuthToken = (accessToken, tokenType, expiresIn, expires, refreshToken) => ({ accessToken, tokenType, expiresIn, expires, refreshToken, }); export const isTokenExpired = (token) => { return new Date() > token.expires; }; export const isTokenValid = (token) => { return !isTokenExpired(token); }; export const refreshAuthToken = (token, newAccessToken, newExpires, newRefreshToken) => ({ ...token, accessToken: newAccessToken, expires: newExpires, refreshToken: newRefreshToken || token.refreshToken, }); export const shouldRefreshToken = (token) => { const fiveMinutesFromNow = new Date(Date.now() + 5 * 60 * 1000); return token.expires <= fiveMinutesFromNow; }; export const getRemainingValidityTime = (token) => { const now = new Date(); const remaining = token.expires.getTime() - now.getTime(); return Math.max(0, remaining); }; export const hasRefreshCapability = (token) => { return Boolean(token.refreshToken); };