UNPKG

pricing4react

Version:

A library of components that ease the integration of feature toggling driven by pricing plans into your React application's UI.

61 lines (60 loc) 2.32 kB
"use strict"; exports.__esModule = true; var buffer_1 = require("buffer"); function parseJwt(token) { return JSON.parse(buffer_1.Buffer.from(token.split('.')[1], 'base64').toString()); } var TokenService = /** @class */ (function () { function TokenService() { } TokenService.prototype.getLocalRefreshToken = function () { var user = JSON.parse(localStorage.getItem("user")); return user === null || user === void 0 ? void 0 : user.refreshToken; }; TokenService.prototype.getLocalPricingToken = function () { var jwt = JSON.parse(localStorage.getItem("pricingToken")); return jwt ? jwt : null; }; TokenService.prototype.getFromToken = function (key) { var jwt = JSON.parse(localStorage.getItem("pricingToken")); if (jwt) { var jwtBody = parseJwt(jwt); return jwtBody[key]; } return null; }; TokenService.prototype.updateLocalPricingToken = function (token) { window.localStorage.setItem("pricingToken", JSON.stringify(token)); }; TokenService.prototype.getUser = function () { return JSON.parse(localStorage.getItem("user")); }; TokenService.prototype.setUser = function (user) { window.localStorage.setItem("user", JSON.stringify(user)); }; TokenService.prototype.removeUser = function () { window.localStorage.removeItem("user"); window.localStorage.removeItem("pricingToken"); }; TokenService.prototype.updateJWTToken = function () { var _this = this; return new Promise(function (resolve, reject) { fetch("/api/v1/auth/refreshToken", { method: 'POST', headers: { "Authorization": "Bearer ".concat(_this.getLocalPricingToken()), 'Content-Type': 'application/json' } }) .then(function (response) { return response.json(); }) .then(function (data) { console.log(data); _this.updateLocalPricingToken(data.newToken); resolve(); })["catch"](function (error) { reject(error); }); }); }; return TokenService; }()); var tokenService = new TokenService(); exports["default"] = tokenService;