simplify better-auth integration in elysia routes

This commit is contained in:
2026-02-24 21:04:06 -05:00
parent 122030e487
commit ae9f081f90
6 changed files with 53 additions and 160 deletions

View File

@@ -1,6 +1,6 @@
import { Elysia } from 'elysia';
import type { Holding, TaskStatus, WatchlistItem } from '@/lib/types';
import { ensureAuthSchema } from '@/lib/auth';
import { auth } from '@/lib/auth';
import { requireAuthenticatedSession } from '@/lib/server/auth-session';
import { asErrorMessage, jsonError } from '@/lib/server/http';
import { buildPortfolioSummary, recalculateHolding } from '@/lib/server/portfolio';
@@ -26,24 +26,11 @@ function asPositiveNumber(value: unknown) {
return Number.isFinite(parsed) && parsed > 0 ? parsed : null;
}
async function handleAuthRequest(request: Request) {
const auth = await ensureAuthSchema();
return auth.handler(request);
}
const authHandler = ({ request }: { request: Request }) => auth.handler(request);
export const app = new Elysia({ prefix: '/api' })
.get('/auth', ({ request }) => handleAuthRequest(request))
.post('/auth', ({ request }) => handleAuthRequest(request))
.patch('/auth', ({ request }) => handleAuthRequest(request))
.put('/auth', ({ request }) => handleAuthRequest(request))
.delete('/auth', ({ request }) => handleAuthRequest(request))
.get('/auth/*', ({ request }) => handleAuthRequest(request))
.post('/auth/*', ({ request }) => handleAuthRequest(request))
.patch('/auth/*', ({ request }) => handleAuthRequest(request))
.put('/auth/*', ({ request }) => handleAuthRequest(request))
.delete('/auth/*', ({ request }) => handleAuthRequest(request))
.options('/auth', ({ request }) => handleAuthRequest(request))
.options('/auth/*', ({ request }) => handleAuthRequest(request))
.all('/auth', authHandler)
.all('/auth/*', authHandler)
.get('/health', async () => {
const snapshot = await getStoreSnapshot();
const queue = snapshot.tasks.reduce<Record<string, number>>((acc, task) => {