[bugfix/frontend] Fix 'steal this look' emoji promise mapping (#2270)

* [bugfix/frontend] Fix 'steal this look' emoji promise mapping

* indent a bit nicer
This commit is contained in:
tobi 2023-10-17 18:59:23 +02:00 committed by GitHub
parent 637f188ebe
commit 0dfb26097d
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 26 additions and 17 deletions

View File

@ -169,24 +169,33 @@ const extended = gtsApi.injectEndpoints({
// Search for each listed emoji with the admin
// api to get the version that includes an ID.
const withIDs: CustomEmoji[] = [];
const errors: FetchBaseQueryError[] = [];
withoutIDs.forEach(async(emoji) => {
// Request admin view of this emoji.
const emojiRes = await fetchWithBQ({
url: `/api/v1/admin/custom_emojis`,
params: {
filter: `domain:${domain},shortcode:${emoji.shortcode}`,
limit: 1
}
});
if (emojiRes.error) {
errors.push(emojiRes.error);
} else {
// Got it!
withIDs.push(emojiRes.data as CustomEmoji);
}
const withIDs: CustomEmoji[] = (
await Promise.all(
withoutIDs.map(async(emoji) => {
// Request admin view of this emoji.
const emojiRes = await fetchWithBQ({
url: `/api/v1/admin/custom_emojis`,
params: {
filter: `domain:${domain},shortcode:${emoji.shortcode}`,
limit: 1
}
});
if (emojiRes.error) {
// Put error in separate array so
// the null can be filtered nicely.
errors.push(emojiRes.error);
return null;
}
// Got it!
return emojiRes.data as CustomEmoji;
})
)
).flatMap((emoji) => {
// Remove any nulls.
return emoji || [];
});
if (errors.length !== 0) {