commit
7b999a670c
243 files changed
+24818
No files matched your search
@@ -0,0 +1,42 @@
|
||||
import { Module } from '@nestjs/common';
|
||||
import { PrismaModule } from '../../common/prisma-adapter/prisma.module.js';
|
||||
import { ProjectModule } from '../project/project.module.js';
|
||||
import { UserModule } from '../user/user.module.js';
|
||||
import { IssuePrismaRepository } from './infrastructure/persistence/prisma/repositories/issue.prisma-repository.js';
|
||||
import { ISSUE_REPOSITORY } from './domain/repositories/issue.repository.interface.js';
|
||||
import { IssueController } from './presentation/controllers/issue.controller.js';
|
||||
import { CreateIssueUseCase } from './application/use-cases/create-issue/create-issue.use-case.js';
|
||||
import { GetIssueUseCase } from './application/use-cases/get-issue/get-issue.use-case.js';
|
||||
import { ListIssuesUseCase } from './application/use-cases/list-issues/list-issues.use-case.js';
|
||||
import { UpdateIssueUseCase } from './application/use-cases/update-issue/update-issue.use-case.js';
|
||||
import { DeleteIssueUseCase } from './application/use-cases/delete-issue/delete-issue.use-case.js';
|
||||
import { IssueResolver } from './presentation/resolvers/issue.resolver.js';
|
||||
import { GetIssueByCkeyUseCase } from './application/use-cases/get-issue-by-ckey/get-issue-by-ckey.use-case.js';
|
||||
import { IssueEventsService } from './application/services/issue-events.service.js';
|
||||
import { IssueUserExpanderService } from './application/services/issue-user-expander.service.js';
|
||||
import { GetIssueStatsUseCase } from './application/use-cases/get-issue-stats/get-issue-stats.use-case.js';
|
||||
|
||||
@Module({
|
||||
imports: [PrismaModule, ProjectModule, UserModule],
|
||||
controllers: [IssueController],
|
||||
providers: [
|
||||
CreateIssueUseCase,
|
||||
GetIssueUseCase,
|
||||
GetIssueByCkeyUseCase,
|
||||
ListIssuesUseCase,
|
||||
UpdateIssueUseCase,
|
||||
DeleteIssueUseCase,
|
||||
GetIssueStatsUseCase,
|
||||
IssueResolver,
|
||||
IssueEventsService,
|
||||
IssueUserExpanderService,
|
||||
{
|
||||
// Domain видит только интерфейс IIssueRepository,
|
||||
// конкретную реализацию (Prisma) подставляет DI-контейнер здесь
|
||||
provide: ISSUE_REPOSITORY,
|
||||
useClass: IssuePrismaRepository,
|
||||
},
|
||||
],
|
||||
exports: [ISSUE_REPOSITORY],
|
||||
})
|
||||
export class IssueModule {}
|
||||
Reference in new issue
Block a user