mirror of
https://github.com/PretendoNetwork/website.git
synced 2026-10-09 08:47:24 -05:00
23 lines
489 B
TypeScript
23 lines
489 B
TypeScript
export type AuthContext = {
|
|
pid: number;
|
|
}
|
|
|
|
export function setAuthContext(event: H3Event, context: AuthContext) {
|
|
event.context.auth = context;
|
|
}
|
|
|
|
|
|
export function getAuthContext(event: H3Event): AuthContext | null {
|
|
return event.context.auth ?? null;
|
|
}
|
|
|
|
|
|
export function enforceLoggedIn(event: H3Event): AuthContext {
|
|
const context = getAuthContext(event);
|
|
if (!context) throw createError({
|
|
status: 401,
|
|
statusText: "This action requires authentication",
|
|
})
|
|
return context;
|
|
}
|