app.module.ts 936 B

12345678910111213141516171819202122232425262728293031323334
  1. import configuration from '@/config/index';
  2. import { Module } from '@nestjs/common';
  3. import { ConfigModule } from '@nestjs/config';
  4. import Joi from 'joi';
  5. import { AuthModule } from './modules/auth/auth.module';
  6. import { HealthModule } from './modules/health/health.module';
  7. import { MenuModule } from './modules/menu/menu.module';
  8. import { MockModule } from './modules/mock/mock.module';
  9. import { UsersModule } from './modules/users/users.module';
  10. @Module({
  11. imports: [
  12. ConfigModule.forRoot({
  13. cache: true,
  14. isGlobal: true,
  15. load: [configuration],
  16. validationOptions: {
  17. abortEarly: true,
  18. allowUnknown: true,
  19. },
  20. validationSchema: Joi.object({
  21. NODE_ENV: Joi.string().valid('development', 'production', 'test'),
  22. port: Joi.number(),
  23. }),
  24. }),
  25. HealthModule,
  26. AuthModule,
  27. UsersModule,
  28. MenuModule,
  29. MockModule,
  30. ],
  31. })
  32. export class AppModule {}