File size: 746 Bytes
3d23b0f
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
import { FastifyPluginAsync } from 'fastify';
import userRoutes from './routes/user.routes';
import contestRoutes from './routes/contest.routes';
import problemRoutes from './routes/problem.routes';
import discussionRoutes from './routes/discussion.routes';

const leetcodeRoutes: FastifyPluginAsync = async (fastify) => {
    // Register specific category routes first
    await fastify.register(contestRoutes, { prefix: '/contest' });
    await fastify.register(problemRoutes, { prefix: '/problem' });
    await fastify.register(discussionRoutes, { prefix: '/discuss' });

    // Register user routes at root last to handle /api/v1/leetcode/{username}
    await fastify.register(userRoutes, { prefix: '/' });
};

export default leetcodeRoutes;