@dataswift/hat-js
Version:
HAT JavaScript SDK for web and Node.js
40 lines (39 loc) • 1.61 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.authentication = void 0;
var HatCustomError_1 = require("../utils/HatCustomError");
var HatTokenValidation_1 = require("../utils/HatTokenValidation");
var Utils_1 = require("../utils/Utils");
var authentication = function (state, headers, httpSvc) {
return {
generateHatLoginUrl: function (hatDomain, application, redirect, fallback) {
if (!hatDomain)
throw new HatCustomError_1.HatCustomError(HatCustomError_1.HatCustomErrorCauses.hatClientValidation, HatCustomError_1.HatCustomErrorMessages.hatDomainIsUndefined);
return hatDomain + "/#/hatlogin?name=" + application + "&redirect=" + redirect + "&fallback=" + fallback;
},
isDomainRegistered: function (hatUrl) {
return new Promise(function (resolve, reject) {
fetch(Utils_1.Utils.getProtocol(state.secure) + hatUrl + "/publickey")
.then(function (res) {
resolve(res.ok);
})
.catch(function (e) {
resolve(false);
});
});
},
signOut: function () {
state.signOut();
},
getHatDomain: function () {
return state.hatDomain;
},
getToken: function () {
return state.token;
},
isTokenExpired: function (token) {
return HatTokenValidation_1.HatTokenValidation.isEncodedTokenExpired(token);
},
};
};
exports.authentication = authentication;