import { Module } from '@nestjs/common'; import { TypeOrmModule } from '@nestjs/typeorm'; import { Question } from './entities/question.entity'; import { Choice } from './entities/choice.entity'; import { QuestionsController } from './questions.controller'; import { TestsModule } from '../tests/tests.module'; import { QuestionsService } from './providers/questions.service'; import { QuestionsCommandProvider } from './providers/questions-command.provider'; import { QuestionsQueryProvider } from './providers/questions-query.provider'; import { ChoicesCommandProvider } from './providers/choices/choices-command.provider'; import { ChoicesService } from './providers/choices/choices.service'; import { ChoicesQueryProvider } from './providers/choices/choices-query.provider'; import { QuestionRangeRule } from './entities/question-range-rule.entity'; import { QuestionRangeRuleService } from './providers/range-rule/question-range-rule.service'; import { QuestionRangeRuleCommandProvider } from './providers/range-rule/question-range-rule-command.provider'; import { QuestionRangeRuleQueryProvider } from './providers/range-rule/question-range-rule-query.provider'; import { QuestionTransition } from './entities/question-transition.entity'; import { CheckTransitionDBProvider } from './providers/transition/validations/check-transition-db.provider'; import { QuestionTransitionValidatorProvider } from './providers/transition/validations/question-transition-validator.provider'; @Module({ imports: [ TypeOrmModule.forFeature([ Question, QuestionRangeRule, Choice, QuestionTransition, ]), TestsModule, ], controllers: [QuestionsController], providers: [ // Questsions QuestionsCommandProvider, QuestionsQueryProvider, QuestionsService, // Choices ChoicesCommandProvider, ChoicesQueryProvider, ChoicesService, // Question Range Rules QuestionRangeRuleCommandProvider, QuestionRangeRuleQueryProvider, QuestionRangeRuleService, // Question Transitions CheckTransitionDBProvider, QuestionTransitionValidatorProvider, ], exports: [QuestionsService, ChoicesService, QuestionRangeRuleService], }) export class QuestionsModule {}