UNPKG

custom-api-handler

Version:

The package uses axios library to request APIs and uses local-storage for tokens (auth & refresh).

54 lines 2.22 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.isRefreshTokenExpired = exports.isAccessTokenExpired = void 0; const jwt_decode_1 = __importDefault(require("jwt-decode")); const moment_1 = __importDefault(require("moment")); const customMsgs_1 = require("./customMsgs"); /** * Method for auth-token expiry check * @param expireIntervalInSec | Seconds to expire the token * @returns | Boolean ? true -> if Session : false */ const isAccessTokenExpired = (expireIntervalInSec = -32) => { try { let authTokenValue = localStorage.getItem(customMsgs_1.authToken); let tokenBody = jwt_decode_1.default(authTokenValue); let currentTime = moment_1.default(Date.now()); let expirationTime = moment_1.default.unix(tokenBody === null || tokenBody === void 0 ? void 0 : tokenBody.exp); let currTimeDiff = currentTime.diff(expirationTime, "second"); if (currTimeDiff > expireIntervalInSec) { return true; } return false; } catch (error) { return true; } }; exports.isAccessTokenExpired = isAccessTokenExpired; /** * Method for refresh-token expiry check * @param expireIntervalInSec | Seconds to expire the token * @returns | Boolean ? true -> if Session : false */ const isRefreshTokenExpired = (expireIntervalInSec = -32) => { try { let refreshTokenValue = localStorage.getItem(customMsgs_1.refreshToken); let tokenBody = jwt_decode_1.default(refreshTokenValue); let currentTime = moment_1.default(Date.now()); let expirationTime = moment_1.default.unix(tokenBody === null || tokenBody === void 0 ? void 0 : tokenBody.exp); let currTimeDiff = currentTime.diff(expirationTime, "second"); if (currTimeDiff > -expireIntervalInSec) { return true; } return false; } catch (error) { return true; } }; exports.isRefreshTokenExpired = isRefreshTokenExpired; //# sourceMappingURL=customValidations.js.map