Skip to content

Commit 2af5879

Browse files
authored
refactor: split middlewares into smaller files (#5616)
* split * fix imports * rename
1 parent 088ff63 commit 2af5879

19 files changed

Lines changed: 261 additions & 274 deletions

backend/src/api/routes/admin.ts

Lines changed: 5 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,19 @@
11
// import joi from "joi";
22
import { Router } from "express";
33
import { authenticateRequest } from "../../middlewares/auth";
4-
import {
5-
asyncHandler,
6-
checkIfUserIsAdmin,
7-
validateConfiguration,
8-
validateRequest,
9-
} from "../../middlewares/api-utils";
104
import * as AdminController from "../controllers/admin";
115
import { adminLimit } from "../../middlewares/rate-limit";
126
import { sendForgotPasswordEmail, toggleBan } from "../controllers/user";
137
import joi from "joi";
8+
import { validate } from "../../middlewares/configuration";
9+
import { checkIfUserIsAdmin } from "../../middlewares/permission";
10+
import { asyncHandler } from "../../middlewares/utility";
11+
import { validateRequest } from "../../middlewares/validation";
1412

1513
const router = Router();
1614

1715
router.use(
18-
validateConfiguration({
16+
validate({
1917
criteria: (configuration) => {
2018
return configuration.admin.endpointsEnabled;
2119
},

backend/src/api/routes/ape-keys.ts

Lines changed: 5 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,12 @@
11
import joi from "joi";
22
import { Router } from "express";
3-
import {
4-
asyncHandler,
5-
checkUserPermissions,
6-
validateConfiguration,
7-
validateRequest,
8-
} from "../../middlewares/api-utils";
93
import { authenticateRequest } from "../../middlewares/auth";
104
import * as ApeKeyController from "../controllers/ape-key";
115
import * as RateLimit from "../../middlewares/rate-limit";
6+
import { checkUserPermissions } from "../../middlewares/permission";
7+
import { validate } from "../../middlewares/configuration";
8+
import { asyncHandler } from "../../middlewares/utility";
9+
import { validateRequest } from "../../middlewares/validation";
1210

1311
const apeKeyNameSchema = joi
1412
.string()
@@ -30,7 +28,7 @@ const checkIfUserCanManageApeKeys = checkUserPermissions({
3028
const router = Router();
3129

3230
router.use(
33-
validateConfiguration({
31+
validate({
3432
criteria: (configuration) => {
3533
return configuration.apeKeys.endpointsEnabled;
3634
},

backend/src/api/routes/configs.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,10 @@
11
import { Router } from "express";
22
import { authenticateRequest } from "../../middlewares/auth";
3-
import { asyncHandler, validateRequest } from "../../middlewares/api-utils";
43
import configSchema from "../schemas/config-schema";
54
import * as ConfigController from "../controllers/config";
65
import * as RateLimit from "../../middlewares/rate-limit";
6+
import { asyncHandler } from "../../middlewares/utility";
7+
import { validateRequest } from "../../middlewares/validation";
78

89
const router = Router();
910

backend/src/api/routes/configuration.ts

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,11 @@
11
import joi from "joi";
22
import { Router } from "express";
3-
import {
4-
asyncHandler,
5-
checkIfUserIsAdmin,
6-
useInProduction,
7-
validateRequest,
8-
} from "../../middlewares/api-utils";
93
import * as ConfigurationController from "../controllers/configuration";
104
import { authenticateRequest } from "../../middlewares/auth";
115
import { adminLimit } from "../../middlewares/rate-limit";
6+
import { asyncHandler, useInProduction } from "../../middlewares/utility";
7+
import { checkIfUserIsAdmin } from "../../middlewares/permission";
8+
import { validateRequest } from "../../middlewares/validation";
129

1310
const router = Router();
1411

backend/src/api/routes/dev.ts

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,15 @@
11
import { Router } from "express";
2-
import {
3-
asyncHandler,
4-
validateConfiguration,
5-
validateRequest,
6-
} from "../../middlewares/api-utils";
72
import joi from "joi";
83
import { createTestData } from "../controllers/dev";
94
import { isDevEnvironment } from "../../utils/misc";
5+
import { validate } from "../../middlewares/configuration";
6+
import { validateRequest } from "../../middlewares/validation";
7+
import { asyncHandler } from "../../middlewares/utility";
108

119
const router = Router();
1210

1311
router.use(
14-
validateConfiguration({
12+
validate({
1513
criteria: () => {
1614
return isDevEnvironment();
1715
},

backend/src/api/routes/index.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ import configuration from "./configuration";
1515
import { version } from "../../version";
1616
import leaderboards from "./leaderboards";
1717
import addSwaggerMiddlewares from "./swagger";
18-
import { asyncHandler } from "../../middlewares/api-utils";
18+
import { asyncHandler } from "../../middlewares/utility";
1919
import { MonkeyResponse } from "../../utils/monkey-response";
2020
import { recordClientVersion } from "../../utils/prometheus";
2121
import {

backend/src/api/routes/leaderboards.ts

Lines changed: 5 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -4,11 +4,9 @@ import * as RateLimit from "../../middlewares/rate-limit";
44
import { withApeRateLimiter } from "../../middlewares/ape-rate-limit";
55
import { authenticateRequest } from "../../middlewares/auth";
66
import * as LeaderboardController from "../controllers/leaderboard";
7-
import {
8-
asyncHandler,
9-
validateRequest,
10-
validateConfiguration,
11-
} from "../../middlewares/api-utils";
7+
import { validate } from "../../middlewares/configuration";
8+
import { validateRequest } from "../../middlewares/validation";
9+
import { asyncHandler } from "../../middlewares/utility";
1210

1311
const BASE_LEADERBOARD_VALIDATION_SCHEMA = {
1412
language: joi
@@ -39,7 +37,7 @@ const DAILY_LEADERBOARD_VALIDATION_SCHEMA = {
3937

4038
const router = Router();
4139

42-
const requireDailyLeaderboardsEnabled = validateConfiguration({
40+
const requireDailyLeaderboardsEnabled = validate({
4341
criteria: (configuration) => {
4442
return configuration.dailyLeaderboards.enabled;
4543
},
@@ -98,7 +96,7 @@ const WEEKLY_XP_LEADERBOARD_VALIDATION_SCHEMA = {
9896
weeksBefore: joi.number().min(1).max(1),
9997
};
10098

101-
const requireWeeklyXpLeaderboardEnabled = validateConfiguration({
99+
const requireWeeklyXpLeaderboardEnabled = validate({
102100
criteria: (configuration) => {
103101
return configuration.leaderboards.weeklyXp.enabled;
104102
},

backend/src/api/routes/presets.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,9 @@ import { authenticateRequest } from "../../middlewares/auth";
33
import * as PresetController from "../controllers/preset";
44
import * as RateLimit from "../../middlewares/rate-limit";
55
import configSchema from "../schemas/config-schema";
6-
import { asyncHandler, validateRequest } from "../../middlewares/api-utils";
76
import { Router } from "express";
7+
import { asyncHandler } from "../../middlewares/utility";
8+
import { validateRequest } from "../../middlewares/validation";
89

910
const router = Router();
1011

backend/src/api/routes/psas.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import { Router } from "express";
22
import * as PsaController from "../controllers/psa";
33
import * as RateLimit from "../../middlewares/rate-limit";
4-
import { asyncHandler } from "../../middlewares/api-utils";
4+
import { asyncHandler } from "../../middlewares/utility";
55

66
const router = Router();
77

backend/src/api/routes/public.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,9 @@
11
import { Router } from "express";
22
import * as PublicController from "../controllers/public";
33
import * as RateLimit from "../../middlewares/rate-limit";
4-
import { asyncHandler, validateRequest } from "../../middlewares/api-utils";
4+
import { asyncHandler } from "../../middlewares/utility";
55
import joi from "joi";
6+
import { validateRequest } from "../../middlewares/validation";
67

78
const GET_MODE_STATS_VALIDATION_SCHEMA = {
89
language: joi

0 commit comments

Comments
 (0)