From b12d086b22b5d1b954f9734869f9069da9aec019 Mon Sep 17 00:00:00 2001 From: William Grant Date: Mon, 3 Apr 2023 14:09:04 +0200 Subject: [PATCH] feat: DisappearingMessageType -> DisappearingMessageConversationType this is more explicit and allows use to use DisappearingMessageType in the message model --- .../overlay/OverlayDisappearingMessages.tsx | 12 ++++++------ ts/interactions/conversationInteractions.ts | 4 ++-- ts/models/conversation.ts | 4 ++-- ts/models/conversationAttributes.ts | 6 +++--- ts/receiver/queuedJob.ts | 7 +++++-- ts/session/group/closed-group.ts | 4 ++-- ts/state/ducks/conversations.ts | 4 ++-- 7 files changed, 22 insertions(+), 19 deletions(-) diff --git a/ts/components/conversation/right-panel/overlay/OverlayDisappearingMessages.tsx b/ts/components/conversation/right-panel/overlay/OverlayDisappearingMessages.tsx index 671a009cc..00211256f 100644 --- a/ts/components/conversation/right-panel/overlay/OverlayDisappearingMessages.tsx +++ b/ts/components/conversation/right-panel/overlay/OverlayDisappearingMessages.tsx @@ -3,8 +3,8 @@ import { useDispatch, useSelector } from 'react-redux'; import styled from 'styled-components'; import { setDisappearingMessagesByConvoId } from '../../../../interactions/conversationInteractions'; import { - DisappearingMessageSetting, - DisappearingMessageType, + DisappearingMessageConversationSetting, + DisappearingMessageConversationType, } from '../../../../models/conversationAttributes'; import { closeRightPanel } from '../../../../state/ducks/conversations'; import { resetRightOverlayMode } from '../../../../state/ducks/section'; @@ -93,8 +93,8 @@ const Header = (props: HeaderProps) => { }; type DisappearingModesProps = { - options: Array; - selected?: DisappearingMessageType; + options: Array; + selected?: DisappearingMessageConversationType; setSelected: (value: string) => void; }; @@ -104,7 +104,7 @@ const DisappearingModes = (props: DisappearingModesProps) => { <> {window.i18n('disappearingMessagesModeLabel')} - {options.map((option: DisappearingMessageType) => { + {options.map((option: DisappearingMessageConversationType) => { const optionI18n = option === 'off' ? window.i18n('disappearingMessagesModeOff') @@ -170,7 +170,7 @@ const TimeOptions = (props: TimerOptionsProps) => { export const OverlayDisappearingMessages = () => { const selectedConversationKey = useSelector(getSelectedConversationKey); - const disappearingModeOptions = DisappearingMessageSetting; + const disappearingModeOptions = DisappearingMessageConversationSetting; const timerOptions = useSelector(getTimerOptions).timerOptions; const convoProps = useSelector(getSelectedConversationExpirationSettings); diff --git a/ts/interactions/conversationInteractions.ts b/ts/interactions/conversationInteractions.ts index efc883e8b..64fba919e 100644 --- a/ts/interactions/conversationInteractions.ts +++ b/ts/interactions/conversationInteractions.ts @@ -8,7 +8,7 @@ import { CallManager, SyncUtils, ToastUtils, UserUtils } from '../session/utils' import { ConversationNotificationSettingType, ConversationTypeEnum, - DisappearingMessageType, + DisappearingMessageConversationType, } from '../models/conversationAttributes'; import _ from 'lodash'; @@ -344,7 +344,7 @@ export function deleteAllMessagesByConvoIdWithConfirmation(conversationId: strin export async function setDisappearingMessagesByConvoId( conversationId: string, - expirationType: DisappearingMessageType, + expirationType: DisappearingMessageConversationType, seconds?: number ) { const conversation = getConversationController().get(conversationId); diff --git a/ts/models/conversation.ts b/ts/models/conversation.ts index 7d0e98cad..55651cb36 100644 --- a/ts/models/conversation.ts +++ b/ts/models/conversation.ts @@ -78,7 +78,7 @@ import { ConversationAttributes, ConversationNotificationSetting, ConversationTypeEnum, - DisappearingMessageType, + DisappearingMessageConversationType, fillConvoAttributesWithDefaults, } from './conversationAttributes'; import { SogsBlinding } from '../session/apis/open_group_api/sogsv3/sogsBlinding'; @@ -1017,7 +1017,7 @@ export class ConversationModel extends Backbone.Model { } public async updateExpireTimer( - providedExpirationType: DisappearingMessageType, + providedExpirationType: DisappearingMessageConversationType, providedExpireTimer?: number, providedSource?: string, receivedAt?: number, // is set if it comes from outside diff --git a/ts/models/conversationAttributes.ts b/ts/models/conversationAttributes.ts index 980dce648..362762088 100644 --- a/ts/models/conversationAttributes.ts +++ b/ts/models/conversationAttributes.ts @@ -15,8 +15,8 @@ export const ConversationNotificationSetting = ['all', 'disabled', 'mentions_onl export type ConversationNotificationSettingType = typeof ConversationNotificationSetting[number]; // TODO Might need to be improved by using an enum -export const DisappearingMessageSetting = ['off', 'deleteAfterRead', 'deleteAfterSend']; -export type DisappearingMessageType = typeof DisappearingMessageSetting[number]; +export const DisappearingMessageConversationSetting = ['off', 'deleteAfterRead', 'deleteAfterSend']; +export type DisappearingMessageConversationType = typeof DisappearingMessageConversationSetting[number]; export interface ConversationAttributes { id: string; @@ -34,7 +34,7 @@ export interface ConversationAttributes { zombies: Array; // only used for closed groups. Zombies are users which left but not yet removed by the admin left: boolean; - expirationType: DisappearingMessageType; + expirationType: DisappearingMessageConversationType; expireTimer: number; lastDisappearingMessageChangeTimestamp: number; diff --git a/ts/receiver/queuedJob.ts b/ts/receiver/queuedJob.ts index b005d1aa9..9bf131ed6 100644 --- a/ts/receiver/queuedJob.ts +++ b/ts/receiver/queuedJob.ts @@ -14,7 +14,10 @@ import { MessageDirection } from '../models/messageType'; import { LinkPreviews } from '../util/linkPreviews'; import { GoogleChrome } from '../util'; import { appendFetchAvatarAndProfileJob } from './userProfileImageUpdates'; -import { ConversationTypeEnum, DisappearingMessageType } from '../models/conversationAttributes'; +import { + ConversationTypeEnum, + DisappearingMessageConversationType, +} from '../models/conversationAttributes'; import { getUsBlindedInThatServer } from '../session/apis/open_group_api/sogsv3/knownBlindedkeys'; function contentTypeSupported(type: string): boolean { @@ -311,7 +314,7 @@ async function handleExpirationTimerUpdateNoCommit( conversation: ConversationModel, message: MessageModel, source: string, - expirationType: DisappearingMessageType, + expirationType: DisappearingMessageConversationType, expireTimer: number ) { message.set({ diff --git a/ts/session/group/closed-group.ts b/ts/session/group/closed-group.ts index e5e97cb49..e43e6a5c7 100644 --- a/ts/session/group/closed-group.ts +++ b/ts/session/group/closed-group.ts @@ -31,7 +31,7 @@ import { getNowWithNetworkOffset } from '../apis/snode_api/SNodeAPI'; import { ConversationAttributes, ConversationTypeEnum, - DisappearingMessageType, + DisappearingMessageConversationType, } from '../../models/conversationAttributes'; export type GroupInfo = { @@ -40,7 +40,7 @@ export type GroupInfo = { members: Array; zombies?: Array; activeAt?: number; - expirationType?: DisappearingMessageType[0] | DisappearingMessageType[2]; + expirationType?: DisappearingMessageConversationType[0] | DisappearingMessageConversationType[2]; expireTimer?: number | null; blocked?: boolean; admins?: Array; diff --git a/ts/state/ducks/conversations.ts b/ts/state/ducks/conversations.ts index 40a96b86c..607fcd770 100644 --- a/ts/state/ducks/conversations.ts +++ b/ts/state/ducks/conversations.ts @@ -14,7 +14,7 @@ import { LightBoxOptions } from '../../components/conversation/SessionConversati import { ConversationNotificationSettingType, ConversationTypeEnum, - DisappearingMessageType, + DisappearingMessageConversationType, } from '../../models/conversationAttributes'; import { ReactionList } from '../../types/Reaction'; @@ -247,7 +247,7 @@ export interface ReduxConversationType { unreadCount?: number; mentionedUs?: boolean; isSelected?: boolean; - expirationType?: DisappearingMessageType; + expirationType?: DisappearingMessageConversationType; expireTimer?: number; lastDisappearingMessageChangeTimestamp?: number;