15 lines
479 B
TypeScript
15 lines
479 B
TypeScript
import { setUser } from '@sentry/nextjs'
|
|
import { User } from 'db'
|
|
import { NextApiRequest } from 'next'
|
|
import { getSession } from 'next-auth/react'
|
|
|
|
export const getAuthenticatedUser = async (
|
|
req: NextApiRequest
|
|
): Promise<User | undefined> => {
|
|
const session = await getSession({ req })
|
|
if (!session?.user || !('id' in session.user)) return
|
|
const user = session.user as User
|
|
setUser({ id: user.id, email: user.email ?? undefined })
|
|
return session?.user as User
|
|
}
|