From 22b3b53c58ef9663c518cecd42ac9bcf15b0556a Mon Sep 17 00:00:00 2001 From: Alexander Zinchuk Date: Fri, 10 Mar 2023 02:34:08 +0100 Subject: [PATCH] Hide participants: Show option only when available (#2752) --- .../right/management/ManageGroupMembers.tsx | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/src/components/right/management/ManageGroupMembers.tsx b/src/components/right/management/ManageGroupMembers.tsx index 4200b26d3..b318fdecb 100644 --- a/src/components/right/management/ManageGroupMembers.tsx +++ b/src/components/right/management/ManageGroupMembers.tsx @@ -47,8 +47,8 @@ type StateProps = { globalUserIds?: string[]; currentUserId?: string; canDeleteMembers?: boolean; - isBasicGroup?: boolean; areParticipantsHidden?: boolean; + canHideParticipants?: boolean; }; const ManageGroupMembers: FC = ({ @@ -66,8 +66,8 @@ const ManageGroupMembers: FC = ({ searchQuery, currentUserId, canDeleteMembers, - isBasicGroup, areParticipantsHidden, + canHideParticipants, onClose, onScreenSelect, onChatMemberSelect, @@ -192,7 +192,7 @@ const ManageGroupMembers: FC = ({
{noAdmins && renderSearchField()}
- {!isBasicGroup && ( + {canHideParticipants && (
{lang('ChannelHideMembers')} @@ -255,6 +255,12 @@ export default memo(withGlobal( const adminMembersById = chat?.fullInfo?.adminMembersById; const isChannel = chat && isChatChannel(chat); const { userIds: localContactIds } = global.contactList || {}; + const hiddenMembersMinCount = global.appConfig?.hiddenMembersMinCount; + + const canDeleteMembers = chat && (chat.isCreator || getHasAdminRight(chat, 'banUsers')); + + const canHideParticipants = canDeleteMembers && !isChatBasicGroup(chat) && chat.membersCount !== undefined + && hiddenMembersMinCount !== undefined && chat.membersCount >= hiddenMembersMinCount; const { query: searchQuery, @@ -263,10 +269,7 @@ export default memo(withGlobal( localUserIds, } = selectTabState(global).userSearch; - const canDeleteMembers = chat && (chat.isCreator || getHasAdminRight(chat, 'banUsers')); - return { - isBasicGroup: Boolean(chat && isChatBasicGroup(chat)), areParticipantsHidden: Boolean(chat && chat.fullInfo?.areParticipantsHidden), members, adminMembersById, @@ -279,6 +282,7 @@ export default memo(withGlobal( localUserIds, canDeleteMembers, currentUserId: global.currentUserId, + canHideParticipants, }; }, )(ManageGroupMembers));