UNPKG

ng-ebi-authorization

Version:

The ng-ebi-authorization is a simple authentication Angular library that relies on EBI's Authentication and Authorization Profile (AAP) infrastructure. After successful login, a JWT token is stored on the browser (via cookie, local or session storage).

48 lines 3.16 kB
/** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ import { InjectionToken } from '@angular/core'; /** * @record */ export function AuthConfig() { } if (false) { /** @type {?} */ AuthConfig.prototype.aapURL; /** @type {?} */ AuthConfig.prototype.tokenGetter; /** @type {?|undefined} */ AuthConfig.prototype.tokenRemover; /** @type {?} */ AuthConfig.prototype.tokenUpdater; } /** @type {?} */ export const AAP_CONFIG = new InjectionToken('AAP_CONFIG'); /** * @return {?} */ export function getToken() { return localStorage.getItem('id_token') || ''; } /** * @return {?} */ export function removeToken() { return localStorage.removeItem('id_token'); } /** * @param {?} newToken * @return {?} */ export function updateToken(newToken) { return localStorage.setItem('id_token', newToken); } /** @type {?} */ export const DEFAULT_CONF = { aapURL: 'https://api.aai.ebi.ac.uk', tokenGetter: getToken, tokenRemover: removeToken, tokenUpdater: updateToken }; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aC5jb25maWcuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9uZy1lYmktYXV0aG9yaXphdGlvbi8iLCJzb3VyY2VzIjpbImF1dGgvYXV0aC5jb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFDSCxjQUFjLEVBQ2pCLE1BQU0sZUFBZSxDQUFDOzs7O0FBRXZCLGdDQUtDOzs7SUFKRyw0QkFBZTs7SUFDZixpQ0FBMEI7O0lBQzFCLGtDQUEwQjs7SUFDMUIsa0NBQXNDOzs7QUFHMUMsTUFBTSxPQUFPLFVBQVUsR0FBRyxJQUFJLGNBQWMsQ0FBaUIsWUFBWSxDQUFDOzs7O0FBRTFFLE1BQU0sVUFBVSxRQUFRO0lBQ3BCLE9BQU8sWUFBWSxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsSUFBSSxFQUFFLENBQUM7QUFDbEQsQ0FBQzs7OztBQUNELE1BQU0sVUFBVSxXQUFXO0lBQ3ZCLE9BQU8sWUFBWSxDQUFDLFVBQVUsQ0FBQyxVQUFVLENBQUMsQ0FBQztBQUMvQyxDQUFDOzs7OztBQUNELE1BQU0sVUFBVSxXQUFXLENBQUMsUUFBZ0I7SUFDeEMsT0FBTyxZQUFZLENBQUMsT0FBTyxDQUFDLFVBQVUsRUFBRSxRQUFRLENBQUMsQ0FBQztBQUN0RCxDQUFDOztBQUNELE1BQU0sT0FBTyxZQUFZLEdBQWU7SUFDcEMsTUFBTSxFQUFFLDJCQUEyQjtJQUNuQyxXQUFXLEVBQUUsUUFBUTtJQUNyQixZQUFZLEVBQUUsV0FBVztJQUN6QixZQUFZLEVBQUUsV0FBVztDQUM1QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgSW5qZWN0aW9uVG9rZW5cbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgQXV0aENvbmZpZyB7XG4gICAgYWFwVVJMOiBzdHJpbmc7XG4gICAgdG9rZW5HZXR0ZXI6ICgpID0+IHN0cmluZztcbiAgICB0b2tlblJlbW92ZXI/OiAoKSA9PiB2b2lkO1xuICAgIHRva2VuVXBkYXRlcjogKG5ld1Rva2VuOiBhbnkpID0+IHZvaWQ7XG59XG5cbmV4cG9ydCBjb25zdCBBQVBfQ09ORklHID0gbmV3IEluamVjdGlvblRva2VuIDwgQXV0aENvbmZpZyA+ICgnQUFQX0NPTkZJRycpO1xuXG5leHBvcnQgZnVuY3Rpb24gZ2V0VG9rZW4oKTogc3RyaW5nIHtcbiAgICByZXR1cm4gbG9jYWxTdG9yYWdlLmdldEl0ZW0oJ2lkX3Rva2VuJykgfHwgJyc7XG59XG5leHBvcnQgZnVuY3Rpb24gcmVtb3ZlVG9rZW4oKTogdm9pZCB7XG4gICAgcmV0dXJuIGxvY2FsU3RvcmFnZS5yZW1vdmVJdGVtKCdpZF90b2tlbicpO1xufVxuZXhwb3J0IGZ1bmN0aW9uIHVwZGF0ZVRva2VuKG5ld1Rva2VuOiBzdHJpbmcpOiB2b2lkIHtcbiAgICByZXR1cm4gbG9jYWxTdG9yYWdlLnNldEl0ZW0oJ2lkX3Rva2VuJywgbmV3VG9rZW4pO1xufVxuZXhwb3J0IGNvbnN0IERFRkFVTFRfQ09ORjogQXV0aENvbmZpZyA9IHtcbiAgICBhYXBVUkw6ICdodHRwczovL2FwaS5hYWkuZWJpLmFjLnVrJyxcbiAgICB0b2tlbkdldHRlcjogZ2V0VG9rZW4sXG4gICAgdG9rZW5SZW1vdmVyOiByZW1vdmVUb2tlbixcbiAgICB0b2tlblVwZGF0ZXI6IHVwZGF0ZVRva2VuXG59O1xuIl19