From 4ca15b578d2e73284c86b2922ec52519f1a3ff7e Mon Sep 17 00:00:00 2001 From: Mathis HERRIOT <197931332+0x485254@users.noreply.github.com> Date: Wed, 14 Jan 2026 22:50:30 +0100 Subject: [PATCH] refactor(modules): mark `DatabaseModule` and `CryptoModule` as global and remove redundant imports Optimize module imports by marking `DatabaseModule` and `CryptoModule` as global. Remove explicit imports from other modules to reduce duplication and improve maintainability. Update environment variable limits for image and GIF sizes in production. --- backend/src/api-keys/api-keys.module.ts | 4 +--- backend/src/auth/auth.module.ts | 9 +-------- backend/src/categories/categories.module.ts | 4 +--- backend/src/contents/contents.module.ts | 4 +--- backend/src/crypto/crypto.module.ts | 3 ++- backend/src/database/database.module.ts | 3 ++- backend/src/favorites/favorites.module.ts | 4 +--- backend/src/reports/reports.module.ts | 4 +--- backend/src/sessions/sessions.module.ts | 3 --- backend/src/tags/tags.module.ts | 4 +--- backend/src/users/users.module.ts | 10 +--------- docker-compose.prod.yml | 4 ++-- 12 files changed, 14 insertions(+), 42 deletions(-) diff --git a/backend/src/api-keys/api-keys.module.ts b/backend/src/api-keys/api-keys.module.ts index b3f644a..30b0666 100644 --- a/backend/src/api-keys/api-keys.module.ts +++ b/backend/src/api-keys/api-keys.module.ts @@ -1,13 +1,11 @@ import { forwardRef, Module } from "@nestjs/common"; import { AuthModule } from "../auth/auth.module"; -import { CryptoModule } from "../crypto/crypto.module"; -import { DatabaseModule } from "../database/database.module"; import { ApiKeysController } from "./api-keys.controller"; import { ApiKeysService } from "./api-keys.service"; import { ApiKeysRepository } from "./repositories/api-keys.repository"; @Module({ - imports: [DatabaseModule, forwardRef(() => AuthModule), CryptoModule], + imports: [forwardRef(() => AuthModule)], controllers: [ApiKeysController], providers: [ApiKeysService, ApiKeysRepository], exports: [ApiKeysService, ApiKeysRepository], diff --git a/backend/src/auth/auth.module.ts b/backend/src/auth/auth.module.ts index 015222c..b15c0fa 100644 --- a/backend/src/auth/auth.module.ts +++ b/backend/src/auth/auth.module.ts @@ -1,6 +1,4 @@ import { forwardRef, Module } from "@nestjs/common"; -import { CryptoModule } from "../crypto/crypto.module"; -import { DatabaseModule } from "../database/database.module"; import { SessionsModule } from "../sessions/sessions.module"; import { UsersModule } from "../users/users.module"; import { AuthController } from "./auth.controller"; @@ -12,12 +10,7 @@ import { RbacService } from "./rbac.service"; import { RbacRepository } from "./repositories/rbac.repository"; @Module({ - imports: [ - forwardRef(() => UsersModule), - CryptoModule, - SessionsModule, - DatabaseModule, - ], + imports: [forwardRef(() => UsersModule), SessionsModule], controllers: [AuthController], providers: [ AuthService, diff --git a/backend/src/categories/categories.module.ts b/backend/src/categories/categories.module.ts index e66aa18..d766ad7 100644 --- a/backend/src/categories/categories.module.ts +++ b/backend/src/categories/categories.module.ts @@ -1,13 +1,11 @@ import { Module } from "@nestjs/common"; import { AuthModule } from "../auth/auth.module"; -import { CryptoModule } from "../crypto/crypto.module"; -import { DatabaseModule } from "../database/database.module"; import { CategoriesController } from "./categories.controller"; import { CategoriesService } from "./categories.service"; import { CategoriesRepository } from "./repositories/categories.repository"; @Module({ - imports: [DatabaseModule, AuthModule, CryptoModule], + imports: [AuthModule], controllers: [CategoriesController], providers: [CategoriesService, CategoriesRepository], exports: [CategoriesService, CategoriesRepository], diff --git a/backend/src/contents/contents.module.ts b/backend/src/contents/contents.module.ts index bf08949..89b1c43 100644 --- a/backend/src/contents/contents.module.ts +++ b/backend/src/contents/contents.module.ts @@ -1,7 +1,5 @@ import { Module } from "@nestjs/common"; import { AuthModule } from "../auth/auth.module"; -import { CryptoModule } from "../crypto/crypto.module"; -import { DatabaseModule } from "../database/database.module"; import { MediaModule } from "../media/media.module"; import { S3Module } from "../s3/s3.module"; import { ContentsController } from "./contents.controller"; @@ -9,7 +7,7 @@ import { ContentsService } from "./contents.service"; import { ContentsRepository } from "./repositories/contents.repository"; @Module({ - imports: [DatabaseModule, S3Module, AuthModule, CryptoModule, MediaModule], + imports: [S3Module, AuthModule, MediaModule], controllers: [ContentsController], providers: [ContentsService, ContentsRepository], exports: [ContentsRepository], diff --git a/backend/src/crypto/crypto.module.ts b/backend/src/crypto/crypto.module.ts index d85f7cf..55a19cb 100644 --- a/backend/src/crypto/crypto.module.ts +++ b/backend/src/crypto/crypto.module.ts @@ -1,10 +1,11 @@ -import { Module } from "@nestjs/common"; +import { Global, Module } from "@nestjs/common"; import { CryptoService } from "./crypto.service"; import { EncryptionService } from "./services/encryption.service"; import { HashingService } from "./services/hashing.service"; import { JwtService } from "./services/jwt.service"; import { PostQuantumService } from "./services/post-quantum.service"; +@Global() @Module({ providers: [ CryptoService, diff --git a/backend/src/database/database.module.ts b/backend/src/database/database.module.ts index a42c89f..46c152b 100644 --- a/backend/src/database/database.module.ts +++ b/backend/src/database/database.module.ts @@ -1,7 +1,8 @@ -import { Module } from "@nestjs/common"; +import { Global, Module } from "@nestjs/common"; import { ConfigModule } from "@nestjs/config"; import { DatabaseService } from "./database.service"; +@Global() @Module({ imports: [ConfigModule], providers: [DatabaseService], diff --git a/backend/src/favorites/favorites.module.ts b/backend/src/favorites/favorites.module.ts index 72d1943..920958a 100644 --- a/backend/src/favorites/favorites.module.ts +++ b/backend/src/favorites/favorites.module.ts @@ -1,13 +1,11 @@ import { Module } from "@nestjs/common"; import { AuthModule } from "../auth/auth.module"; -import { CryptoModule } from "../crypto/crypto.module"; -import { DatabaseModule } from "../database/database.module"; import { FavoritesController } from "./favorites.controller"; import { FavoritesService } from "./favorites.service"; import { FavoritesRepository } from "./repositories/favorites.repository"; @Module({ - imports: [DatabaseModule, AuthModule, CryptoModule], + imports: [AuthModule], controllers: [FavoritesController], providers: [FavoritesService, FavoritesRepository], exports: [FavoritesService, FavoritesRepository], diff --git a/backend/src/reports/reports.module.ts b/backend/src/reports/reports.module.ts index 0f4f576..cadd3e4 100644 --- a/backend/src/reports/reports.module.ts +++ b/backend/src/reports/reports.module.ts @@ -1,13 +1,11 @@ import { forwardRef, Module } from "@nestjs/common"; import { AuthModule } from "../auth/auth.module"; -import { CryptoModule } from "../crypto/crypto.module"; -import { DatabaseModule } from "../database/database.module"; import { ReportsController } from "./reports.controller"; import { ReportsService } from "./reports.service"; import { ReportsRepository } from "./repositories/reports.repository"; @Module({ - imports: [DatabaseModule, forwardRef(() => AuthModule), CryptoModule], + imports: [forwardRef(() => AuthModule)], controllers: [ReportsController], providers: [ReportsService, ReportsRepository], exports: [ReportsRepository, ReportsService], diff --git a/backend/src/sessions/sessions.module.ts b/backend/src/sessions/sessions.module.ts index 70aca84..424fc79 100644 --- a/backend/src/sessions/sessions.module.ts +++ b/backend/src/sessions/sessions.module.ts @@ -1,11 +1,8 @@ import { Module } from "@nestjs/common"; -import { CryptoModule } from "../crypto/crypto.module"; -import { DatabaseModule } from "../database/database.module"; import { SessionsRepository } from "./repositories/sessions.repository"; import { SessionsService } from "./sessions.service"; @Module({ - imports: [DatabaseModule, CryptoModule], providers: [SessionsService, SessionsRepository], exports: [SessionsService, SessionsRepository], }) diff --git a/backend/src/tags/tags.module.ts b/backend/src/tags/tags.module.ts index 0e21af0..4a8b0cb 100644 --- a/backend/src/tags/tags.module.ts +++ b/backend/src/tags/tags.module.ts @@ -1,13 +1,11 @@ import { Module } from "@nestjs/common"; import { AuthModule } from "../auth/auth.module"; -import { CryptoModule } from "../crypto/crypto.module"; -import { DatabaseModule } from "../database/database.module"; import { TagsRepository } from "./repositories/tags.repository"; import { TagsController } from "./tags.controller"; import { TagsService } from "./tags.service"; @Module({ - imports: [DatabaseModule, AuthModule, CryptoModule], + imports: [AuthModule], controllers: [TagsController], providers: [TagsService, TagsRepository], exports: [TagsService, TagsRepository], diff --git a/backend/src/users/users.module.ts b/backend/src/users/users.module.ts index dd4daa1..ad010c9 100644 --- a/backend/src/users/users.module.ts +++ b/backend/src/users/users.module.ts @@ -1,7 +1,5 @@ import { forwardRef, Module } from "@nestjs/common"; import { AuthModule } from "../auth/auth.module"; -import { CryptoModule } from "../crypto/crypto.module"; -import { DatabaseModule } from "../database/database.module"; import { MediaModule } from "../media/media.module"; import { S3Module } from "../s3/s3.module"; import { UsersRepository } from "./repositories/users.repository"; @@ -9,13 +7,7 @@ import { UsersController } from "./users.controller"; import { UsersService } from "./users.service"; @Module({ - imports: [ - DatabaseModule, - CryptoModule, - forwardRef(() => AuthModule), - MediaModule, - S3Module, - ], + imports: [forwardRef(() => AuthModule), MediaModule, S3Module], controllers: [UsersController], providers: [UsersService, UsersRepository], exports: [UsersService, UsersRepository], diff --git a/docker-compose.prod.yml b/docker-compose.prod.yml index 7065861..fb5c4a0 100644 --- a/docker-compose.prod.yml +++ b/docker-compose.prod.yml @@ -101,8 +101,8 @@ services: ENABLE_CORS: ${ENABLE_CORS:-true} CLAMAV_HOST: memegoat-clamav CLAMAV_PORT: 3310 - MAX_IMAGE_SIZE_KB: 512 - MAX_GIF_SIZE_KB: 1024 + MAX_IMAGE_SIZE_KB: 1024 + MAX_GIF_SIZE_KB: 4096 clamav: image: clamav/clamav:latest