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
JavaScript
;
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