40 lines
1.3 KiB
TypeScript
40 lines
1.3 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";
|
|
import { HealthTabModule } from "./modules/health-tab/health-tab.module";
|
|
import { AgendaModule } from "./modules/agenda/agenda.module";
|
|
import { ProjectsModule } from "./modules/projects/projects.module";
|
|
|
|
@Module({
|
|
imports: [
|
|
ConfigModule,
|
|
DbModule,
|
|
HealthModule,
|
|
AuthModule,
|
|
JobsModule,
|
|
TodosModule,
|
|
AiModule,
|
|
HealthTabModule,
|
|
AgendaModule,
|
|
ProjectsModule,
|
|
],
|
|
})
|
|
export class AppModule implements NestModule {
|
|
configure(consumer: MiddlewareConsumer) {
|
|
consumer
|
|
.apply(BearerMiddleware)
|
|
.exclude(
|
|
{ path: "health", method: RequestMethod.GET },
|
|
{ path: "agenda/ical/:secret", method: RequestMethod.GET },
|
|
{ path: "agenda/google/oauth/callback", method: RequestMethod.GET },
|
|
)
|
|
.forRoutes("*");
|
|
}
|
|
}
|