// auth.ts
import { betterAuth } from "better-auth";
import { z } from "zod";
export const createAuth = (env: Env) =>
betterAuth({
basePath: "/api/auth",
database: env.AUTH_DB,
socialProviders: {
google: {
clientId: env.GOOGLE_CLIENT_ID,
clientSecret: env.GOOGLE_CLIENT_SECRET,
},
},
user: {
additionalFields: {
role: {
type: "string",
validator: {
input: z.enum(["guest", "user", "admin"]).default("guest"),
},
},
active: {
type: "boolean",
validator: {
input: z.boolean(),
},
defaultValue: false,
},
},
},
});
// auth.ts
import { betterAuth } from "better-auth";
import { z } from "zod";
export const createAuth = (env: Env) =>
betterAuth({
basePath: "/api/auth",
database: env.AUTH_DB,
socialProviders: {
google: {
clientId: env.GOOGLE_CLIENT_ID,
clientSecret: env.GOOGLE_CLIENT_SECRET,
},
},
user: {
additionalFields: {
role: {
type: "string",
validator: {
input: z.enum(["guest", "user", "admin"]).default("guest"),
},
},
active: {
type: "boolean",
validator: {
input: z.boolean(),
},
defaultValue: false,
},
},
},
});