diff --git a/app/soapbox/features/emoji/__tests__/emoji-index.test.ts b/app/soapbox/features/emoji/__tests__/emoji-index.test.ts index 59e2e9bef..925e2627a 100644 --- a/app/soapbox/features/emoji/__tests__/emoji-index.test.ts +++ b/app/soapbox/features/emoji/__tests__/emoji-index.test.ts @@ -19,22 +19,12 @@ describe('emoji_index', () => { it('orders search results correctly', () => { const expected = [ - { - id: 'pineapple', - unified: '1f34d', - native: '🍍', - }, - { - id: 'apple', - unified: '1f34e', - native: '🍎', - }, - { - id: 'green_apple', - unified: '1f34f', - native: '🍏', - }, + { id: 'apple', unified: '1f34e', native: '🍎' }, + { id: 'pineapple', unified: '1f34d', native: '🍍' }, + { id: 'green_apple', unified: '1f34f', native: '🍏' }, + { id: 'iphone', unified: '1f4f1', native: '📱' }, ]; + expect(search('apple').map(trimEmojis)).toEqual(expected); }); diff --git a/app/soapbox/features/emoji/search.ts b/app/soapbox/features/emoji/search.ts index dbcb29756..363af2106 100644 --- a/app/soapbox/features/emoji/search.ts +++ b/app/soapbox/features/emoji/search.ts @@ -11,8 +11,9 @@ const index = new Index({ context: true, }); -for (const [key, emoji] of Object.entries(data.emojis)) { - index.add('n' + key, emoji.name); +const sortedEmojis = Object.entries(data.emojis).sort((a, b) => a[0].localeCompare(b[0])); +for (const [key, emoji] of sortedEmojis) { + index.add('n' + key, `${emoji.id} ${emoji.name} ${emoji.keywords.join(' ')}`); } export interface searchOptions {