import { json, type RequestHandler } from '@sveltejs/kit'; import { getSessionUser, SESSION_COOKIE, upsertUser } from '$lib/server/auth'; export const GET: RequestHandler = async ({ cookies }) => { const user = getSessionUser(cookies.get(SESSION_COOKIE)); return json({ user }); }; export const PUT: RequestHandler = async ({ cookies, request }) => { const user = getSessionUser(cookies.get(SESSION_COOKIE)); if (!user) return json({ error: 'authentication required' }, { status: 401 }); let payload: { display_name?: string }; try { payload = await request.json(); } catch { return json({ error: 'invalid json' }, { status: 400 }); } const newName = (payload.display_name ?? '').toString().trim(); if (newName.length > 80) { return json({ error: 'display_name must be ≤80 chars' }, { status: 400 }); } upsertUser({ id: user.id, username: user.username, global_name: user.global_name, avatar: user.avatar, email: user.email, display_name: newName || null } as any); return json({ user: { ...user, display_name: newName || null } }); };