Fix filtering, allow filtering by mentioned usernames

Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
virtualized-window
marcin mikołajczak 2022-03-26 10:55:53 +01:00
rodzic 4782afed18
commit ea57d1c4a7
2 zmienionych plików z 8 dodań i 1 usunięć

Wyświetl plik

@ -27,6 +27,7 @@ export const StatusRecord = ImmutableRecord({
emojis: ImmutableList(),
favourited: false,
favourites_count: 0,
filtered: false,
in_reply_to_account_id: null,
in_reply_to_id: null,
id: '',

Wyświetl plik

@ -54,14 +54,20 @@ const getPollOptionTitles = (status: StatusRecord): Array<string> => {
return status.poll?.options.map(({ title }: { title: string }) => title);
};
// Gets usernames of mentioned users from status
const getMentionedUsernames = (status: StatusRecord): Array<string> => {
return (status as any).mentions?.map(({ username }: { username: string }) => username);
};
// Creates search text from the status
const buildSearchContent = (status: StatusRecord): string => {
const pollOptionTitles = getPollOptionTitles(status);
const mentionedUsernames = getMentionedUsernames(status);
const fields = ImmutableList([
status.spoiler_text,
status.content,
]).concat(pollOptionTitles);
]).concat(pollOptionTitles).concat(mentionedUsernames);
return unescapeHTML(fields.join('\n\n'));
};