From 7b87ff2f045e12235d28cea739775a59dc36c0f0 Mon Sep 17 00:00:00 2001 From: Francesco Date: Thu, 19 Feb 2026 02:57:42 +0000 Subject: [PATCH] chore: Update auth files for NextAuth v5 compatibility Breaking changes for NextAuth v5: - Updated route.ts to use NextAuthConfig and new export pattern - Changed getServerSession import to use auth from config - Updated types and session handling for NextAuth v5 - Maintained backward compatibility with existing auth flow --- frontend/app/api/auth/[...nextauth]/route.ts | 13 ++++++++----- frontend/lib/auth.ts | 4 ++-- 2 files changed, 10 insertions(+), 7 deletions(-) diff --git a/frontend/app/api/auth/[...nextauth]/route.ts b/frontend/app/api/auth/[...nextauth]/route.ts index 991f3a5..99297d5 100644 --- a/frontend/app/api/auth/[...nextauth]/route.ts +++ b/frontend/app/api/auth/[...nextauth]/route.ts @@ -2,8 +2,9 @@ import NextAuth from 'next-auth' import GitHub from 'next-auth/providers/github' import Google from 'next-auth/providers/google' import Credentials from 'next-auth/providers/credentials' +import type { NextAuthConfig } from 'next-auth' -const handler = NextAuth({ +export const config: NextAuthConfig = { providers: [ GitHub({ clientId: process.env.GITHUB_ID, @@ -49,8 +50,8 @@ const handler = NextAuth({ }, async session({ session, token }) { if (session.user) { - session.user.id = token.id - session.user.email = token.email + session.user.id = token.id as string + session.user.email = token.email as string } return session } @@ -59,6 +60,8 @@ const handler = NextAuth({ strategy: 'jwt', maxAge: 30 * 24 * 60 * 60, // 30 days } -}) +} -export { handler as GET, handler as POST } +export const { handlers, auth, signIn, signOut } = NextAuth(config) + +export { handlers as GET, handlers as POST } diff --git a/frontend/lib/auth.ts b/frontend/lib/auth.ts index 5b95e59..03edfb4 100644 --- a/frontend/lib/auth.ts +++ b/frontend/lib/auth.ts @@ -1,8 +1,8 @@ -import { getServerSession } from 'next-auth' +import { auth } from '@/app/api/auth/[...nextauth]/route' import { redirect } from 'next/navigation' export async function requireAuth() { - const session = await getServerSession() + const session = await auth() if (!session || !session.user) { redirect('/auth/signin')