From b53a61fbde077bea441d578aa8f20daeba273c36 Mon Sep 17 00:00:00 2001 From: Evan Hahn <69474926+EvanHahn-Signal@users.noreply.github.com> Date: Tue, 11 May 2021 13:27:19 -0500 Subject: [PATCH] Fix non-default disappearing message timers on group details screen --- .../ConversationDetails.tsx | 38 ++++++++++--------- 1 file changed, 20 insertions(+), 18 deletions(-) diff --git a/ts/components/conversation/conversation-details/ConversationDetails.tsx b/ts/components/conversation/conversation-details/ConversationDetails.tsx index b221625675..fb2c670fdc 100644 --- a/ts/components/conversation/conversation-details/ConversationDetails.tsx +++ b/ts/components/conversation/conversation-details/ConversationDetails.tsx @@ -63,6 +63,10 @@ export type StateProps = { export type Props = StateProps; +const expirationTimerDefaultSet = new Set( + expirationTimer.DEFAULT_DURATIONS_IN_SECONDS +); + export const ConversationDetails: React.ComponentType = ({ addMembers, canEditGroupInfo, @@ -196,6 +200,13 @@ export const ConversationDetails: React.ComponentType = ({ throw missingCaseError(modalState); } + const expireTimer = conversation.expireTimer || 0; + + let expirationTimerDurations = expirationTimer.DEFAULT_DURATIONS_IN_SECONDS; + if (!expirationTimerDefaultSet.has(expireTimer)) { + expirationTimerDurations = [...expirationTimerDurations, expireTimer]; + } + return (
= ({ label={i18n('ConversationDetails--disappearing-messages-label')} right={
- + {expirationTimerDurations.map((seconds: number) => { + const label = expirationTimer.format(i18n, seconds); + return ( + + ); + })}
}