chore: lint

userconfig_disappearingmessage
Audric Ackermann 3 months ago
parent af7c052021
commit ae95649ad2

@ -1,16 +1,16 @@
import React, { useEffect, useState } from 'react';
import { isEmpty } from 'lodash';
import React, { useEffect, useState } from 'react';
import styled from 'styled-components';
import { useIsPrivate, useIsPublic } from '../../../hooks/useParamSelector';
import { MessageBody } from '../../conversation/message/message-content/MessageBody';
import { assertUnreachable } from '../../../types/sqlSharedTypes';
import {
ConversationInteractionStatus,
ConversationInteractionType,
} from '../../../interactions/conversationInteractions';
import styled from 'styled-components';
import { getConversationController } from '../../../session/conversations';
import { LastMessageType } from '../../../state/ducks/conversations';
import { assertUnreachable } from '../../../types/sqlSharedTypes';
import { MessageBody } from '../../conversation/message/message-content/MessageBody';
const StyledInteractionItemText = styled.div<{ isError: boolean }>`
${props => props.isError && 'color: var(--danger-color) !important;'}
@ -26,16 +26,6 @@ export const InteractionItem = (props: InteractionItemProps) => {
const isGroup = !useIsPrivate(conversationId);
const isCommunity = useIsPublic(conversationId);
if (!lastMessage) {
return null;
}
const { interactionType, interactionStatus } = lastMessage;
if (!interactionType || !interactionStatus) {
return null;
}
const [storedLastMessageText, setStoredLastMessageText] = useState(lastMessage?.text);
const [storedLastMessageInteractionStatus, setStoredLastMessageInteractionStatus] = useState(
lastMessage?.interactionStatus
@ -51,7 +41,17 @@ export const InteractionItem = (props: InteractionItemProps) => {
setStoredLastMessageText(convo.get('lastMessage'));
}
}
}, [conversationId]);
}, [conversationId, storedLastMessageInteractionStatus]);
if (!lastMessage) {
return null;
}
const { interactionType, interactionStatus } = lastMessage || {};
if (!interactionType || !interactionStatus) {
return null;
}
let text = storedLastMessageText || '';
let errorText = '';

@ -12,6 +12,7 @@ import { Data } from '../data/data';
import { SettingsKey } from '../data/settings-key';
import { uploadFileToFsWithOnionV4 } from '../session/apis/file_server_api/FileServerApi';
import { OpenGroupUtils } from '../session/apis/open_group_api/utils';
import { GetNetworkTime } from '../session/apis/snode_api/getNetworkTime';
import { getConversationController } from '../session/conversations';
import { getSodiumRenderer } from '../session/crypto';
import { getDecryptedMediaUrl } from '../session/crypto/DecryptedAttachmentsManager';
@ -45,7 +46,6 @@ import { encryptProfile } from '../util/crypto/profileEncrypter';
import { ReleasedFeatures } from '../util/releaseFeature';
import { Storage, setLastProfileUpdateTimestamp } from '../util/storage';
import { UserGroupsWrapperActions } from '../webworker/workers/browser/libsession_worker_interface';
import { GetNetworkTime } from '../session/apis/snode_api/getNetworkTime';
export enum ConversationInteractionStatus {
Start = 'start',
@ -395,20 +395,18 @@ export async function showLeaveGroupByConvoId(conversationId: string, name: stri
// conversationId,
// })
// );
} else {
if (isPublic || (isClosedGroup && !isAdmin)) {
window?.inboxStore?.dispatch(
updateConfirmModal({
title: isPublic ? window.i18n('leaveCommunity') : window.i18n('leaveGroup'),
message: window.i18n('leaveGroupConfirmation', name ? [name] : ['']),
onClickOk,
okText: window.i18n('leave'),
okTheme: SessionButtonColor.Danger,
onClickClose,
conversationId,
})
);
}
} else if (isPublic || (isClosedGroup && !isAdmin)) {
window?.inboxStore?.dispatch(
updateConfirmModal({
title: isPublic ? window.i18n('leaveCommunity') : window.i18n('leaveGroup'),
message: window.i18n('leaveGroupConfirmation', name ? [name] : ['']),
onClickOk,
okText: window.i18n('leave'),
okTheme: SessionButtonColor.Danger,
onClickClose,
conversationId,
})
);
}
}

@ -415,17 +415,17 @@ export class ConversationModel extends Backbone.Model<ConversationAttributes> {
interactionType: lastMessageInteractionType,
interactionStatus: lastMessageInteractionStatus,
};
} else {
} else if (lastMessageInteractionType && lastMessageInteractionStatus) {
// if there is no last message, we still want to display the interaction status
if (lastMessageInteractionType && lastMessageInteractionStatus) {
toRet.lastMessage = {
text: '',
status: 'sent',
interactionType: lastMessageInteractionType,
interactionStatus: lastMessageInteractionStatus,
};
}
toRet.lastMessage = {
text: '',
status: 'sent',
interactionType: lastMessageInteractionType,
interactionStatus: lastMessageInteractionStatus,
};
}
return toRet;
}

Loading…
Cancel
Save