diff options
| author | Dym Sohin <re@dym.sh> | 2020-09-21 17:29:36 +0200 |
|---|---|---|
| committer | Dym Sohin <re@dym.sh> | 2020-09-21 17:29:36 +0200 |
| commit | fee654f1eee276a1d30c8fcb2699e567fc281967 (patch) | |
| tree | d2126082271af5791e1ae0c30b70ca5ed9f71f13 /src/components/emoji_picker | |
| parent | 0c0722a092599cdd2b53548b960b619260407961 (diff) | |
feat/reorder-emojis-by-position-of-keyword
Diffstat (limited to 'src/components/emoji_picker')
| -rw-r--r-- | src/components/emoji_picker/emoji_picker.js | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/src/components/emoji_picker/emoji_picker.js b/src/components/emoji_picker/emoji_picker.js index 5c09f6ca..713ecd8b 100644 --- a/src/components/emoji_picker/emoji_picker.js +++ b/src/components/emoji_picker/emoji_picker.js @@ -8,10 +8,17 @@ const LOAD_EMOJI_BY = 60 const LOAD_EMOJI_MARGIN = 64 const filterByKeyword = (list, keyword = '') => { + if (keyword === '') return list + const keywordLowercase = keyword.toLowerCase() - return list.filter(emoji => - emoji.displayText.toLowerCase().includes(keywordLowercase) - ) + const orderedEmojiList = [] + for (const emoji of list) { + const indexOfKeyword = emoji.displayText.toLowerCase().indexOf( keywordLowercase ) + if ( indexOfKeyword > -1 ) { + orderedEmojiList.splice(indexOfKeyword, 0, emoji) + } + } + return orderedEmojiList } const EmojiPicker = { |
