MCPcopy
hub / github.com/epicweb-dev/epic-stack / loader

Function loader

app/routes/me.tsx:5–18  ·  view source on GitHub ↗
({ request }: LoaderFunctionArgs)

Source from the content-addressed store, hash-verified

3import { prisma } from '#app/utils/db.server.ts'
4
5export async function loader({ request }: LoaderFunctionArgs) {
6 const userId = await requireUserId(request)
7 const user = await prisma.user.findUnique({ where: { id: userId } })
8 if (!user) {
9 const requestUrl = new URL(request.url)
10 const loginParams = new URLSearchParams([
11 ['redirectTo', `${requestUrl.pathname}${requestUrl.search}`],
12 ])
13 const redirectTo = `/login?${loginParams}`
14 await logout({ request, redirectTo })
15 return redirect(redirectTo)
16 }
17 return redirect(`/users/${user.username}`)
18}

Callers

nothing calls this directly

Calls 2

requireUserIdFunction · 0.90
logoutFunction · 0.90

Tested by

no test coverage detected