Перестает работать вход через CredentialsProvider, после добавления adapter: MongoDBAdapter(clientPromise)
Вот собственно файл /app/api/auth/[...nextauth]/route.ts Как только убираю MongoDBAdapter, сразу же работает авторизация через сredentials. Впервые сталкиваюсь с этим, кто подскажет как заставить работать сredentials при установленном MongoDBAdapter???
import clientPromise from "@/libs/mongoClient";
import { User } from "@/models/User";
import { MongoDBAdapter } from "@next-auth/mongodb-adapter";
import mongoose from "mongoose";
import NextAuth from "next-auth";
import CredentialsProvider from "next-auth/providers/credentials";
import GoogleProvider from "next-auth/providers/google";
const handler = NextAuth({
secret: process.env.AUTH_SECRET_KEY,
adapter: MongoDBAdapter(clientPromise),
providers: [
GoogleProvider({
clientId: process.env.GOOGLE_CLIENT_ID!,
clientSecret: process.env.GOOGLE_CLIENT_SECRET!,
}),
CredentialsProvider({
name: "Credentials",
id: "credentials",
credentials: {
email: {
label: "Email",
type: "email",
placeholder: "[email protected]",
},
password: { label: "Password", type: "password" },
},
async authorize(credentials, req) {
const email = credentials?.email;
const password = credentials?.password;
mongoose.connect(process.env.MONGO_URI!);
const user = await User.findOne({ email });
const passwordOk = user && password === user.password;
if (passwordOk) {
return user;
}
return null;
},
}),
],
});
export { handler as GET, handler as POST };