Merge pull request #139 from galiazzi/fix/loadMessages

fix: call loadMessages multiple times
This commit is contained in:
Adhiraj Singh
2020-09-07 21:48:57 +05:30
committed by GitHub

View File

@@ -125,12 +125,14 @@ export class WAConnection extends Base {
return (response[2] as WANode[])?.map(item => item[2] as WAMessage) || []
}
const chat = this.chats.get (jid)
let messages: WAMessage[]
if (!before && chat && mostRecentFirst) {
messages = chat.messages
if (messages.length < count) {
const extra = await retreive (count-messages.length, messages[0]?.key)
const diff = count - messages.length
if (diff < 0) {
messages.splice(0, Math.abs(diff));
} else if (diff > 0) {
const extra = await retreive (diff, messages[0]?.key)
messages.unshift (...extra)
}
} else messages = await retreive (count, before)