Right Search: Fix missing channel names

This commit is contained in:
Alexander Zinchuk 2022-02-02 22:49:28 +01:00
parent fa755aad9c
commit 4b9e9fd67c
2 changed files with 18 additions and 10 deletions

View File

@ -892,8 +892,9 @@ export async function searchMessagesLocal({
updateLocalDb(result); updateLocalDb(result);
const messages = result.messages.map(buildApiMessage).filter<ApiMessage>(Boolean as any); const chats = result.chats.map((c) => buildApiChatFromPreview(c)).filter<ApiChat>(Boolean as any);
const users = result.users.map(buildApiUser).filter<ApiUser>(Boolean as any); const users = result.users.map(buildApiUser).filter<ApiUser>(Boolean as any);
const messages = result.messages.map(buildApiMessage).filter<ApiMessage>(Boolean as any);
let totalCount = messages.length; let totalCount = messages.length;
let nextOffsetId: number | undefined; let nextOffsetId: number | undefined;
@ -906,8 +907,9 @@ export async function searchMessagesLocal({
} }
return { return {
messages, chats,
users, users,
messages,
totalCount, totalCount,
nextOffsetId, nextOffsetId,
}; };
@ -975,7 +977,7 @@ export async function searchMessagesGlobal({
messages: result.messages, messages: result.messages,
} as GramJs.messages.Messages); } as GramJs.messages.Messages);
const chats = result.chats.map((user) => buildApiChatFromPreview(user)).filter<ApiChat>(Boolean as any); const chats = result.chats.map((c) => buildApiChatFromPreview(c)).filter<ApiChat>(Boolean as any);
const users = result.users.map(buildApiUser).filter<ApiUser>(Boolean as any); const users = result.users.map(buildApiUser).filter<ApiUser>(Boolean as any);
const messages = result.messages.map(buildApiMessage).filter<ApiMessage>(Boolean as any); const messages = result.messages.map(buildApiMessage).filter<ApiMessage>(Boolean as any);
@ -1204,9 +1206,9 @@ export async function fetchPinnedMessages({ chat }: { chat: ApiChat }) {
updateLocalDb(result); updateLocalDb(result);
const messages = result.messages.map(buildApiMessage).filter<ApiMessage>(Boolean as any);
const users = result.users.map(buildApiUser).filter<ApiUser>(Boolean as any);
const chats = result.chats.map((c) => buildApiChatFromPreview(c)).filter<ApiChat>(Boolean as any); const chats = result.chats.map((c) => buildApiChatFromPreview(c)).filter<ApiChat>(Boolean as any);
const users = result.users.map(buildApiUser).filter<ApiUser>(Boolean as any);
const messages = result.messages.map(buildApiMessage).filter<ApiMessage>(Boolean as any);
return { return {
messages, messages,

View File

@ -9,11 +9,15 @@ import { callApi } from '../../../api/gramjs';
import { import {
selectCurrentTextSearch, selectCurrentTextSearch,
selectCurrentMediaSearchPeerId, selectCurrentMediaSearchPeerId,
selectCurrentMediaSearch, selectCurrentMessageList, selectChat, selectThreadInfo, selectCurrentMediaSearch,
selectCurrentMessageList,
selectChat,
selectThreadInfo,
} from '../../selectors'; } from '../../selectors';
import { buildCollectionByKey } from '../../../util/iteratees'; import { buildCollectionByKey } from '../../../util/iteratees';
import { import {
addChatMessagesById, addChatMessagesById,
addChats,
addUsers, addUsers,
updateLocalMediaSearchResults, updateLocalMediaSearchResults,
updateLocalTextSearchResults, updateLocalTextSearchResults,
@ -103,7 +107,7 @@ async function searchTextMessages(
} }
const { const {
messages, users, totalCount, nextOffsetId, chats, users, messages, totalCount, nextOffsetId,
} = result; } = result;
const byId = buildCollectionByKey(messages, 'id'); const byId = buildCollectionByKey(messages, 'id');
@ -116,8 +120,9 @@ async function searchTextMessages(
return; return;
} }
global = addChatMessagesById(global, chatOrUser.id, byId); global = addChats(global, buildCollectionByKey(chats, 'id'));
global = addUsers(global, buildCollectionByKey(users, 'id')); global = addUsers(global, buildCollectionByKey(users, 'id'));
global = addChatMessagesById(global, chatOrUser.id, byId);
global = updateLocalTextSearchResults(global, chatOrUser.id, threadId, newFoundIds, totalCount, nextOffsetId); global = updateLocalTextSearchResults(global, chatOrUser.id, threadId, newFoundIds, totalCount, nextOffsetId);
setGlobal(global); setGlobal(global);
} }
@ -140,7 +145,7 @@ async function searchSharedMedia(
} }
const { const {
messages, users, totalCount, nextOffsetId, chats, users, messages, totalCount, nextOffsetId,
} = result; } = result;
const byId = buildCollectionByKey(messages, 'id'); const byId = buildCollectionByKey(messages, 'id');
@ -153,8 +158,9 @@ async function searchSharedMedia(
return; return;
} }
global = addChatMessagesById(global, chatOrUser.id, byId); global = addChats(global, buildCollectionByKey(chats, 'id'));
global = addUsers(global, buildCollectionByKey(users, 'id')); global = addUsers(global, buildCollectionByKey(users, 'id'));
global = addChatMessagesById(global, chatOrUser.id, byId);
global = updateLocalMediaSearchResults(global, chatOrUser.id, type, newFoundIds, totalCount, nextOffsetId); global = updateLocalMediaSearchResults(global, chatOrUser.id, type, newFoundIds, totalCount, nextOffsetId);
setGlobal(global); setGlobal(global);