30 lines
721 B
TypeScript
30 lines
721 B
TypeScript
import NextAuth from "next-auth"
|
|
import TwitchProvider from "next-auth/providers/twitch"
|
|
|
|
const handler = NextAuth({
|
|
providers: [
|
|
TwitchProvider({
|
|
clientId: process.env.TWITCH_CLIENT_ID!,
|
|
clientSecret: process.env.TWITCH_CLIENT_SECRET!,
|
|
}),
|
|
],
|
|
callbacks: {
|
|
async session({ session, token }) {
|
|
if (session?.user) {
|
|
// Pass the user ID to the session
|
|
// Note: We might need to extend the type definition for session.user
|
|
(session.user as any).id = token.sub;
|
|
}
|
|
return session;
|
|
},
|
|
async jwt({ token, user }) {
|
|
if (user) {
|
|
token.id = user.id;
|
|
}
|
|
return token;
|
|
},
|
|
},
|
|
})
|
|
|
|
export { handler as GET, handler as POST }
|