import { betterAuth } from 'better-auth'
import { genericOAuth, username } from 'better-auth/plugins'
import { nextCookies } from "better-auth/next-js";
// Database adapter
import { prismaAdapter } from "better-auth/adapters/prisma";
import { PrismaService } from '@/core/services/server/prisma'
import { hashPass, isSamePass, isSamePassword } from '@/core/utils/auth'
export const auth = betterAuth({
database: prismaAdapter(PrismaService, {
provider: 'sqlite',
}),
user: {
additionalFields: {
// ...
},
},
emailAndPassword: {
enabled: true,
password: {
hash: hashPass,
verify: (data) => {
console.error("NOT PRINTING")
return isSamePass(data.password, data.hash)
},
},
},
socialProviders: {
google: {
// ...
},
},
plugins: [
genericOAuth({
config: [
// ....
],
}),
username(),
nextCookies(),
],
})
export type Session = typeof auth.$Infer.Session
import { betterAuth } from 'better-auth'
import { genericOAuth, username } from 'better-auth/plugins'
import { nextCookies } from "better-auth/next-js";
// Database adapter
import { prismaAdapter } from "better-auth/adapters/prisma";
import { PrismaService } from '@/core/services/server/prisma'
import { hashPass, isSamePass, isSamePassword } from '@/core/utils/auth'
export const auth = betterAuth({
database: prismaAdapter(PrismaService, {
provider: 'sqlite',
}),
user: {
additionalFields: {
// ...
},
},
emailAndPassword: {
enabled: true,
password: {
hash: hashPass,
verify: (data) => {
console.error("NOT PRINTING")
return isSamePass(data.password, data.hash)
},
},
},
socialProviders: {
google: {
// ...
},
},
plugins: [
genericOAuth({
config: [
// ....
],
}),
username(),
nextCookies(),
],
})
export type Session = typeof auth.$Infer.Session