UNPKG

authvisage-sdk

Version:
19 lines 716 B
/** * Utility class for handling PKCE authentication */ export class PKCEHandler { /** * Generates a PKCE challenge pair */ static async generate() { const codeVerifier = crypto.randomUUID(); const encoder = new TextEncoder(); const data = encoder.encode(codeVerifier); const hash = await crypto.subtle.digest("SHA-256", data); const codeChallenge = Buffer.from(hash).toString("base64url"); document.cookie = `${this.PKCE_COOKIE_NAME}=${codeVerifier}; Secure; HttpOnly; SameSite=Lax; Path=/;`; return { codeVerifier, codeChallenge }; } } PKCEHandler.PKCE_COOKIE_NAME = "authVisage:pkce_verifier"; //# sourceMappingURL=pkceHandler.js.map