fix(multi-session): return only unique user sessions

This commit is contained in:
Bereket Engida
2025-03-06 12:17:05 +03:00
parent 33cadbe603
commit 97a4c90ca0

View File

@@ -66,7 +66,16 @@ export const multiSession = (options?: MultiSessionConfig) => {
const validSessions = sessions.filter(
(session) => session && session.session.expiresAt > new Date(),
);
return ctx.json(validSessions);
const uniqueUserSessions = validSessions.reduce(
(acc, session) => {
if (!acc.find((s) => s.user.id === session.user.id)) {
acc.push(session);
}
return acc;
},
[] as typeof validSessions,
);
return ctx.json(uniqueUserSessions);
},
),
setActiveSession: createAuthEndpoint(