added frontend + securing beta server invites

This commit is contained in:
2026-01-02 22:50:02 +05:30
parent cb12b8ef75
commit 9b17a99456
52 changed files with 5409 additions and 5 deletions

30
web/auth.ts Normal file
View File

@@ -0,0 +1,30 @@
import NextAuth from "next-auth"
import Discord from "next-auth/providers/discord"
export const { handlers, signIn, signOut, auth } = NextAuth({
providers: [
Discord({
authorization: "https://discord.com/api/oauth2/authorize?scope=identify+email+guilds",
}),
],
callbacks: {
async jwt({ token, account, profile }) {
if (account) {
token.accessToken = account.access_token
token.discordId = account.providerAccountId
}
if (profile) {
token.discordId = profile.id
}
return token
},
async session({ session, token }) {
// @ts-expect-error - accessToken is not strictly typed in session yet
session.accessToken = token.accessToken
if (session.user && token.discordId) {
session.user.id = token.discordId as string
}
return session
},
},
})