initial set up
This commit is contained in:
@@ -0,0 +1,33 @@
|
||||
import NextAuth from "next-auth";
|
||||
import Providers from "next-auth/providers";
|
||||
import { Magic } from "@magic-sdk/admin";
|
||||
|
||||
const magic = new Magic(process.env.MAGIC_SK);
|
||||
|
||||
export default NextAuth({
|
||||
session: {
|
||||
jwt: true,
|
||||
},
|
||||
pages: {
|
||||
// override signIn page so we can integrate with Magic
|
||||
signIn: "/auth/signin",
|
||||
},
|
||||
providers: [
|
||||
Providers.Credentials({
|
||||
name: "Magic Link",
|
||||
credentials: {
|
||||
didToken: { label: "DID Token", type: "text" },
|
||||
},
|
||||
async authorize({ didToken }, req) {
|
||||
// validate magic DID token
|
||||
magic.token.validate(didToken);
|
||||
|
||||
// fetch user metadata
|
||||
const metadata = await magic.users.getMetadataByToken(didToken);
|
||||
|
||||
// return user info
|
||||
return { ...metadata };
|
||||
},
|
||||
}),
|
||||
],
|
||||
});
|
||||
Reference in New Issue
Block a user