Skip to content

Commit

Permalink
remove extra logs + add storage server url
Browse files Browse the repository at this point in the history
  • Loading branch information
arch1995 committed Mar 7, 2024
1 parent 4cc7638 commit e63fa62
Show file tree
Hide file tree
Showing 4 changed files with 8 additions and 10 deletions.
10 changes: 4 additions & 6 deletions src/handlers/PasskeysHandler.ts
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
import base64url from "base64url";
import deepmerge from "lodash.merge";
import log from "loglevel";

import { LOGIN_TYPE, UX_MODE_TYPE } from "../utils/enums";
import { fetchDataFromBroadcastServer } from "../utils/sessionHelper";
Expand All @@ -24,7 +23,8 @@ export default class WebAuthnHandler extends AbstractLoginHandler {

setFinalUrl(): void {
const { passkeysHostUrl } = this.customState || {};
const finalUrl = passkeysHostUrl ? new URL(passkeysHostUrl) : new URL("https://passkeys.web3auth.io");
if (!passkeysHostUrl) throw new Error("Invalid passkeys url.");
const finalUrl = new URL(passkeysHostUrl);
const clonedParams = JSON.parse(JSON.stringify(this.jwtParams || {}));
const finalJwtParams = deepmerge(
{
Expand All @@ -37,15 +37,13 @@ export default class WebAuthnHandler extends AbstractLoginHandler {
Object.keys(finalJwtParams).forEach((key) => {
if (finalJwtParams[key]) finalUrl.searchParams.append(key, finalJwtParams[key]);
});
log.info("final url", finalUrl);
this.finalURL = finalUrl;
}

async getUserInfo(parameters: LoginWindowResponse): Promise<TorusVerifierResponse> {
async getUserInfo(parameters: LoginWindowResponse, storageServerUrl?: string): Promise<TorusVerifierResponse> {
const { idToken, extraParams } = parameters;

const { sessionId } = JSON.parse(base64url.decode(extraParams)) || {};
log.info("sessionId", sessionId);
if (!sessionId) {
throw new Error("sessionId not found");
}
Expand All @@ -62,7 +60,7 @@ export default class WebAuthnHandler extends AbstractLoginHandler {
credId,
transports,
username,
} = await fetchDataFromBroadcastServer<PasskeySessionData>(sessionId);
} = await fetchDataFromBroadcastServer<PasskeySessionData>(sessionId, storageServerUrl);

if (signature !== idToken) {
throw new Error("idtoken should be equal to signature");
Expand Down
2 changes: 1 addition & 1 deletion src/handlers/interfaces.ts
Original file line number Diff line number Diff line change
Expand Up @@ -68,7 +68,7 @@ export interface ILoginHandler {
clientId: string;
nonce: string;
finalURL: URL;
getUserInfo(params: LoginWindowResponse): Promise<TorusVerifierResponse>;
getUserInfo(params: LoginWindowResponse, storageServerUrl?: string): Promise<TorusVerifierResponse>;
handleLoginWindow(params: { locationReplaceOnRedirect?: boolean; popupFeatures?: string }): Promise<LoginWindowResponse>;
}

Expand Down
2 changes: 1 addition & 1 deletion src/login.ts
Original file line number Diff line number Diff line change
Expand Up @@ -58,7 +58,7 @@ class CustomAuth {
uxMode = UX_MODE.POPUP,
locationReplaceOnRedirect = false,
popupFeatures,
storageServerUrl = "https://broadcast-server.tor.us",
storageServerUrl = "https://session.web3auth.io",
sentry,
enableOneKey = false,
web3AuthClientId,
Expand Down
4 changes: 2 additions & 2 deletions src/utils/sessionHelper.ts
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
import { OpenloginSessionManager } from "@toruslabs/openlogin-session-manager";
import log from "loglevel";

export async function fetchDataFromBroadcastServer<T>(identifier: string) {
export async function fetchDataFromBroadcastServer<T>(identifier: string, storageServerUrl?: string) {
try {
const configManager = new OpenloginSessionManager<T>({
sessionId: identifier,
sessionNamespace: "",
sessionServerBaseUrl: storageServerUrl,
});

const data = await configManager.authorizeSession();
Expand Down

0 comments on commit e63fa62

Please sign in to comment.