import { FastifyInstance } from "fastify"; import userRoutes from "./user/user.route"; import organizationRoutes from "./organization/organization.route"; import { tokenRoutes } from "./tokens/token.route"; import { permitRoutes } from "./permit/permit.route"; import { authHandler } from "./auth"; import { fileRoutes } from "./file/file.route"; import { rtsRoutes } from "./rts/rts.route"; import { taskRoutes } from "./task/task.route"; import { realTimeRoutes } from "./realtime/realtime.route"; import { notificationRoutes } from "./notification/notification.route"; import { configRoutes } from "./config/config.route"; import { mailProxyRoutes } from "./mailProxy/mailProxy.route"; import { viewRoutes } from "./view/view.route"; import { processedRoutes } from "./processed/processed.route"; export default async function routes(fastify: FastifyInstance) { fastify.addHook("preHandler", authHandler); fastify.register(userRoutes, { prefix: "/users" }); fastify.register(organizationRoutes, { prefix: "/orgs" }); fastify.register(tokenRoutes, { prefix: "/tokens" }); fastify.register(permitRoutes, { prefix: "/permits" }); fastify.register(fileRoutes, { prefix: "/files" }); fastify.register(rtsRoutes, { prefix: "/rts" }); fastify.register(taskRoutes, { prefix: "/tasks" }); fastify.register(notificationRoutes, { prefix: "/notifications" }); fastify.register(mailProxyRoutes, { prefix: "/proxy" }); fastify.register(configRoutes, { prefix: "/config" }); fastify.register(viewRoutes, { prefix: "/views" }); fastify.register(processedRoutes, { prefix: "/processed" }); fastify.register(realTimeRoutes); }