UNPKG

@bit-ui-libs/common

Version:
23 lines (19 loc) 688 B
import { AuthClaims } from '../interfaces/auth-claims'; import jwtDecode from 'jwt-decode'; export async function getAuth0Id(claims: AuthClaims, opts?: { keepPrefix: boolean }) { if (opts?.keepPrefix) return claims.sub; return claims.sub.replace('auth0|', ''); } export async function getAuthEmail(claims: AuthClaims) { return claims['https://blackinktech.io/schemas/claims/email']; } export function isTokenExpired(token: string) { try { // If token is undefined / invalid, this throws // "InvalidTokenError: Invalid token specified" const claims = jwtDecode<AuthClaims>(token); return Date.now() / 1000 > claims.exp; } catch (err) { return false; } }