fix: prisma url in schema + first user becomes ADMIN

- Add url = env("DATABASE_URL") back to schema (required by Prisma 7.5)
- Simplify prisma.config.ts
- First registered user auto-promoted to ADMIN via databaseHooks
- Subsequent users get HOST role
This commit is contained in:
2026-03-24 03:54:55 +03:00
parent e59ba0ab97
commit a6c744223b
4 changed files with 27 additions and 8 deletions

View File

@@ -43,4 +43,27 @@ export const auth = betterAuth({
expiresIn: 60 * 60 * 24 * 7, // 7 days
updateAge: 60 * 60 * 24, // 1 day
},
user: {
additionalFields: {
role: {
type: "string",
defaultValue: "HOST",
input: false,
},
},
},
databaseHooks: {
user: {
create: {
before: async (user) => {
// Первый зарегистрированный пользователь → ADMIN
const count = await prisma.user.count();
if (count === 0) {
return { data: { ...user, role: "ADMIN" } };
}
return { data: { ...user, role: "HOST" } };
},
},
},
},
});