34 lines
No EOL
849 B
TypeScript
34 lines
No EOL
849 B
TypeScript
import NextAuth from "next-auth";
|
|
import { DrizzleAdapter } from "@auth/drizzle-adapter";
|
|
import { db } from "@/db";
|
|
import { accounts, sessions, users, verificationTokens } from "@/db/schema/auth";
|
|
import Email from "next-auth/providers/email";
|
|
|
|
export const { handlers, auth, signIn, signOut } = NextAuth({
|
|
adapter: DrizzleAdapter(db, {
|
|
accountsTable: accounts,
|
|
sessionsTable: sessions,
|
|
usersTable: users,
|
|
verificationTokensTable: verificationTokens,
|
|
}),
|
|
providers: [
|
|
Email({
|
|
server: {
|
|
host: "smtp.resend.com",
|
|
port: 587,
|
|
auth: {
|
|
user: "resend",
|
|
pass: process.env.RESEND_API_KEY,
|
|
},
|
|
},
|
|
from: "Tia <tia@manohargupta.com>",
|
|
}),
|
|
],
|
|
pages: {
|
|
signIn: "/login",
|
|
},
|
|
session: {
|
|
strategy: "database",
|
|
maxAge: 30 * 24 * 60 * 60,
|
|
},
|
|
}); |