Files
maaw/server/defineProtectedEventHandler.ts
Michael Dausmann 9daea204e5 more type cleanup
2024-02-17 14:54:45 +11:00

21 lines
479 B
TypeScript

import {
type EventHandler,
type EventHandlerRequest,
H3Event,
eventHandler
} from 'h3';
export const defineProtectedEventHandler = <T extends EventHandlerRequest>(
handler: EventHandler<T>
): EventHandler<T> => {
handler.__is_handler__ = true;
return eventHandler((event: H3Event) => {
const user = event.context.user;
if (!user) {
throw createError({ statusCode: 401, statusMessage: 'Unauthenticated' });
}
return handler(event);
});
};