diff --git a/ts/components/conversation/message/message-content/MessageQuote.tsx b/ts/components/conversation/message/message-content/MessageQuote.tsx index bb605c708..f20b1d23a 100644 --- a/ts/components/conversation/message/message-content/MessageQuote.tsx +++ b/ts/components/conversation/message/message-content/MessageQuote.tsx @@ -1,6 +1,6 @@ import React, { useCallback } from 'react'; import { useSelector } from 'react-redux'; -import _, { isEmpty } from 'lodash'; +import _, { isEmpty, toNumber } from 'lodash'; import { MessageModelType, MessageRenderingProps } from '../../../../models/messageType'; import { openConversationToSpecificMessage } from '../../../../state/ducks/conversations'; import { @@ -65,7 +65,7 @@ export const MessageQuote = (props: Props) => { // If the quote is not found in memory, we try to find it in the DB if (quoteNotFound && quote.id && quote.author) { const quotedMessagesCollection = await Data.getMessagesBySenderAndSentAt([ - { timestamp: Number(quote.id), source: quote.author }, + { timestamp: toNumber(quote.id), source: quote.author }, ]); if (quotedMessagesCollection?.length) { @@ -77,6 +77,8 @@ export const MessageQuote = (props: Props) => { } else { quoteNotFoundInDB = true; } + } else { + quoteNotFoundInDB = true; } } diff --git a/ts/state/ducks/conversations.ts b/ts/state/ducks/conversations.ts index 87e788556..ec103ef55 100644 --- a/ts/state/ducks/conversations.ts +++ b/ts/state/ducks/conversations.ts @@ -7,7 +7,7 @@ import { PropsForDataExtractionNotification, PropsForMessageRequestResponse, } from '../../models/messageType'; -import { omit } from 'lodash'; +import { omit, toNumber } from 'lodash'; import { ReplyingToMessageProps } from '../../components/conversation/composition/CompositionBox'; import { QuotedAttachmentType } from '../../components/conversation/message/message-content/quote/Quote'; import { LightBoxOptions } from '../../components/conversation/SessionConversation'; @@ -386,7 +386,7 @@ async function getMessages({ if (quotesCollection?.length) { const quotePropsList = quotesCollection.map(quote => ({ - timestamp: Number(quote.id), + timestamp: toNumber(quote.id), source: String(quote.author), })); @@ -396,7 +396,7 @@ async function getMessages({ for (let i = 0; i < quotedMessagesCollection.length; i++) { const quotedMessage = quotedMessagesCollection.models.at(i)?.getMessageModelProps(); if (quotedMessage) { - const timestamp = Number(quotedMessage.propsForMessage.timestamp); + const timestamp = quotedMessage.propsForMessage.timestamp; const sender = quotedMessage.propsForMessage.sender; if (timestamp && sender) { quotesProps[`${timestamp}-${sender}`] = quotedMessage; diff --git a/ts/state/selectors/conversations.ts b/ts/state/selectors/conversations.ts index e9bc5d7b1..f5413aaa1 100644 --- a/ts/state/selectors/conversations.ts +++ b/ts/state/selectors/conversations.ts @@ -38,7 +38,7 @@ import { Storage } from '../../util/storage'; import { ConversationTypeEnum } from '../../models/conversationAttributes'; import { MessageReactsSelectorProps } from '../../components/conversation/message/message-content/MessageReactions'; -import { filter, isEmpty, pick, sortBy } from 'lodash'; +import { filter, isEmpty, pick, sortBy, toNumber } from 'lodash'; import { processQuoteAttachment } from '../../models/message'; import { isUsAnySogsFromCache } from '../../session/apis/open_group_api/sogsv3/knownBlindedkeys'; import { MessageModelType } from '../../models/messageType'; @@ -1032,7 +1032,7 @@ export const getMessageQuoteProps = createSelector( return quoteNotFound; } - const sourceMessage = lookupQuote(quotesProps, messagesProps, Number(id), author); + const sourceMessage = lookupQuote(quotesProps, messagesProps, toNumber(id), author); if (!sourceMessage) { return quoteNotFound; }