mirror of
https://github.com/BradNut/boredgame
synced 2025-09-08 17:40:22 +00:00
23 lines
810 B
TypeScript
23 lines
810 B
TypeScript
|
|
import { Hono } from 'hono';
|
||
|
|
import { zValidator } from '@hono/zod-validator';
|
||
|
|
import { requireAuth } from "../middleware/auth.middleware";
|
||
|
|
import { registerEmailPasswordDto } from '$lib/dtos/register-emailpassword.dto';
|
||
|
|
import { limiter } from '../middleware/rate-limiter.middleware';
|
||
|
|
|
||
|
|
const app = new Hono()
|
||
|
|
.get('/me', requireAuth, async (c) => {
|
||
|
|
const user = c.var.user;
|
||
|
|
return c.json({ user });
|
||
|
|
})
|
||
|
|
.get('/user', requireAuth, async (c) => {
|
||
|
|
const user = c.var.user;
|
||
|
|
return c.json({ user });
|
||
|
|
})
|
||
|
|
.post('/login/request', zValidator('json', registerEmailPasswordDto), limiter({ limit: 10, minutes: 60 }), async (c) => {
|
||
|
|
const { email } = c.req.valid('json');
|
||
|
|
await this.loginRequestsService.create({ email });
|
||
|
|
return c.json({ message: 'Verification email sent' });
|
||
|
|
});
|
||
|
|
|
||
|
|
export default app;
|