|
|
@ -6,20 +6,28 @@ export const replaceMessagesEdited = async ({ |
|
|
|
_publicKey |
|
|
|
_publicKey |
|
|
|
}) => { |
|
|
|
}) => { |
|
|
|
const findNewMessages = decodedMessages.map(async (msg) => { |
|
|
|
const findNewMessages = decodedMessages.map(async (msg) => { |
|
|
|
|
|
|
|
let originalMsg = msg |
|
|
|
let msgItem = msg |
|
|
|
let msgItem = msg |
|
|
|
try { |
|
|
|
try { |
|
|
|
let msgQuery = `&involving=${msg.recipient}&involving=${msg.sender}` |
|
|
|
if(msg.chatReference){ |
|
|
|
|
|
|
|
originalMsg = await parentEpml.request("apiCall", { |
|
|
|
|
|
|
|
type: "api", |
|
|
|
|
|
|
|
url: `/chat/message/${msg.chatReference}`, |
|
|
|
|
|
|
|
}) |
|
|
|
|
|
|
|
originalMsg.chatReference = msg.chatReference |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
let msgQuery = `&involving=${originalMsg.recipient}&involving=${originalMsg.sender}` |
|
|
|
if (!isReceipient) { |
|
|
|
if (!isReceipient) { |
|
|
|
msgQuery = `&txGroupId=${msg.txGroupId}` |
|
|
|
msgQuery = `&txGroupId=${originalMsg.txGroupId}` |
|
|
|
} |
|
|
|
} |
|
|
|
const response = await parentEpml.request("apiCall", { |
|
|
|
const response = await parentEpml.request("apiCall", { |
|
|
|
type: "api", |
|
|
|
type: "api", |
|
|
|
url: `/chat/messages?chatreference=${msg.signature}&reverse=true${msgQuery}`, |
|
|
|
url: `/chat/messages?chatreference=${originalMsg.signature}&reverse=true${msgQuery}`, |
|
|
|
}) |
|
|
|
}) |
|
|
|
let decodedMsgs = [] |
|
|
|
let decodedMsgs = [] |
|
|
|
response.map((eachMessage) => { |
|
|
|
response.map((eachMessage) => { |
|
|
|
const msgRes = decodeMessageFunc(eachMessage, isReceipient, _publicKey) |
|
|
|
const msgRes = decodeMessageFunc(eachMessage, isReceipient, _publicKey) |
|
|
|
let parsedMessageObj = msg |
|
|
|
let parsedMessageObj = originalMsg |
|
|
|
try { |
|
|
|
try { |
|
|
|
parsedMessageObj = JSON.parse(msgRes.decodedMessage) |
|
|
|
parsedMessageObj = JSON.parse(msgRes.decodedMessage) |
|
|
|
decodedMsgs.push({ |
|
|
|
decodedMsgs.push({ |
|
|
@ -40,19 +48,19 @@ export const replaceMessagesEdited = async ({ |
|
|
|
|
|
|
|
|
|
|
|
const filterWithoutReactions = decodedMsgs.filter((message)=> { |
|
|
|
const filterWithoutReactions = decodedMsgs.filter((message)=> { |
|
|
|
|
|
|
|
|
|
|
|
return message.sender === msg.sender |
|
|
|
return message.sender === originalMsg.sender |
|
|
|
}) |
|
|
|
}) |
|
|
|
if (filterReactions && Array.isArray(filterReactions) && filterReactions.length !== 0) { |
|
|
|
if (filterReactions && Array.isArray(filterReactions) && filterReactions.length !== 0) { |
|
|
|
let responseItem = { ...filterReactions[0] } |
|
|
|
let responseItem = { ...filterReactions[0] } |
|
|
|
let parsedMessageMsg = {} |
|
|
|
let parsedMessageMsg = {} |
|
|
|
try { |
|
|
|
try { |
|
|
|
parsedMessageMsg = JSON.parse(msg.decodedMessage) |
|
|
|
parsedMessageMsg = JSON.parse(originalMsg.decodedMessage) |
|
|
|
|
|
|
|
|
|
|
|
} catch (error) { |
|
|
|
} catch (error) { |
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
let originalPosterMsg = { |
|
|
|
let originalPosterMsg = { |
|
|
|
...msg, |
|
|
|
...originalMsg, |
|
|
|
decodedMessage: parsedMessageMsg |
|
|
|
decodedMessage: parsedMessageMsg |
|
|
|
} |
|
|
|
} |
|
|
|
if(filterWithoutReactions.length > 0){ |
|
|
|
if(filterWithoutReactions.length > 0){ |
|
|
@ -70,8 +78,8 @@ export const replaceMessagesEdited = async ({ |
|
|
|
|
|
|
|
|
|
|
|
msgItem = { |
|
|
|
msgItem = { |
|
|
|
...originalPosterMsg, |
|
|
|
...originalPosterMsg, |
|
|
|
senderName: msg.senderName, |
|
|
|
senderName: originalMsg.senderName, |
|
|
|
sender: msg.sender, |
|
|
|
sender: originalMsg.sender, |
|
|
|
editedTimestamp: response[0].timestamp, |
|
|
|
editedTimestamp: response[0].timestamp, |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
@ -83,7 +91,7 @@ export const replaceMessagesEdited = async ({ |
|
|
|
msgItem = { |
|
|
|
msgItem = { |
|
|
|
...responseItem, |
|
|
|
...responseItem, |
|
|
|
decodedMessage: originalPosterMsg, |
|
|
|
decodedMessage: originalPosterMsg, |
|
|
|
timestamp: msg.timestamp, |
|
|
|
timestamp: originalMsg.timestamp, |
|
|
|
editedTimestamp: responseItem.timestamp, |
|
|
|
editedTimestamp: responseItem.timestamp, |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
@ -92,18 +100,18 @@ export const replaceMessagesEdited = async ({ |
|
|
|
return msgItem |
|
|
|
return msgItem |
|
|
|
}) |
|
|
|
}) |
|
|
|
const updateMessages = await Promise.all(findNewMessages) |
|
|
|
const updateMessages = await Promise.all(findNewMessages) |
|
|
|
const findNewMessages2 = updateMessages.map(async (msg) => { |
|
|
|
const findNewMessages2 = updateMessages.map(async (originalMsg) => { |
|
|
|
let parsedMessageObj = msg |
|
|
|
let parsedMessageObj = originalMsg |
|
|
|
try { |
|
|
|
try { |
|
|
|
parsedMessageObj = JSON.parse(msg.decodedMessage) |
|
|
|
parsedMessageObj = JSON.parse(originalMsg.decodedMessage) |
|
|
|
} catch (error) { |
|
|
|
} catch (error) { |
|
|
|
return msg |
|
|
|
return originalMsg |
|
|
|
} |
|
|
|
} |
|
|
|
let msgItem = msg |
|
|
|
let msgItem = originalMsg |
|
|
|
try { |
|
|
|
try { |
|
|
|
let msgQuery = `&involving=${msg.recipient}&involving=${msg.sender}` |
|
|
|
let msgQuery = `&involving=${originalMsg.recipient}&involving=${originalMsg.sender}` |
|
|
|
if (!isReceipient) { |
|
|
|
if (!isReceipient) { |
|
|
|
msgQuery = `&txGroupId=${msg.txGroupId}` |
|
|
|
msgQuery = `&txGroupId=${originalMsg.txGroupId}` |
|
|
|
} |
|
|
|
} |
|
|
|
if (parsedMessageObj.repliedTo) { |
|
|
|
if (parsedMessageObj.repliedTo) { |
|
|
|
let originalReply |
|
|
|
let originalReply |
|
|
@ -129,7 +137,7 @@ export const replaceMessagesEdited = async ({ |
|
|
|
let decodedMsgs = [] |
|
|
|
let decodedMsgs = [] |
|
|
|
response.map((eachMessage) => { |
|
|
|
response.map((eachMessage) => { |
|
|
|
const msgRes = decodeMessageFunc(eachMessage, isReceipient, _publicKey) |
|
|
|
const msgRes = decodeMessageFunc(eachMessage, isReceipient, _publicKey) |
|
|
|
let parsedMessageObj = msg |
|
|
|
let parsedMessageObj = originalMsg |
|
|
|
try { |
|
|
|
try { |
|
|
|
parsedMessageObj = JSON.parse(msgRes.decodedMessage) |
|
|
|
parsedMessageObj = JSON.parse(msgRes.decodedMessage) |
|
|
|
decodedMsgs.push({ |
|
|
|
decodedMsgs.push({ |
|
|
@ -143,7 +151,7 @@ export const replaceMessagesEdited = async ({ |
|
|
|
}) |
|
|
|
}) |
|
|
|
const filterWithoutReactions = decodedMsgs.filter((message)=> { |
|
|
|
const filterWithoutReactions = decodedMsgs.filter((message)=> { |
|
|
|
|
|
|
|
|
|
|
|
return message.sender === msg.sender |
|
|
|
return message.sender === originalMsg.sender |
|
|
|
}) |
|
|
|
}) |
|
|
|
const originalReplyMessage = originalReply.timestamp ? originalReply : originalReply.length !== 0 ? originalReply[0] : null |
|
|
|
const originalReplyMessage = originalReply.timestamp ? originalReply : originalReply.length !== 0 ? originalReply[0] : null |
|
|
|
|
|
|
|
|
|
|
@ -162,7 +170,7 @@ export const replaceMessagesEdited = async ({ |
|
|
|
sender: decodeOriginalReply.sender, |
|
|
|
sender: decodeOriginalReply.sender, |
|
|
|
} |
|
|
|
} |
|
|
|
msgItem = { |
|
|
|
msgItem = { |
|
|
|
...msg, |
|
|
|
...originalMsg, |
|
|
|
repliedToData: formattedRepliedToData, |
|
|
|
repliedToData: formattedRepliedToData, |
|
|
|
} |
|
|
|
} |
|
|
|
} else { |
|
|
|
} else { |
|
|
@ -173,7 +181,7 @@ export const replaceMessagesEdited = async ({ |
|
|
|
) { |
|
|
|
) { |
|
|
|
|
|
|
|
|
|
|
|
msgItem = { |
|
|
|
msgItem = { |
|
|
|
...msg, |
|
|
|
...originalMsg, |
|
|
|
repliedToData: decodeMessageFunc(originalReplyMessage, isReceipient, _publicKey), |
|
|
|
repliedToData: decodeMessageFunc(originalReplyMessage, isReceipient, _publicKey), |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|