Spaces:
Build error
Build error
twenty / packages /twenty-server /src /engine /metadata-modules /message-folder /resolvers /message-folder.resolver.ts
| import { UseGuards, UseInterceptors } from '@nestjs/common'; | |
| import { Args, Mutation, Query } from '@nestjs/graphql'; | |
| import { UUIDScalarType } from 'src/engine/api/graphql/workspace-schema-builder/graphql-types/scalars'; | |
| import { MetadataResolver } from 'src/engine/api/graphql/graphql-config/decorators/metadata-resolver.decorator'; | |
| import { WorkspaceEntity } from 'src/engine/core-modules/workspace/workspace.entity'; | |
| import { AuthUserWorkspaceId } from 'src/engine/decorators/auth/auth-user-workspace-id.decorator'; | |
| import { AuthWorkspace } from 'src/engine/decorators/auth/auth-workspace.decorator'; | |
| import { NoPermissionGuard } from 'src/engine/guards/no-permission.guard'; | |
| import { WorkspaceAuthGuard } from 'src/engine/guards/workspace-auth.guard'; | |
| import { MessageFolderDTO } from 'src/engine/metadata-modules/message-folder/dtos/message-folder.dto'; | |
| import { | |
| UpdateMessageFolderInput, | |
| UpdateMessageFoldersInput, | |
| } from 'src/engine/metadata-modules/message-folder/dtos/update-message-folder.input'; | |
| import { MessageFolderGraphqlApiExceptionInterceptor } from 'src/engine/metadata-modules/message-folder/interceptors/message-folder-graphql-api-exception.interceptor'; | |
| import { MessageFolderMetadataService } from 'src/engine/metadata-modules/message-folder/message-folder-metadata.service'; | |
| (WorkspaceAuthGuard) | |
| (MessageFolderGraphqlApiExceptionInterceptor) | |
| (() => MessageFolderDTO) | |
| export class MessageFolderResolver { | |
| constructor( | |
| private readonly messageFolderMetadataService: MessageFolderMetadataService, | |
| ) {} | |
| (() => [MessageFolderDTO]) | |
| (NoPermissionGuard) | |
| async myMessageFolders( | |
| () workspace: WorkspaceEntity, | |
| () userWorkspaceId: string, | |
| ('messageChannelId', { | |
| type: () => UUIDScalarType, | |
| nullable: true, | |
| }) | |
| messageChannelId?: string, | |
| ): Promise<MessageFolderDTO[]> { | |
| if (messageChannelId) { | |
| return this.messageFolderMetadataService.findByMessageChannelIdForUser({ | |
| messageChannelId, | |
| userWorkspaceId, | |
| workspaceId: workspace.id, | |
| }); | |
| } | |
| return this.messageFolderMetadataService.findByUserWorkspaceId({ | |
| userWorkspaceId, | |
| workspaceId: workspace.id, | |
| }); | |
| } | |
| (() => MessageFolderDTO) | |
| (NoPermissionGuard) | |
| async updateMessageFolder( | |
| ('input') input: UpdateMessageFolderInput, | |
| () workspace: WorkspaceEntity, | |
| () userWorkspaceId: string, | |
| ): Promise<MessageFolderDTO> { | |
| await this.messageFolderMetadataService.verifyOwnership({ | |
| id: input.id, | |
| userWorkspaceId, | |
| workspaceId: workspace.id, | |
| }); | |
| return this.messageFolderMetadataService.update({ | |
| id: input.id, | |
| workspaceId: workspace.id, | |
| data: input.update, | |
| }); | |
| } | |
| (() => [MessageFolderDTO]) | |
| (NoPermissionGuard) | |
| async updateMessageFolders( | |
| ('input') input: UpdateMessageFoldersInput, | |
| () workspace: WorkspaceEntity, | |
| () userWorkspaceId: string, | |
| ): Promise<MessageFolderDTO[]> { | |
| await Promise.all( | |
| input.ids.map((id) => | |
| this.messageFolderMetadataService.verifyOwnership({ | |
| id, | |
| userWorkspaceId, | |
| workspaceId: workspace.id, | |
| }), | |
| ), | |
| ); | |
| return this.messageFolderMetadataService.setSyncStatus({ | |
| ids: input.ids, | |
| workspaceId: workspace.id, | |
| data: input.update, | |
| }); | |
| } | |
| } | |