diff --git a/native/roles/create-roles-header-right-button.react.js b/native/roles/create-roles-header-right-button.react.js --- a/native/roles/create-roles-header-right-button.react.js +++ b/native/roles/create-roles-header-right-button.react.js @@ -12,7 +12,9 @@ useServerCall, useDispatchActionPromise, } from 'lib/utils/action-utils.js'; +import { values } from 'lib/utils/objects.js'; +import { displayActionResultModal } from '../navigation/action-result-modal.js'; import type { NavigationRoute } from '../navigation/route-names'; import { useStyles } from '../themes/colors.js'; @@ -29,6 +31,14 @@ const dispatchActionPromise = useDispatchActionPromise(); const onPressCreate = React.useCallback(() => { + const threadRoleNames = values(threadInfo.roles).map(role => role.name); + if (threadRoleNames.includes(roleName)) { + displayActionResultModal( + 'There is already a role with this name in the community', + ); + return; + } + dispatchActionPromise( modifyCommunityRoleActionTypes, callModifyCommunityRole({