@commercelayer/sdk
Version:
Commerce Layer Javascript SDK
40 lines (38 loc) • 1.09 kB
JavaScript
;
// src/util.ts
var sleep = async (ms) => {
return new Promise((resolve) => setTimeout(resolve, ms));
};
var sortObjectFields = (obj) => {
const sorted = Object.keys(obj).sort().reduce((accumulator, key) => {
accumulator[key] = obj[key];
return accumulator;
}, {});
return sorted;
};
var extractTokenData = (token) => {
try {
const data = JSON.parse(atob(token.split(".")[1]));
return {
organization: data.organization.slug,
domain: data.iss ? String(data.iss).replace("https://auth.", "") : void 0,
expiration: data.exp
};
} catch (err) {
return void 0;
}
};
var isTokenExpired = (token) => {
try {
const tokenData = extractTokenData(token);
return tokenData?.expiration ? tokenData.expiration * 1e3 - Date.now() < 0 : false;
} catch (err) {
return false;
}
};
exports.extractTokenData = extractTokenData;
exports.isTokenExpired = isTokenExpired;
exports.sleep = sleep;
exports.sortObjectFields = sortObjectFields;
//# sourceMappingURL=chunk-SRW7OWVS.cjs.map
//# sourceMappingURL=chunk-SRW7OWVS.cjs.map