From 8455e8c481425ffa661c82fb9cffe3c053035fb5 Mon Sep 17 00:00:00 2001 From: Mike Greiling Date: Sat, 24 Jun 2017 02:25:04 -0500 Subject: move emoji category index to helper method --- app/assets/javascripts/emoji/index.js | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) (limited to 'app/assets/javascripts/emoji') diff --git a/app/assets/javascripts/emoji/index.js b/app/assets/javascripts/emoji/index.js index e1edf376936..09ceca58e9c 100644 --- a/app/assets/javascripts/emoji/index.js +++ b/app/assets/javascripts/emoji/index.js @@ -22,12 +22,36 @@ function filterEmojiNamesByAlias(filter) { return _.uniq(filterEmojiNames(filter).map(name => normalizeEmojiName(name))); } +let emojiByCategory; +function getEmojiByCategory(category = null) { + if (!emojiByCategory) { + emojiByCategory = { + activity: [], + people: [], + nature: [], + food: [], + travel: [], + objects: [], + symbols: [], + flags: [], + }; + Object.keys(emojiMap).forEach((name) => { + const emoji = emojiMap[name]; + if (emojiByCategory[emoji.category]) { + emojiByCategory[emoji.category].push(name); + } + }); + } + return category ? emojiByCategory[category] : emojiByCategory; +} + export { emojiMap, emojiAliases, normalizeEmojiName, filterEmojiNames, filterEmojiNamesByAlias, + getEmojiByCategory, getUnicodeSupportMap, isEmojiNameValid, isEmojiUnicodeSupported, -- cgit v1.2.3