Skip to content

Commit 9845490

Browse files
minor optimization and undefined session handle
1 parent f33b158 commit 9845490

File tree

1 file changed

+7
-8
lines changed

1 file changed

+7
-8
lines changed

src/mpcCoreKit.ts

Lines changed: 7 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -387,20 +387,23 @@ export class Web3AuthMPCCoreKit implements ICoreKit {
387387
}
388388

389389
// get postbox key.
390-
let loginResponse: TorusKey;
390+
let loginPromise: Promise<TorusKey>;
391391
if (!params.subVerifier) {
392392
// single verifier login.
393-
loginResponse = await this.torusSp.customAuthInstance.getTorusKey(verifier, verifierId, { verifier_id: verifierId }, idToken, {
393+
loginPromise = this.torusSp.customAuthInstance.getTorusKey(verifier, verifierId, { verifier_id: verifierId }, idToken, {
394394
...params.extraVerifierParams,
395395
...params.additionalParams,
396396
});
397397
} else {
398398
// aggregate verifier login
399-
loginResponse = await this.torusSp.customAuthInstance.getAggregateTorusKey(verifier, verifierId, [
399+
loginPromise = this.torusSp.customAuthInstance.getAggregateTorusKey(verifier, verifierId, [
400400
{ verifier: params.subVerifier, idToken, extraVerifierParams: params.extraVerifierParams },
401401
]);
402402
}
403403

404+
// wait for prefetch completed before setup tkey
405+
const [loginResponse] = await Promise.all([loginPromise, prefetchTssPublicKeys]);
406+
404407
const postBoxKey = this._getPostBoxKey(loginResponse);
405408

406409
this.torusSp.postboxKey = new BN(postBoxKey, "hex");
@@ -410,10 +413,6 @@ export class Web3AuthMPCCoreKit implements ICoreKit {
410413
userInfo: { ...parseToken(idToken), verifier, verifierId },
411414
signatures: this._getSignatures(loginResponse.sessionData.sessionTokenData),
412415
});
413-
414-
// wait for prefetch completed before setup tkey
415-
await Promise.all(prefetchTssPubs);
416-
417416
await this.setupTkey(importTssKey);
418417
} catch (err: unknown) {
419418
log.error("login error", err);
@@ -1190,7 +1189,7 @@ export class Web3AuthMPCCoreKit implements ICoreKit {
11901189
}
11911190

11921191
private _getSignatures(sessionData: TorusKey["sessionData"]["sessionTokenData"]): string[] {
1193-
return sessionData.map((session) => JSON.stringify({ data: session.token, sig: session.signature }));
1192+
return sessionData.filter((session) => !!session).map((session) => JSON.stringify({ data: session.token, sig: session.signature }));
11941193
}
11951194

11961195
private isNodejsOrRN(params: CoreKitMode): boolean {

0 commit comments

Comments
 (0)