diff --git a/frontend/src/pages/project/RoleDetailsBySlugPage/components/ProjectRoleModifySection.utils.tsx b/frontend/src/pages/project/RoleDetailsBySlugPage/components/ProjectRoleModifySection.utils.tsx index 6cef42f12..c986be37b 100644 --- a/frontend/src/pages/project/RoleDetailsBySlugPage/components/ProjectRoleModifySection.utils.tsx +++ b/frontend/src/pages/project/RoleDetailsBySlugPage/components/ProjectRoleModifySection.utils.tsx @@ -226,6 +226,23 @@ const ConditionSchema = z : el.rhs.trim().startsWith("/") ), { message: "Invalid Secret Path. Must start with '/'" } + ) + .refine( + (val) => + val + .filter((el) => el.operator === PermissionConditionOperators.$EQ) + .every((el) => !el.rhs.includes(",")), + { message: '"Equal" checks cannot contain comma separated values. Use "IN" operator instead.' } + ) + .refine( + (val) => + val + .filter((el) => el.operator === PermissionConditionOperators.$NEQ) + .every((el) => !el.rhs.includes(",")), + { + message: + '"Not Equal" checks cannot contain comma separated values. Use "IN" operator with "Forbid" instead.' + } ); export const projectRoleFormSchema = z.object({