import { betterAuth } from "better-auth"; import { drizzleAdapter } from "better-auth/adapters/drizzle"; import { db } from "./db"; import { status, type Context } from "elysia"; export const auth = betterAuth({ database: drizzleAdapter(db, { provider: "pg", }), socialProviders: { spotify: { clientId: process.env.SPOTIFY_CLIENT_ID!, clientSecret: process.env.SPOTIFY_CLIENT_SECRET!, }, }, }); export const betterAuthView = (context: Context) => { const BETTER_AUTH_ACCEPT_METHODS = ["POST", "GET"]; if (BETTER_AUTH_ACCEPT_METHODS.includes(context.request.method)) { return auth.handler(context.request); } else { throw status(405); } };