kinde-angular
Version:
Angular wrapper for the Kinde TypeScript SDK
42 lines • 5.9 kB
JavaScript
import { CookieManager } from "./cookie-manager";
const keysInCookie = ['refresh_token', 'access_token', 'acwpf-state-key', 'ac-state-key', 'id_token', 'user', 'post_login_redirect_url'];
const memCache = {};
const sessionManager = {
async getSessionItemBrowser(key) {
return CookieManager.getCookie(key) || memCache[key];
},
async getSessionItem(key) {
return this.getSessionItemBrowser(key);
},
async setSessionItemBrowser(key, value) {
const inCookieList = keysInCookie.find(k => key.includes(k));
if (inCookieList) {
CookieManager.setCookie(key, value);
}
else {
memCache[key] = value;
}
},
async setSessionItem(key, value) {
await this.setSessionItemBrowser(key, value);
},
async removeSessionItemBrowser(key) {
for (const key in memCache) {
delete memCache[key];
}
CookieManager.deleteCookie(key, { path: '' });
},
async removeSessionItem(key) {
await this.removeSessionItemBrowser(key);
},
async destroySession() {
for (const key in memCache) {
delete memCache[key];
}
for (const key of keysInCookie) {
CookieManager.deleteCookie(key, { path: '' });
}
}
};
export { sessionManager };
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2Vzc2lvbi1tYW5hZ2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMva2luZGUtYW5ndWxhci9zcmMvbGliL3Nlc3Npb24tbWFuYWdlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFXakQsTUFBTSxZQUFZLEdBQUcsQ0FBQyxlQUFlLEVBQUUsY0FBYyxFQUFFLGlCQUFpQixFQUFFLGNBQWMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLHlCQUF5QixDQUFDLENBQUE7QUFDeEksTUFBTSxRQUFRLEdBQTJCLEVBQUUsQ0FBQztBQUM1QyxNQUFNLGNBQWMsR0FBb0I7SUFDdEMsS0FBSyxDQUFDLHFCQUFxQixDQUFDLEdBQVc7UUFDckMsT0FBTyxhQUFhLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxJQUFJLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUN2RCxDQUFDO0lBQ0QsS0FBSyxDQUFDLGNBQWMsQ0FBQyxHQUFXO1FBQzlCLE9BQU8sSUFBSSxDQUFDLHFCQUFxQixDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ3pDLENBQUM7SUFDRCxLQUFLLENBQUMscUJBQXFCLENBQUMsR0FBVyxFQUFFLEtBQWM7UUFDckQsTUFBTSxZQUFZLEdBQUcsWUFBWSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUU3RCxJQUFJLFlBQVksRUFBRSxDQUFDO1lBQ2pCLGFBQWEsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFLEtBQWUsQ0FBQyxDQUFDO1FBQ2hELENBQUM7YUFBTSxDQUFDO1lBQ04sUUFBUSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEtBQWUsQ0FBQztRQUNsQyxDQUFDO0lBQ0gsQ0FBQztJQUNELEtBQUssQ0FBQyxjQUFjLENBQUMsR0FBVyxFQUFFLEtBQWM7UUFDOUMsTUFBTSxJQUFJLENBQUMscUJBQXFCLENBQUMsR0FBRyxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQy9DLENBQUM7SUFDRCxLQUFLLENBQUMsd0JBQXdCLENBQUMsR0FBVztRQUN4QyxLQUFLLE1BQU0sR0FBRyxJQUFJLFFBQVEsRUFBRSxDQUFDO1lBQzNCLE9BQU8sUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFBO1FBQ3RCLENBQUM7UUFDRCxhQUFhLENBQUMsWUFBWSxDQUFDLEdBQUcsRUFBRSxFQUFFLElBQUksRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQ2hELENBQUM7SUFDRCxLQUFLLENBQUMsaUJBQWlCLENBQUMsR0FBVztRQUNqQyxNQUFNLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUMzQyxDQUFDO0lBQ0QsS0FBSyxDQUFDLGNBQWM7UUFDbEIsS0FBSyxNQUFNLEdBQUcsSUFBSSxRQUFRLEVBQUUsQ0FBQztZQUMzQixPQUFPLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQTtRQUN0QixDQUFDO1FBQ0QsS0FBSyxNQUFNLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztZQUMvQixhQUFhLENBQUMsWUFBWSxDQUFDLEdBQUcsRUFBRSxFQUFFLElBQUksRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ2hELENBQUM7SUFDSCxDQUFDO0NBQ0YsQ0FBQTtBQUVELE9BQU8sRUFBRSxjQUFjLEVBQUUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFNlc3Npb25NYW5hZ2VyIH0gZnJvbSBcIkBraW5kZS1vc3Mva2luZGUtdHlwZXNjcmlwdC1zZGtcIjtcbmltcG9ydCB7IENvb2tpZU1hbmFnZXIgfSBmcm9tIFwiLi9jb29raWUtbWFuYWdlclwiO1xuXG4vKipcbiAqIFR5cGluZyBzZWVtcyBhIGJpdCBvZmYgaGVyZSwgY3JlYXRlZCBhbiBpc3N1ZTogaHR0cHM6Ly9naXRodWIuY29tL2tpbmRlLW9zcy9raW5kZS10eXBlc2NyaXB0LXNkay9pc3N1ZXMvMzlcbiAqL1xuaW50ZXJmYWNlIEJTZXNzaW9uTWFuYWdlciBleHRlbmRzIFNlc3Npb25NYW5hZ2VyIHtcbiAgZ2V0U2Vzc2lvbkl0ZW1Ccm93c2VyKGtleTogc3RyaW5nKTogUHJvbWlzZTxzdHJpbmcgfCBudWxsPjtcbiAgc2V0U2Vzc2lvbkl0ZW1Ccm93c2VyKGtleTogc3RyaW5nLCB2YWx1ZTogdW5rbm93bik6IFByb21pc2U8dm9pZD47XG4gIHJlbW92ZVNlc3Npb25JdGVtQnJvd3NlcihrZXk6IHN0cmluZyk6IFByb21pc2U8dm9pZD47XG59XG5cbmNvbnN0IGtleXNJbkNvb2tpZSA9IFsncmVmcmVzaF90b2tlbicsICdhY2Nlc3NfdG9rZW4nLCAnYWN3cGYtc3RhdGUta2V5JywgJ2FjLXN0YXRlLWtleScsICdpZF90b2tlbicsICd1c2VyJywgJ3Bvc3RfbG9naW5fcmVkaXJlY3RfdXJsJ11cbmNvbnN0IG1lbUNhY2hlOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+ID0ge307XG5jb25zdCBzZXNzaW9uTWFuYWdlcjogQlNlc3Npb25NYW5hZ2VyID0ge1xuICBhc3luYyBnZXRTZXNzaW9uSXRlbUJyb3dzZXIoa2V5OiBzdHJpbmcpIHtcbiAgICByZXR1cm4gQ29va2llTWFuYWdlci5nZXRDb29raWUoa2V5KSB8fCBtZW1DYWNoZVtrZXldO1xuICB9LFxuICBhc3luYyBnZXRTZXNzaW9uSXRlbShrZXk6IHN0cmluZykge1xuICAgIHJldHVybiB0aGlzLmdldFNlc3Npb25JdGVtQnJvd3NlcihrZXkpO1xuICB9LFxuICBhc3luYyBzZXRTZXNzaW9uSXRlbUJyb3dzZXIoa2V5OiBzdHJpbmcsIHZhbHVlOiB1bmtub3duKSB7XG4gICAgY29uc3QgaW5Db29raWVMaXN0ID0ga2V5c0luQ29va2llLmZpbmQoayA9PiBrZXkuaW5jbHVkZXMoaykpO1xuXG4gICAgaWYgKGluQ29va2llTGlzdCkge1xuICAgICAgQ29va2llTWFuYWdlci5zZXRDb29raWUoa2V5LCB2YWx1ZSBhcyBzdHJpbmcpO1xuICAgIH0gZWxzZSB7XG4gICAgICBtZW1DYWNoZVtrZXldID0gdmFsdWUgYXMgc3RyaW5nO1xuICAgIH1cbiAgfSxcbiAgYXN5bmMgc2V0U2Vzc2lvbkl0ZW0oa2V5OiBzdHJpbmcsIHZhbHVlOiB1bmtub3duKSB7XG4gICAgYXdhaXQgdGhpcy5zZXRTZXNzaW9uSXRlbUJyb3dzZXIoa2V5LCB2YWx1ZSk7XG4gIH0sXG4gIGFzeW5jIHJlbW92ZVNlc3Npb25JdGVtQnJvd3NlcihrZXk6IHN0cmluZykge1xuICAgIGZvciAoY29uc3Qga2V5IGluIG1lbUNhY2hlKSB7XG4gICAgICBkZWxldGUgbWVtQ2FjaGVba2V5XVxuICAgIH1cbiAgICBDb29raWVNYW5hZ2VyLmRlbGV0ZUNvb2tpZShrZXksIHsgcGF0aDogJycgfSk7XG4gIH0sXG4gIGFzeW5jIHJlbW92ZVNlc3Npb25JdGVtKGtleTogc3RyaW5nKSB7XG4gICAgYXdhaXQgdGhpcy5yZW1vdmVTZXNzaW9uSXRlbUJyb3dzZXIoa2V5KTtcbiAgfSxcbiAgYXN5bmMgZGVzdHJveVNlc3Npb24oKSB7XG4gICAgZm9yIChjb25zdCBrZXkgaW4gbWVtQ2FjaGUpIHtcbiAgICAgIGRlbGV0ZSBtZW1DYWNoZVtrZXldXG4gICAgfVxuICAgIGZvciAoY29uc3Qga2V5IG9mIGtleXNJbkNvb2tpZSkge1xuICAgICAgQ29va2llTWFuYWdlci5kZWxldGVDb29raWUoa2V5LCB7IHBhdGg6ICcnIH0pO1xuICAgIH1cbiAgfVxufVxuXG5leHBvcnQgeyBzZXNzaW9uTWFuYWdlciB9O1xuIl19