feat: created getters on convo model

replaced all expirationMode calls
pull/2971/head
William Grant 2 years ago
parent da869bfdd3
commit 3ed041c4a5

@ -327,8 +327,8 @@ export class ConversationModel extends Backbone.Model<ConversationAttributes> {
toRet.avatarPath = avatarPath;
}
if (this.get('expirationMode')) {
toRet.expirationMode = this.get('expirationMode');
if (this.getExpirationMode()) {
toRet.expirationMode = this.getExpirationMode();
}
if (this.get('lastDisappearingMessageChangeTimestamp')) {
@ -757,7 +757,7 @@ export class ConversationModel extends Backbone.Model<ConversationAttributes> {
expirationType: changeToDisappearingMessageType(
this,
this.get('expireTimer'),
this.get('expirationMode')
this.getExpirationMode()
),
expireTimer: this.get('expireTimer'),
serverTimestamp: this.isPublic() ? networkTimestamp : undefined,
@ -849,7 +849,7 @@ export class ConversationModel extends Backbone.Model<ConversationAttributes> {
// NOTE: We don' mind if the message is the same, we still want to update the conversation because we want to show visible control messages we receive an ExpirationTimerUpdate
// Compare mode and timestamp
if (
isEqual(expirationMode, this.get('expirationMode')) &&
isEqual(expirationMode, this.getExpirationMode()) &&
isEqual(expireTimer, this.get('expireTimer'))
) {
window.log.info(
@ -2337,15 +2337,35 @@ export class ConversationModel extends Backbone.Model<ConversationAttributes> {
private isDisappearingMode(mode: DisappearingMessageConversationModeType) {
const success =
mode === 'deleteAfterRead'
? this.get('expirationMode') === 'deleteAfterRead'
? this.getExpirationMode() === 'deleteAfterRead'
: mode === 'deleteAfterSend'
? this.get('expirationMode') === 'deleteAfterSend'
? this.getExpirationMode() === 'deleteAfterSend'
: mode === 'off'
? this.get('expirationMode') === 'off'
? this.getExpirationMode() === 'off'
: false;
return success;
}
// NOTE We want to replace Backbone .get() calls with these getters as we migrate to Redux completely eventually
// region Start of getters
public getExpirationMode() {
return this.get('expirationMode');
}
public getExpireTimer() {
return this.get('expireTimer');
}
public getHasOutdatedClient() {
return this.get('hasOutdatedClient');
}
public getLastDisappearingMessageChangeTimestamp() {
return this.get('lastDisappearingMessageChangeTimestamp');
}
// endregon
}
export async function commitConversationAndRefreshWrapper(id: string) {

@ -384,7 +384,7 @@ async function handleContactsUpdate(result: IncomingConfResult): Promise<Incomin
if (
wrapperConvo.expirationTimerSeconds !== contactConvo.get('expireTimer') ||
wrapperConvo.expirationMode !== contactConvo.get('expirationMode')
wrapperConvo.expirationMode !== contactConvo.getExpirationMode()
) {
await contactConvo.updateExpireTimer({
providedDisappearingMode: wrapperConvo.expirationMode,
@ -694,8 +694,8 @@ async function applyConvoVolatileUpdateFromWrapper(
// TODO legacy messages support will be removed in a future release
if (
canBeDeleteAfterRead &&
(foundConvo.get('expirationMode') === 'deleteAfterRead' ||
foundConvo.get('expirationMode') === 'legacy') &&
(foundConvo.getExpirationMode() === 'deleteAfterRead' ||
foundConvo.getExpirationMode() === 'legacy') &&
foundConvo.get('expireTimer') > 0
) {
const messages2Expire = await Data.getDisappearingUnreadByConversation(

@ -872,7 +872,7 @@ export async function handleDataExtractionNotification(
const envelopeTimestamp = toNumber(timestamp);
const referencedAttachmentTimestamp = toNumber(referencedAttachment);
const expirationMode = convo.get('expirationMode');
const expirationMode = convo.getExpirationMode();
const expireTimer = convo.get('expireTimer');
let expirationType;
let expirationStartTimestamp;

@ -75,7 +75,7 @@ export async function initiateClosedGroupUpdate(
const expirationType = changeToDisappearingMessageType(
convo,
convo.get('expireTimer'),
convo.get('expirationMode')
convo.getExpirationMode()
);
if (expirationType === 'deleteAfterRead') {
@ -173,7 +173,7 @@ export async function addUpdateMessage(
groupUpdate.kicked = diff.kickedMembers;
}
const expirationMode = convo.get('expirationMode');
const expirationMode = convo.getExpirationMode();
const expireTimer = convo.get('expireTimer');
let expirationType;
let expirationStartTimestamp;
@ -316,7 +316,7 @@ async function sendAddedMembers(
}
const encryptionKeyPair = ECKeyPair.fromHexKeyPair(hexEncryptionKeyPair);
const expirationMode = convo.get('expirationMode') || 'off';
const expirationMode = convo.getExpirationMode() || 'off';
const existingExpireTimer = convo.get('expireTimer') || 0;
// Send the Added Members message to the group (only members already in the group will get it)
const closedGroupControlMessage = new ClosedGroupAddedMembersMessage({

@ -516,7 +516,7 @@ export async function USER_callRecipient(recipient: string) {
await calledConvo.unhideIfNeeded(false);
weAreCallerOnCurrentCall = true;
const expirationMode = calledConvo.get('expirationMode');
const expirationMode = calledConvo.getExpirationMode();
const expireTimer = calledConvo.get('expireTimer') || 0;
let expirationType;
let expirationStartTimestamp;
@ -901,7 +901,7 @@ export async function USER_acceptIncomingCallRequest(fromSender: string) {
callerConvo.set('active_at', networkTimestamp);
await callerConvo.unhideIfNeeded(false);
const expirationMode = callerConvo.get('expirationMode');
const expirationMode = callerConvo.getExpirationMode();
const expireTimer = callerConvo.get('expireTimer') || 0;
let expirationType;
let expirationStartTimestamp;
@ -1258,7 +1258,7 @@ async function addMissedCallMessage(callerPubkey: string, sentAt: number) {
await incomingCallConversation.unhideIfNeeded(false);
}
const expirationMode = incomingCallConversation.get('expirationMode');
const expirationMode = incomingCallConversation.getExpirationMode();
const expireTimer = incomingCallConversation.get('expireTimer') || 0;
let expirationType;
let expirationStartTimestamp;

@ -54,7 +54,7 @@ async function insertContactFromDBIntoWrapperAndRefresh(id: string): Promise<voi
const dbApprovedMe = !!foundConvo.get('didApproveMe') || false;
const dbBlocked = !!foundConvo.isBlocked() || false;
const priority = foundConvo.get('priority') || 0;
const expirationMode = foundConvo.get('expirationMode') || undefined;
const expirationMode = foundConvo.getExpirationMode() || undefined;
const expireTimer = foundConvo.get('expireTimer') || 0;
const wrapperContact = getContactInfoFromDBValues({

@ -116,7 +116,7 @@ async function insertGroupsFromDBIntoWrapperAndRefresh(convoId: string): Promise
priority: foundConvo.get('priority'),
members: foundConvo.get('members') || [],
groupAdmins: foundConvo.get('groupAdmins') || [],
expirationMode: foundConvo.get('expirationMode') || 'off',
expirationMode: foundConvo.getExpirationMode() || 'off',
expireTimer: foundConvo.get('expireTimer') || 0,
displayNameInProfile: foundConvo.get('displayNameInProfile'),
encPubkeyHex: encryptionKeyPair?.publicHex || '',

@ -394,7 +394,7 @@ function checkDisappearButIsntMessage(
content.dataMessage?.flags !== SignalService.DataMessage.Flags.EXPIRATION_TIMER_UPDATE &&
expirationMode === 'off' &&
expirationTimer === 0 &&
convo.get('expirationMode') !== 'off' &&
convo.getExpirationMode() !== 'off' &&
convo.get('expireTimer') !== 0
);
}
@ -501,10 +501,10 @@ export async function checkForExpireUpdateInContentMessage(
!isDisappearingMessagesV2Released &&
!isLegacyConversationSettingMessage &&
couldBeLegacyContentMessage &&
convoToUpdate.get('expirationMode') !== 'off'
convoToUpdate.getExpirationMode() !== 'off'
) {
if (
expirationMode !== convoToUpdate.get('expirationMode') ||
expirationMode !== convoToUpdate.getExpirationMode() ||
expirationTimer !== convoToUpdate.get('expireTimer')
) {
window.log.debug(
@ -517,7 +517,7 @@ export async function checkForExpireUpdateInContentMessage(
expireUpdate.expirationType = changeToDisappearingMessageType(
convoToUpdate,
expireUpdate.expirationTimer,
convoToUpdate.get('expirationMode')
convoToUpdate.getExpirationMode()
);
expireUpdate.isLegacyDataMessage = true;
}
@ -538,7 +538,7 @@ export async function checkForExpireUpdateInContentMessage(
expireUpdate.expirationType = changeToDisappearingMessageType(
convoToUpdate,
expireUpdate.expirationTimer,
convoToUpdate.get('expirationMode')
convoToUpdate.getExpirationMode()
);
expireUpdate.isLegacyDataMessage = true;
}

Loading…
Cancel
Save