Page MenuHomePhorge

D15480.1765008399.diff
No OneTemporary

Size
4 KB
Referenced Files
None
Subscribers
None

D15480.1765008399.diff

diff --git a/lib/shared/farcaster/farcaster-hooks.js b/lib/shared/farcaster/farcaster-hooks.js
--- a/lib/shared/farcaster/farcaster-hooks.js
+++ b/lib/shared/farcaster/farcaster-hooks.js
@@ -173,19 +173,6 @@
return this.estimatedSize;
}
- getMessageCount(): number {
- let count = this.messageInfos.length + this.additionalMessageInfos.length;
- for (const updateInfo of this.updateInfos) {
- if (
- updateInfo.type === updateTypes.JOIN_THREAD &&
- updateInfo.rawMessageInfos
- ) {
- count += updateInfo.rawMessageInfos.length;
- }
- }
- return count;
- }
-
trimToSize(maxSize: number): BatchedUpdates {
const overflow = new BatchedUpdates();
@@ -340,7 +327,6 @@
const results: Array<R> = [];
let failedItemsCount = 0;
let progress = 0;
- let completedMessages = 0;
for (let i = 0; i < items.length; i += batchSize) {
const batch = items.slice(i, i + batchSize);
@@ -366,11 +352,7 @@
return null;
} finally {
progress++;
- completedMessages += itemBatchedUpdates.getMessageCount();
- onProgress?.({
- completedConversations: progress,
- completedMessages,
- });
+ onProgress?.({ completedConversations: progress });
}
});
@@ -657,6 +639,7 @@
conversationID: string,
messagesLimit: number,
batchedUpdates: BatchedUpdates,
+ increaseMessagesCount?: (number) => mixed,
) => Promise<?FarcasterConversation> {
const fetchUsersByFIDs = useGetCommFCUsersForFIDs();
const fetchFarcasterConversation = useFetchFarcasterConversation();
@@ -670,6 +653,7 @@
conversationID: string,
messagesLimit: number,
batchedUpdates: BatchedUpdates,
+ increaseMessagesCount?: number => mixed,
): Promise<?FarcasterConversation> => {
try {
const result = await fetchAndProcessConversation(
@@ -704,6 +688,8 @@
const messagesResult = await fetchFarcasterMessages(
conversationID,
messagesLimit,
+ undefined,
+ increaseMessagesCount,
);
if (messagesResult.messages.length === 0) {
@@ -768,6 +754,7 @@
conversationID: string,
messagesNumberLimit?: number,
cursor?: ?string,
+ increaseMessageCount?: (number) => mixed,
) => Promise<{
+messages: Array<RawMessageInfo>,
+userIDs: Array<string>,
@@ -782,6 +769,7 @@
conversationID: string,
messagesNumberLimit: number = 20,
cursor?: ?string,
+ increaseMessageCount?: number => mixed,
): Promise<{
+messages: Array<RawMessageInfo>,
+userIDs: Array<string>,
@@ -798,7 +786,7 @@
do {
batchNumber++;
const batchLimit = Math.min(
- 50,
+ 100,
messagesNumberLimit - totalMessagesFetched,
);
@@ -837,11 +825,13 @@
}
const prevMessageCount = messageIDs.size;
- messageIDs.add(
- ...farcasterMessages.map(message => message.messageId),
+ farcasterMessages.forEach(message =>
+ messageIDs.add(message.messageId),
);
- if (prevMessageCount === messageIDs.size) {
+ const numberOfNewMessages = messageIDs.size - prevMessageCount;
+ increaseMessageCount?.(numberOfNewMessages);
+ if (numberOfNewMessages === 0) {
addLog(
'Farcaster: Duplicate message batch detected (breaking loop)',
JSON.stringify({
@@ -1137,6 +1127,15 @@
totalNumberOfConversations: conversations.length,
completedMessages: 0,
});
+
+ let numberOfMessages = 0;
+ const increaseMessagesCount = (count: number) => {
+ numberOfMessages += count;
+ onProgress?.({
+ completedMessages: numberOfMessages,
+ });
+ };
+
await processInBatchesWithReduxBatching(
conversations,
FARCASTER_DATA_BATCH_SIZE,
@@ -1145,6 +1144,7 @@
conversationID,
Number.POSITIVE_INFINITY,
batchedUpdates,
+ increaseMessagesCount,
),
dispatch,
onProgress,

File Metadata

Mime Type
text/plain
Expires
Sat, Dec 6, 8:06 AM (12 h, 50 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
5834244
Default Alt Text
D15480.1765008399.diff (4 KB)

Event Timeline