feat: rename comment thread into activity (#939)

* feat: rename commentThread into activity server

* feat: rename commentThread into activity front

* feat: migration only create tables


feat: migration only create tables

* Update activities

* fix: rebase partial fix

* fix: all rebase problems and drop activity target alter

* fix: lint

* Update migration

* Update migration

* Fix conflicts

* Fix conflicts

---------

Co-authored-by: Charles Bochet <charles@twenty.com>
This commit is contained in:
Jérémy M
2023-07-28 08:22:16 +02:00
committed by GitHub
parent fcdde024a3
commit d0641084f9
95 changed files with 2112 additions and 1725 deletions

View File

@ -1,7 +1,7 @@
import { Test, TestingModule } from '@nestjs/testing';
import { CommentThreadService } from 'src/core/comment/services/comment-thread.service';
import { CommentService } from 'src/core/comment/services/comment.service';
import { CommentService } from 'src/core/comment/comment.service';
import { ActivityService } from 'src/core/activity/services/activity.service';
import { CompanyRelationsResolver } from './company-relations.resolver';
import { CompanyService } from './company.service';
@ -18,7 +18,7 @@ describe('CompanyRelationsResolver', () => {
useValue: {},
},
{
provide: CommentThreadService,
provide: ActivityService,
useValue: {},
},
{

View File

@ -1,36 +1,36 @@
import { Resolver, ResolveField, Root, Int } from '@nestjs/graphql';
import { CommentThread } from 'src/core/@generated/comment-thread/comment-thread.model';
import { Comment } from 'src/core/@generated/comment/comment.model';
import { Company } from 'src/core/@generated/company/company.model';
import { CommentThreadService } from 'src/core/comment/services/comment-thread.service';
import { CommentService } from 'src/core/comment/services/comment.service';
import { CommentService } from 'src/core/comment/comment.service';
import {
PrismaSelect,
PrismaSelector,
} from 'src/decorators/prisma-select.decorator';
import { ActivityService } from 'src/core/activity/services/activity.service';
import { Activity } from 'src/core/@generated/activity/activity.model';
@Resolver(() => Company)
export class CompanyRelationsResolver {
constructor(
private readonly commentThreadService: CommentThreadService,
private readonly activityService: ActivityService,
private readonly commentService: CommentService,
) {}
@ResolveField(() => [CommentThread], {
@ResolveField(() => [Activity], {
nullable: false,
})
async commentThreads(
async activities(
@Root() company: Company,
@PrismaSelector({ modelName: 'CommentThread' })
prismaSelect: PrismaSelect<'CommentThread'>,
): Promise<Partial<CommentThread>[]> {
return this.commentThreadService.findMany({
@PrismaSelector({ modelName: 'Activity' })
prismaSelect: PrismaSelect<'Activity'>,
): Promise<Partial<Activity>[]> {
return this.activityService.findMany({
where: {
commentThreadTargets: {
activityTargets: {
some: {
commentableId: company.id,
commentableType: 'Company',
commentableId: company.id,
},
},
},
@ -48,11 +48,11 @@ export class CompanyRelationsResolver {
): Promise<Partial<Comment>[]> {
return this.commentService.findMany({
where: {
commentThread: {
commentThreadTargets: {
activity: {
activityTargets: {
some: {
commentableId: company.id,
commentableType: 'Company',
commentableId: company.id,
},
},
},
@ -64,13 +64,13 @@ export class CompanyRelationsResolver {
@ResolveField(() => Int, {
nullable: false,
})
async _commentThreadCount(@Root() company: Company): Promise<number> {
return this.commentThreadService.count({
async _activityCount(@Root() company: Company): Promise<number> {
return this.activityService.count({
where: {
commentThreadTargets: {
activityTargets: {
some: {
commentableId: company.id,
commentableType: 'Company',
commentableId: company.id,
},
},
},

View File

@ -1,13 +1,14 @@
import { Module } from '@nestjs/common';
import { CommentModule } from 'src/core/comment/comment.module';
import { ActivityModule } from 'src/core/activity/activity.module';
import { CompanyService } from './company.service';
import { CompanyResolver } from './company.resolver';
import { CompanyRelationsResolver } from './company-relations.resolver';
@Module({
imports: [CommentModule],
imports: [CommentModule, ActivityModule],
providers: [CompanyService, CompanyResolver, CompanyRelationsResolver],
exports: [CompanyService],
})