UNPKG

@bitblit/ratchet-epsilon-common

Version:

Tiny adapter to simplify building API gateway Lambda APIS

27 lines 1.07 kB
import { RequireRatchet } from '@bitblit/ratchet-common/lang/require-ratchet'; import { StringRatchet } from '@bitblit/ratchet-common/lang/string-ratchet'; export class JwtRatchetLocalWebTokenManipulator { _jwtRatchet; _issuer; constructor(_jwtRatchet, _issuer) { this._jwtRatchet = _jwtRatchet; this._issuer = _issuer; RequireRatchet.notNullOrUndefined(_jwtRatchet, '_jwtRatchet'); RequireRatchet.notNullOrUndefined(StringRatchet.trimToNull(_issuer), '_issuer'); } get jwtRatchet() { return this._jwtRatchet; } get issuer() { return this._issuer; } async extractTokenFromAuthorizationHeader(header) { let tokenString = StringRatchet.trimToEmpty(header); if (tokenString.toLowerCase().startsWith('bearer ')) { tokenString = tokenString.substring(7); } const validated = tokenString ? await this.jwtRatchet.decodeToken(tokenString, 1) : null; return validated; } } //# sourceMappingURL=jwt-ratchet-local-web-token-manipulator.js.map