Fix send email error when empty connected account (#10005)

- Fix send email error when empty connected account
- Add a global util to valid uuid
- Add an util to check if object is workflow related
This commit is contained in:
Thomas Trompette
2025-02-04 17:13:29 +01:00
committed by GitHub
parent 0113e40399
commit 7dfb9dd77f
12 changed files with 39 additions and 34 deletions

View File

@ -11,4 +11,5 @@ export enum SendEmailActionExceptionCode {
PROVIDER_NOT_SUPPORTED = 'PROVIDER_NOT_SUPPORTED',
CONNECTED_ACCOUNT_NOT_FOUND = 'CONNECTED_ACCOUNT_NOT_FOUND',
INVALID_EMAIL = 'INVALID_EMAIL',
INVALID_CONNECTED_ACCOUNT_ID = 'INVALID_CONNECTED_ACCOUNT_ID',
}

View File

@ -2,8 +2,8 @@ import { Injectable, Logger } from '@nestjs/common';
import DOMPurify from 'dompurify';
import { JSDOM } from 'jsdom';
import { isDefined, isValidUuid } from 'twenty-shared';
import { z } from 'zod';
import { isDefined } from 'twenty-shared';
import { WorkflowAction } from 'src/modules/workflow/workflow-executor/interfaces/workflow-action.interface';
@ -36,6 +36,13 @@ export class SendEmailWorkflowAction implements WorkflowAction {
) {}
private async getEmailClient(connectedAccountId: string) {
if (!isValidUuid(connectedAccountId)) {
throw new SendEmailActionException(
`Connected Account ID is not a valid UUID`,
SendEmailActionExceptionCode.INVALID_CONNECTED_ACCOUNT_ID,
);
}
const { workspaceId } = this.scopedWorkspaceContextFactory.create();
if (!workspaceId) {