import { Module, NestModule, MiddlewareConsumer } from '@nestjs/common';
import { LanguageMiddleware } from '../common/middleware/language.middleware';
import { TranslationService } from '../common/services/translation.service';
import { ResponseHelper } from '../common/helpers/response.helper';
import { I18nController } from './i18n.controller';

@Module({
  providers: [TranslationService, ResponseHelper],
  controllers: [I18nController],
  exports: [TranslationService, ResponseHelper],
})
export class I18nModule implements NestModule {
  configure(consumer: MiddlewareConsumer) {
    consumer.apply(LanguageMiddleware).forRoutes('*');
  }
}