diff --git a/native/roles/change-roles-screen.react.js b/native/roles/change-roles-screen.react.js --- a/native/roles/change-roles-screen.react.js +++ b/native/roles/change-roles-screen.react.js @@ -10,7 +10,7 @@ import { changeThreadMemberRolesActionTypes } from 'lib/actions/thread-action-types.js'; import { createLoadingStatusSelector } from 'lib/selectors/loading-selectors.js'; import { otherUsersButNoOtherAdmins } from 'lib/selectors/thread-selectors.js'; -import { roleIsAdminRole } from 'lib/shared/thread-utils.js'; +import { roleIsAdminRole, roleIsInviteeRole } from 'lib/shared/thread-utils.js'; import type { LoadingStatus } from 'lib/types/loading-types.js'; import type { RelativeMemberInfo, @@ -55,10 +55,12 @@ const [selectedRole, setSelectedRole] = React.useState(role); const roleOptions = React.useMemo( () => - values(threadInfo.roles).map(threadRole => ({ - id: threadRole.id, - name: threadRole.name, - })), + values(threadInfo.roles) + .filter(r => !roleIsInviteeRole(r)) + .map(threadRole => ({ + id: threadRole.id, + name: threadRole.name, + })), [threadInfo.roles], ); const selectedRoleName = React.useMemo( diff --git a/web/modals/threads/members/change-member-role-modal.react.js b/web/modals/threads/members/change-member-role-modal.react.js --- a/web/modals/threads/members/change-member-role-modal.react.js +++ b/web/modals/threads/members/change-member-role-modal.react.js @@ -7,7 +7,7 @@ import SWMansionIcon from 'lib/components/swmansion-icon.react.js'; import { useChangeThreadMemberRoles } from 'lib/hooks/thread-hooks.js'; import { otherUsersButNoOtherAdmins } from 'lib/selectors/thread-selectors.js'; -import { roleIsAdminRole } from 'lib/shared/thread-utils.js'; +import { roleIsAdminRole, roleIsInviteeRole } from 'lib/shared/thread-utils.js'; import type { RelativeMemberInfo, ThreadInfo, @@ -37,10 +37,12 @@ const roleOptions = React.useMemo( () => - values(threadInfo.roles).map(role => ({ - id: role.id, - name: role.name, - })), + values(threadInfo.roles) + .filter(r => !roleIsInviteeRole(r)) + .map(role => ({ + id: role.id, + name: role.name, + })), [threadInfo.roles], );