@onyx-p/imlib-web 2.2.6 → 2.2.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/index.esm.js +15 -6
- package/index.umd.js +15 -6
- package/package.json +1 -1
package/index.esm.js
CHANGED
@@ -20718,6 +20718,9 @@ function generateOldMessageId() {
|
|
20718
20718
|
oldestMessageId--;
|
20719
20719
|
return oldestMessageId;
|
20720
20720
|
}
|
20721
|
+
function getCurrentMessageId() {
|
20722
|
+
return lastMessageId;
|
20723
|
+
}
|
20721
20724
|
|
20722
20725
|
class MessageLoader {
|
20723
20726
|
watcher;
|
@@ -20822,7 +20825,7 @@ class MessageLoader {
|
|
20822
20825
|
RecallMessageStore.remove(m.content.messageUId);
|
20823
20826
|
} else {
|
20824
20827
|
m.isOffLineMessage = isOffLineMessage;
|
20825
|
-
if (!m.messageId) {
|
20828
|
+
if (!m.messageId || m.messageId > getCurrentMessageId()) {
|
20826
20829
|
m.messageId = generateNewMessageId();
|
20827
20830
|
}
|
20828
20831
|
ConversationManager$1.get().setConversationCacheByMessage(m);
|
@@ -29108,7 +29111,11 @@ async function saveSentMessage(receivedMessage, options) {
|
|
29108
29111
|
const cache = MessageCache$1.get();
|
29109
29112
|
if (receivedMessage.isPersited && cache) {
|
29110
29113
|
await cache.upsertMessage(receivedMessage);
|
29111
|
-
const
|
29114
|
+
const cachedLatestMessage = await cache.getLatestMessage(options.conversation);
|
29115
|
+
let latestMessage = receivedMessage;
|
29116
|
+
if (cachedLatestMessage && Long.fromString(cachedLatestMessage.sentTime).greaterThan(Long.fromString(receivedMessage.sentTime))) {
|
29117
|
+
latestMessage = cachedLatestMessage;
|
29118
|
+
}
|
29112
29119
|
ConversationManager$1.get().updateLatestMessage(options.conversation, latestMessage);
|
29113
29120
|
}
|
29114
29121
|
} catch (error) {
|
@@ -29186,9 +29193,11 @@ class IMClient extends EventEmitter {
|
|
29186
29193
|
}
|
29187
29194
|
return true;
|
29188
29195
|
});
|
29189
|
-
|
29190
|
-
|
29191
|
-
|
29196
|
+
if (filteredMessages.length) {
|
29197
|
+
this.emit(Events.MESSAGES, {
|
29198
|
+
messages: filteredMessages
|
29199
|
+
});
|
29200
|
+
}
|
29192
29201
|
},
|
29193
29202
|
pullFinished: () => {
|
29194
29203
|
this.emit(Events.PULL_OFFLINE_MESSAGE_FINISHED);
|
@@ -29316,7 +29325,7 @@ class IMClient extends EventEmitter {
|
|
29316
29325
|
const remotesMessages = remotesResult.data.list;
|
29317
29326
|
for (let i = remotesMessages.length - 1; i >= 0; i--) {
|
29318
29327
|
const message = remotesMessages[i];
|
29319
|
-
if (!message.messageId) {
|
29328
|
+
if (!message.messageId || message.messageId > getCurrentMessageId()) {
|
29320
29329
|
message.messageId = generateOldMessageId();
|
29321
29330
|
}
|
29322
29331
|
}
|
package/index.umd.js
CHANGED
@@ -20724,6 +20724,9 @@
|
|
20724
20724
|
oldestMessageId--;
|
20725
20725
|
return oldestMessageId;
|
20726
20726
|
}
|
20727
|
+
function getCurrentMessageId() {
|
20728
|
+
return lastMessageId;
|
20729
|
+
}
|
20727
20730
|
|
20728
20731
|
class MessageLoader {
|
20729
20732
|
watcher;
|
@@ -20828,7 +20831,7 @@
|
|
20828
20831
|
RecallMessageStore.remove(m.content.messageUId);
|
20829
20832
|
} else {
|
20830
20833
|
m.isOffLineMessage = isOffLineMessage;
|
20831
|
-
if (!m.messageId) {
|
20834
|
+
if (!m.messageId || m.messageId > getCurrentMessageId()) {
|
20832
20835
|
m.messageId = generateNewMessageId();
|
20833
20836
|
}
|
20834
20837
|
ConversationManager$1.get().setConversationCacheByMessage(m);
|
@@ -29114,7 +29117,11 @@
|
|
29114
29117
|
const cache = MessageCache$1.get();
|
29115
29118
|
if (receivedMessage.isPersited && cache) {
|
29116
29119
|
await cache.upsertMessage(receivedMessage);
|
29117
|
-
const
|
29120
|
+
const cachedLatestMessage = await cache.getLatestMessage(options.conversation);
|
29121
|
+
let latestMessage = receivedMessage;
|
29122
|
+
if (cachedLatestMessage && Long.fromString(cachedLatestMessage.sentTime).greaterThan(Long.fromString(receivedMessage.sentTime))) {
|
29123
|
+
latestMessage = cachedLatestMessage;
|
29124
|
+
}
|
29118
29125
|
ConversationManager$1.get().updateLatestMessage(options.conversation, latestMessage);
|
29119
29126
|
}
|
29120
29127
|
} catch (error) {
|
@@ -29192,9 +29199,11 @@
|
|
29192
29199
|
}
|
29193
29200
|
return true;
|
29194
29201
|
});
|
29195
|
-
|
29196
|
-
|
29197
|
-
|
29202
|
+
if (filteredMessages.length) {
|
29203
|
+
this.emit(exports.Events.MESSAGES, {
|
29204
|
+
messages: filteredMessages
|
29205
|
+
});
|
29206
|
+
}
|
29198
29207
|
},
|
29199
29208
|
pullFinished: () => {
|
29200
29209
|
this.emit(exports.Events.PULL_OFFLINE_MESSAGE_FINISHED);
|
@@ -29322,7 +29331,7 @@
|
|
29322
29331
|
const remotesMessages = remotesResult.data.list;
|
29323
29332
|
for (let i = remotesMessages.length - 1; i >= 0; i--) {
|
29324
29333
|
const message = remotesMessages[i];
|
29325
|
-
if (!message.messageId) {
|
29334
|
+
if (!message.messageId || message.messageId > getCurrentMessageId()) {
|
29326
29335
|
message.messageId = generateOldMessageId();
|
29327
29336
|
}
|
29328
29337
|
}
|