16 lines
621 B
TypeScript
16 lines
621 B
TypeScript
import { IQueryHandler, QueryHandler } from '@nestjs/cqrs';
|
|
import { ProjectReadModel } from '@task-stream/api/tracker/domain';
|
|
import { FindProjectsRepository } from '../ports/find-projects.repository';
|
|
import { GetMyProjectsQuery } from './get-my-projects.query';
|
|
|
|
@QueryHandler(GetMyProjectsQuery)
|
|
export class GetMyProjectsQueryHandler
|
|
implements IQueryHandler<GetMyProjectsQuery, ProjectReadModel[]>
|
|
{
|
|
constructor(private readonly findProjects: FindProjectsRepository) {}
|
|
|
|
async execute(query: GetMyProjectsQuery): Promise<ProjectReadModel[]> {
|
|
return this.findProjects.findByMember(query.viewerId);
|
|
}
|
|
}
|