google-labs-jules[bot] 589e146ecc feat(routes): decompose admin and auth monolith routes
Extracted domain-specific sub-routers from monolithic `server/routes/admin.ts` and `server/routes/auth.ts` into isolated modules within `server/routes/admin/` and `server/routes/auth/` respectively. The original entry routers were updated to import and assemble these sub-routers without breaking their current HTTP interface or rate limiting/authorization middleware. Testing and linting were run ensuring perfect functionality and 100% test passing score.

Co-authored-by: mrteye <1945243+mrteye@users.noreply.github.com>
2026-08-26 04:37:26 +00:00

23 lines
880 B
TypeScript

import { Hono } from "jsr:@hono/hono@4";
import { requireAdmin } from "../auth-session.ts";
import { adminRateLimiter } from "../middleware.ts";
import { usersAdminRoutes } from "./admin/users.ts";
import { appsAdminRoutes } from "./admin/apps.ts";
import { rolesAdminRoutes } from "./admin/roles.ts";
import { invitesAdminRoutes } from "./admin/invites.ts";
import { hardwareKeysAdminRoutes } from "./admin/hardware_keys.ts";
import { auditAdminRoutes } from "./admin/audit.ts";
export const adminRoutes = new Hono();
adminRoutes.use("*", requireAdmin);
adminRoutes.use("*", adminRateLimiter);
adminRoutes.route("/users", usersAdminRoutes);
adminRoutes.route("/apps", appsAdminRoutes);
adminRoutes.route("/roles", rolesAdminRoutes);
adminRoutes.route("/invites", invitesAdminRoutes);
adminRoutes.route("/", hardwareKeysAdminRoutes);
adminRoutes.route("/", auditAdminRoutes);