27 lines
1.1 KiB
TypeScript
27 lines
1.1 KiB
TypeScript
import { Module, MiddlewareConsumer, NestModule, RequestMethod } from "@nestjs/common";
|
|
import { ConfigModule } from "./config/config.module";
|
|
import { DbModule } from "./db/db.module";
|
|
import { HealthModule } from "./modules/health/health.module";
|
|
import { AuthModule } from "./modules/auth/auth.module";
|
|
import { BearerMiddleware } from "./modules/auth/bearer.middleware";
|
|
import { JobsModule } from "./modules/jobs/jobs.module";
|
|
import { TodosModule } from "./modules/todos/todos.module";
|
|
import { AiModule } from "./modules/ai/ai.module";
|
|
|
|
@Module({
|
|
imports: [ConfigModule, DbModule, HealthModule, AuthModule, JobsModule, TodosModule, AiModule],
|
|
})
|
|
export class AppModule implements NestModule {
|
|
configure(consumer: MiddlewareConsumer) {
|
|
consumer
|
|
.apply(BearerMiddleware)
|
|
.exclude(
|
|
{ path: "health", method: RequestMethod.GET },
|
|
// Endpoints publics (signés autrement) ajoutés en Phase 4/6 :
|
|
// { path: "telegram/webhook", method: RequestMethod.POST },
|
|
// { path: "agenda/ical/:secret.ics", method: RequestMethod.GET },
|
|
)
|
|
.forRoutes("*");
|
|
}
|
|
}
|