perf upgrade

This commit is contained in:
yohlo
2026-07-12 21:26:16 -07:00
parent ec334bbed4
commit 778f0f7994
74 changed files with 1522 additions and 1014 deletions
+18 -3
View File
@@ -3,6 +3,22 @@ import { ensureSuperTokensBackend } from "../server";
import { logger } from "../";
import SuperTokens from "supertokens-node";
const USER_PHONE_TTL_MS = 60 * 1000;
const userPhoneCache = new Map<string, { phone: string | undefined; expiresAt: number }>();
async function getUserPhone(userId: string): Promise<string | undefined> {
const now = Date.now();
const cached = userPhoneCache.get(userId);
if (cached && cached.expiresAt > now) {
return cached.phone;
}
const user = await SuperTokens.getUser(userId);
const phone = user?.phoneNumbers[0];
userPhoneCache.set(userId, { phone, expiresAt: now + USER_PHONE_TTL_MS });
return phone;
}
export async function getSessionForStart(request: Request, options?: { sessionRequired?: boolean }) {
ensureSuperTokensBackend();
@@ -52,15 +68,14 @@ export async function getSessionForStart(request: Request, options?: { sessionRe
}
}
const user = await SuperTokens.getUser(userId);
const phone = await getUserPhone(userId);
return {
hasToken: true,
accessTokenPayload: session.accessTokenPayload,
userId,
sessionHandle: session.accessTokenPayload?.sessionHandle,
phone: user?.phoneNumbers[0]
phone
};
}