diff --git a/ts/components/DeleteMessagesModal.tsx b/ts/components/DeleteMessagesModal.tsx index e12c24827..c967d6a8e 100644 --- a/ts/components/DeleteMessagesModal.tsx +++ b/ts/components/DeleteMessagesModal.tsx @@ -41,7 +41,7 @@ export default function DeleteMessagesModal({ : i18n('icu:DeleteMessagesModal--deleteForMe'), }); - if (canDeleteForEveryone) { + if (canDeleteForEveryone || isMe) { const tooManyMessages = messageCount > MAX_DELETE_FOR_EVERYONE; actions.push({ 'aria-disabled': tooManyMessages, diff --git a/ts/util/sendDeleteForEveryoneMessage.ts b/ts/util/sendDeleteForEveryoneMessage.ts index 9d118d405..c15b9f599 100644 --- a/ts/util/sendDeleteForEveryoneMessage.ts +++ b/ts/util/sendDeleteForEveryoneMessage.ts @@ -19,6 +19,7 @@ import { __DEPRECATED$getMessageById } from '../messages/getMessageById'; import { getRecipientConversationIds } from './getRecipientConversationIds'; import { getRecipients } from './getRecipients'; import { repeat, zipObject } from './iterables'; +import { isMe } from './whatTypeOfConversation'; export async function sendDeleteForEveryoneMessage( conversationAttributes: ConversationAttributesType, @@ -39,10 +40,15 @@ export async function sendDeleteForEveryoneMessage( } const idForLogging = getMessageIdForLogging(message.attributes); - const timestamp = Date.now(); - const maxDuration = deleteForEveryoneDuration || DAY; - if (timestamp - targetTimestamp > maxDuration) { - throw new Error(`Cannot send DOE for a message older than ${maxDuration}`); + // If conversation is a Note To Self, no deletion time limits apply. + if (!isMe(conversationAttributes)) { + const timestamp = Date.now(); + const maxDuration = deleteForEveryoneDuration || DAY; + if (timestamp - targetTimestamp > maxDuration) { + throw new Error( + `Cannot send DOE for a message older than ${maxDuration}` + ); + } } message.set({