Asynchronously fetch chats

This commit is contained in:
Xrystal 2023-09-17 13:41:36 +08:00
parent 2b3055a84a
commit 23b08173ff

View File

@ -5172,7 +5172,8 @@ export async function getChatsFromFiles(data, isGroupChat) {
let chat_dict = {};
let chat_list = Object.values(data).sort((a, b) => a["file_name"].localeCompare(b["file_name"])).reverse();
for (const { file_name } of chat_list) {
let chat_promise = chat_list.map(({ file_name}) => {
return new Promise(async (res, rej) => {
try {
const endpoint = isGroupChat ? '/getgroupchat' : '/getchat';
const requestBody = isGroupChat
@ -5191,7 +5192,8 @@ export async function getChatsFromFiles(data, isGroupChat) {
});
if (!chatResponse.ok) {
continue;
return res();
// continue;
}
const currentChat = await chatResponse.json();
@ -5204,7 +5206,12 @@ export async function getChatsFromFiles(data, isGroupChat) {
} catch (error) {
console.error(error);
}
}
return res();
})
})
await Promise.all(chat_promise)
return chat_dict;
}