diff --git a/src/components/common/DeleteMessageModal.module.scss b/src/components/common/DeleteMessageModal.module.scss index 749b30f8f..a6944e058 100644 --- a/src/components/common/DeleteMessageModal.module.scss +++ b/src/components/common/DeleteMessageModal.module.scss @@ -13,6 +13,10 @@ margin: 0; } +.singleTitle { + margin-bottom: 1rem; +} + .actionTitle { margin-top: 1.5rem; margin-left: 1rem; diff --git a/src/components/common/DeleteMessageModal.tsx b/src/components/common/DeleteMessageModal.tsx index 322c1c4f3..c4a46c26a 100644 --- a/src/components/common/DeleteMessageModal.tsx +++ b/src/components/common/DeleteMessageModal.tsx @@ -129,6 +129,8 @@ const DeleteMessageModal: FC = ({ return user && user.id !== currentUserId; }, [user, currentUserId]); + const shouldShowOptions = shouldShowAdditionalOptions && !canDeleteForAll && !isSchedule && (isGroup || isSuperGroup); + const userName = useMemo(() => { const usersById = getGlobal().users.byId; if (!sender || isSchedule) return ''; @@ -294,15 +296,14 @@ const DeleteMessageModal: FC = ({ function renderHeader() { return ( -
- {(shouldShowAdditionalOptions && !canDeleteForAll && !isSchedule) && ( +
+ {shouldShowOptions && ( )} -

{lang('DeleteSingleMessagesTitle')} -

+

{lang('DeleteSingleMessagesTitle')}

); } @@ -365,7 +366,7 @@ const DeleteMessageModal: FC = ({ >
{renderHeader()} - {(shouldShowAdditionalOptions && !canDeleteForAll && !isSchedule && (isGroup || isSuperGroup)) && ( + {shouldShowOptions && ( <>

{lang('DeleteAdditionalActions')}

{renderAdditionalActionOptions()} diff --git a/src/components/middle/DeleteSelectedMessageModal.module.scss b/src/components/middle/DeleteSelectedMessageModal.module.scss index 5784b37ff..8d4ac7321 100644 --- a/src/components/middle/DeleteSelectedMessageModal.module.scss +++ b/src/components/middle/DeleteSelectedMessageModal.module.scss @@ -13,6 +13,10 @@ margin: 0; } +.singleTitle { + margin-bottom: 1rem; +} + .actionTitle { margin-top: 1.5rem; margin-left: 1rem; diff --git a/src/components/middle/DeleteSelectedMessageModal.tsx b/src/components/middle/DeleteSelectedMessageModal.tsx index 40cc6851d..9f3727814 100644 --- a/src/components/middle/DeleteSelectedMessageModal.tsx +++ b/src/components/middle/DeleteSelectedMessageModal.tsx @@ -155,6 +155,8 @@ const DeleteSelectedMessageModal: FC = ({ return !userList.some((user) => user.id === currentUserId); }, [userList, currentUserId]); + const shouldShowOptions = showAdditionalOptions && !canDeleteForAll && !isSchedule && (isGroup || isSuperGroup); + const userNames = useMemo(() => { const usersById = getGlobal().users.byId; if (!senderList || isSchedule) return {}; @@ -162,7 +164,7 @@ const DeleteSelectedMessageModal: FC = ({ const uniqueUserIds = new Set(senderList.map((user) => user!.id)); const userIds = Array.from(uniqueUserIds).map((userId) => usersById[userId]); - return buildCollectionByCallback(userIds, (user) => [user.id, getUserFullName(user)]); + return buildCollectionByCallback(userIds, (user) => [user?.id, getUserFullName(user)]); }, [isSchedule, senderList]); const ACTION_SPAM_OPTION: IRadioOption[] = useMemo(() => { @@ -247,8 +249,7 @@ const DeleteSelectedMessageModal: FC = ({ const handleDeleteMessageForSelf = useLastCallback(() => { if (isSchedule) { deleteScheduledMessages({ messageIds: selectedMessageIds! }); - } else if (!isSenderOwner - && (chosenSpanOption || chosenDeleteOption || chosenBanOption) && (isGroup || isSuperGroup)) { + } else if (!isSenderOwner && shouldShowOptions) { if (chosenSpanOption) { const userIdList = chosenSpanOption.filter((option) => !Number.isNaN(Number(option))); const filteredMessageIdList = filterMessageIdByUserId(userIdList, selectedMessageIds!); @@ -319,14 +320,18 @@ const DeleteSelectedMessageModal: FC = ({ function renderHeader() { return ( -
- {(showAdditionalOptions && !canDeleteForAll && !isSchedule) && ( +
+ {shouldShowOptions && ( )} -

{oldLang('Chat.DeleteMessagesConfirmation', selectedMessageIds?.length)} +

+ {oldLang('Chat.DeleteMessagesConfirmation', selectedMessageIds?.length)}

); @@ -395,7 +400,7 @@ const DeleteSelectedMessageModal: FC = ({
{renderHeader()} {!showAdditionalOptions &&

{lang('AreYouSureDeleteFewMessages')}

} - {(showAdditionalOptions && !canDeleteForAll && !isSchedule && (isGroup || isSuperGroup)) && ( + {shouldShowOptions && ( <>

{oldLang('DeleteAdditionalActions')}

{renderAdditionalActionOptions()}