diff --git a/packages/features/ee/workflows/components/AddActionDialog.tsx b/packages/features/ee/workflows/components/AddActionDialog.tsx index 2ff2bbd087..5c56de3b46 100644 --- a/packages/features/ee/workflows/components/AddActionDialog.tsx +++ b/packages/features/ee/workflows/components/AddActionDialog.tsx @@ -39,6 +39,7 @@ interface IAddActionDialog { senderId?: string, senderName?: string ) => void; + setKYCVerificationDialogOpen: () => void; } interface ISelectActionOption { @@ -56,7 +57,7 @@ type AddActionFormValues = { export const AddActionDialog = (props: IAddActionDialog) => { const { t } = useLocale(); - const { isOpenDialog, setIsOpenDialog, addAction } = props; + const { isOpenDialog, setIsOpenDialog, addAction, setKYCVerificationDialogOpen } = props; const [isPhoneNumberNeeded, setIsPhoneNumberNeeded] = useState(false); const [isSenderIdNeeded, setIsSenderIdNeeded] = useState(false); const [isEmailAddressNeeded, setIsEmailAddressNeeded] = useState(false); @@ -168,7 +169,10 @@ export const AddActionDialog = (props: IAddActionDialog) => { className="text-sm" defaultValue={actionOptions[0]} onChange={handleSelectAction} - options={actionOptions} + options={actionOptions.map((option) => ({ + ...option, + verificationAction: () => setKYCVerificationDialogOpen(), + }))} isOptionDisabled={(option: { label: string; value: WorkflowActions; diff --git a/packages/features/ee/workflows/components/WorkflowDetailsPage.tsx b/packages/features/ee/workflows/components/WorkflowDetailsPage.tsx index 57781441e7..4760d25175 100644 --- a/packages/features/ee/workflows/components/WorkflowDetailsPage.tsx +++ b/packages/features/ee/workflows/components/WorkflowDetailsPage.tsx @@ -219,6 +219,7 @@ export default function WorkflowDetailsPage(props: Props) { isOpenDialog={isAddActionDialogOpen} setIsOpenDialog={setIsAddActionDialogOpen} addAction={addAction} + setKYCVerificationDialogOpen={() => setKYCVerificationDialogOpen(true)} /> { if (isSMSOrWhatsappAction(s.action) && !hasPaidPlan) { throw new TRPCError({ code: "UNAUTHORIZED" }); } - if (isTextMessageToAttendeeAction(s.action)) { + if (!isKYCVerified && isTextMessageToAttendeeAction(s.action)) { throw new TRPCError({ code: "UNAUTHORIZED", message: "Account needs to be verified" }); } const { id: _stepId, ...stepToAdd } = s;