fix: address PR reviews

pull/2940/head
Audric Ackermann 2 years ago
parent e198d7a640
commit 23998065ea

@ -847,11 +847,11 @@ export class ConversationModel extends Backbone.Model<ConversationAttributes> {
if ( if (
this.getLastDisappearingMessageChangeTimestamp() && this.getLastDisappearingMessageChangeTimestamp() &&
lastDisappearingMessageChangeTimestamp && lastDisappearingMessageChangeTimestamp &&
this.getLastDisappearingMessageChangeTimestamp() >= lastDisappearingMessageChangeTimestamp this.getLastDisappearingMessageChangeTimestamp() > lastDisappearingMessageChangeTimestamp
) { ) {
window.log.debug( window.log.debug(
'[updateExpireTimer] This is an outdated disappearing message setting', '[updateExpireTimer] This is an outdated disappearing message setting',
`fromSync: ${fromSync}${existingMessage ? ` messageId: ${existingMessage.get('id')}` : ''}` `fromSync:${fromSync} ${existingMessage ? ` messageId: ${existingMessage.get('id')}` : ''}`
); );
return false; return false;
} }

@ -260,6 +260,7 @@ export async function handleSwarmDataMessage(
msgModel = DisappearingMessages.getMessageReadyToDisappear( msgModel = DisappearingMessages.getMessageReadyToDisappear(
convoToAddMessageTo, convoToAddMessageTo,
msgModel, msgModel,
cleanDataMessage.flags,
expireUpdate expireUpdate
); );
} }

