import { NextRequest, NextResponse } from 'next/server' import { verifyToken } from '@/shared/lib/auth' import { db } from '@/shared/lib/db' export async function GET(req: NextRequest) { try { // Get token from cookie const token = req.cookies.get('auth-token')?.value if (!token) { return NextResponse.json( { error: 'Unauthorized' }, { status: 401 } ) } // Verify token const payload = verifyToken(token) if (!payload) { return NextResponse.json( { error: 'Invalid token' }, { status: 401 } ) } // Get user from database const user = await db.user.findUnique({ where: { id: payload.userId }, select: { id: true, email: true, name: true, image: true, }, }) if (!user) { return NextResponse.json( { error: 'User not found' }, { status: 404 } ) } return NextResponse.json(user) } catch (error) { console.error('Get user error:', error) return NextResponse.json( { error: 'Internal server error' }, { status: 500 } ) } }