From 97a4c90ca02ad45e0355c683ded419785f8a349e Mon Sep 17 00:00:00 2001 From: Bereket Engida Date: Thu, 6 Mar 2025 12:17:05 +0300 Subject: [PATCH] fix(multi-session): return only unique user sessions --- .../better-auth/src/plugins/multi-session/index.ts | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/packages/better-auth/src/plugins/multi-session/index.ts b/packages/better-auth/src/plugins/multi-session/index.ts index 25474d1680..694daf965e 100644 --- a/packages/better-auth/src/plugins/multi-session/index.ts +++ b/packages/better-auth/src/plugins/multi-session/index.ts @@ -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(