@ -321,7 +321,7 @@ async function checkForExpireUpdateInContentMessage(
convoToUpdate.getLastDisappearingMessageChangeTimestamp() > convoToUpdate.getLastDisappearingMessageChangeTimestamp() >
lastDisappearingMessageChangeTimestamp) || lastDisappearingMessageChangeTimestamp) ||
(!isOutgoing && (!isOutgoing &&
convoToUpdate.getLastDisappearingMessageChangeTimestamp() >= convoToUpdate.getLastDisappearingMessageChangeTimestamp() >
lastDisappearingMessageChangeTimestamp)) lastDisappearingMessageChangeTimestamp))
) { ) {
window.log.debug( window.log.debug(
@ -448,20 +448,20 @@ function checkForExpiringOutgoingMessage(message: MessageModel, location?: strin
function getMessageReadyToDisappear( function getMessageReadyToDisappear(
conversationModel: ConversationModel, conversationModel: ConversationModel,
messageModel: MessageModel, messageModel: MessageModel,
messageFlags: number,
expireUpdate?: DisappearingMessageUpdate expireUpdate?: DisappearingMessageUpdate
) { ) {
if (!expireUpdate) {
// window.log.debug(
// `[getMessageReadyToDisappear] called getMessageReadyToDisappear() without an expireUpdate`
// );
return messageModel;
}
if (conversationModel.isPublic()) { if (conversationModel.isPublic()) {
throw Error( throw Error(
`getMessageReadyToDisappear() Disappearing messages aren't supported in communities` `getMessageReadyToDisappear() Disappearing messages aren't supported in communities`
); );
} }
if (!expireUpdate) {
window.log.debug(
`[getMessageReadyToDisappear] called getMessageReadyToDisappear() without an expireUpdate`
);
return messageModel;
}
const { const {
expirationType, expirationType,
@ -477,13 +477,17 @@ function getMessageReadyToDisappear(
}); });
// This message is an ExpirationTimerUpdate // This message is an ExpirationTimerUpdate
if (lastDisappearingMessageChangeTimestamp || isLegacyConversationSettingMessage) { if (
(lastDisappearingMessageChangeTimestamp || isLegacyConversationSettingMessage) &&
messageFlags === SignalService.DataMessage.Flags.EXPIRATION_TIMER_UPDATE
) {
const previousExpirationMode = conversationModel.getExpirationMode(); const previousExpirationMode = conversationModel.getExpirationMode();
const previousExpirationTimer = conversationModel.getExpireTimer(); const previousExpirationTimer = conversationModel.getExpireTimer();
const shouldUsePreviousExpiration = const shouldUsePreviousExpiration =
expirationType === 'unknown' && expirationType === 'unknown' &&
previousExpirationMode !== 'off' && previousExpirationMode !== 'off' &&
previousExpirationMode !== 'legacy'; previousExpirationMode !== 'legacy' &&
messageFlags === SignalService.DataMessage.Flags.EXPIRATION_TIMER_UPDATE;
if (shouldUsePreviousExpiration) { if (shouldUsePreviousExpiration) {
messageModel.set({ messageModel.set({

@ -1,28 +1,25 @@
import { AbortController } from 'abort-controller'; import { AbortController } from 'abort-controller';
import { PendingMessageCache } from './PendingMessageCache';
import { JobQueue, MessageUtils, UserUtils } from '../utils';
import { PubKey, RawMessage } from '../types';
import { MessageSender } from '.'; import { MessageSender } from '.';
import { ClosedGroupMessage } from '../messages/outgoing/controlMessage/group/ClosedGroupMessage';
import { ConfigurationMessage } from '../messages/outgoing/controlMessage/ConfigurationMessage'; import { ConfigurationMessage } from '../messages/outgoing/controlMessage/ConfigurationMessage';
import { ClosedGroupMessage } from '../messages/outgoing/controlMessage/group/ClosedGroupMessage';
import { ClosedGroupNameChangeMessage } from '../messages/outgoing/controlMessage/group/ClosedGroupNameChangeMessage'; import { ClosedGroupNameChangeMessage } from '../messages/outgoing/controlMessage/group/ClosedGroupNameChangeMessage';
import { PubKey, RawMessage } from '../types';
import { JobQueue, MessageUtils, UserUtils } from '../utils';
import { PendingMessageCache } from './PendingMessageCache';
import { ClosedGroupMemberLeftMessage } from '../messages/outgoing/controlMessage/group/ClosedGroupMemberLeftMessage';
import { MessageSentHandler } from './MessageSentHandler';
import { ContentMessage } from '../messages/outgoing'; import { ContentMessage } from '../messages/outgoing';
import { ExpirationTimerUpdateMessage } from '../messages/outgoing/controlMessage/ExpirationTimerUpdateMessage'; import { ExpirationTimerUpdateMessage } from '../messages/outgoing/controlMessage/ExpirationTimerUpdateMessage';
import { ClosedGroupAddedMembersMessage } from '../messages/outgoing/controlMessage/group/ClosedGroupAddedMembersMessage'; import { ClosedGroupAddedMembersMessage } from '../messages/outgoing/controlMessage/group/ClosedGroupAddedMembersMessage';
import { ClosedGroupEncryptionPairMessage } from '../messages/outgoing/controlMessage/group/ClosedGroupEncryptionPairMessage'; import { ClosedGroupEncryptionPairMessage } from '../messages/outgoing/controlMessage/group/ClosedGroupEncryptionPairMessage';
import { ClosedGroupMemberLeftMessage } from '../messages/outgoing/controlMessage/group/ClosedGroupMemberLeftMessage';
import { ClosedGroupNewMessage } from '../messages/outgoing/controlMessage/group/ClosedGroupNewMessage'; import { ClosedGroupNewMessage } from '../messages/outgoing/controlMessage/group/ClosedGroupNewMessage';
import { ClosedGroupRemovedMembersMessage } from '../messages/outgoing/controlMessage/group/ClosedGroupRemovedMembersMessage'; import { ClosedGroupRemovedMembersMessage } from '../messages/outgoing/controlMessage/group/ClosedGroupRemovedMembersMessage';
import { ClosedGroupVisibleMessage } from '../messages/outgoing/visibleMessage/ClosedGroupVisibleMessage'; import { ClosedGroupVisibleMessage } from '../messages/outgoing/visibleMessage/ClosedGroupVisibleMessage';
import { SyncMessageType } from '../utils/sync/syncUtils'; import { SyncMessageType } from '../utils/sync/syncUtils';
import { MessageSentHandler } from './MessageSentHandler';
import { OpenGroupRequestCommonType } from '../apis/open_group_api/opengroupV2/ApiUtil'; import { OpenGroupRequestCommonType } from '../apis/open_group_api/opengroupV2/ApiUtil';
import { OpenGroupVisibleMessage } from '../messages/outgoing/visibleMessage/OpenGroupVisibleMessage';
import { UnsendMessage } from '../messages/outgoing/controlMessage/UnsendMessage';
import { CallMessage } from '../messages/outgoing/controlMessage/CallMessage';
import { OpenGroupMessageV2 } from '../apis/open_group_api/opengroupV2/OpenGroupMessageV2'; import { OpenGroupMessageV2 } from '../apis/open_group_api/opengroupV2/OpenGroupMessageV2';
import { sendSogsReactionOnionV4 } from '../apis/open_group_api/sogsv3/sogsV3SendReaction'; import { sendSogsReactionOnionV4 } from '../apis/open_group_api/sogsv3/sogsV3SendReaction';
import { import {
@ -30,7 +27,10 @@ import {
SnodeNamespacesGroup, SnodeNamespacesGroup,
SnodeNamespacesUser, SnodeNamespacesUser,
} from '../apis/snode_api/namespaces'; } from '../apis/snode_api/namespaces';
import { CallMessage } from '../messages/outgoing/controlMessage/CallMessage';
import { SharedConfigMessage } from '../messages/outgoing/controlMessage/SharedConfigMessage'; import { SharedConfigMessage } from '../messages/outgoing/controlMessage/SharedConfigMessage';
import { UnsendMessage } from '../messages/outgoing/controlMessage/UnsendMessage';
import { OpenGroupVisibleMessage } from '../messages/outgoing/visibleMessage/OpenGroupVisibleMessage';
type ClosedGroupMessageType = type ClosedGroupMessageType =
| ClosedGroupVisibleMessage | ClosedGroupVisibleMessage

Loading…
Cancel
Save