Merge pull request #172 from vcervellera-turbulent/bf/custom-emojis-contamination

Clearing custom emojis from index and pool when necessary
nolan/hinaloe-test
Etienne Lemay 2018-03-27 14:28:08 -04:00 committed by GitHub
commit 933ea29070
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 16 additions and 1 deletions

View File

@ -5,6 +5,7 @@ var originalPool = {}
var index = {}
var emojisList = {}
var emoticonsList = {}
var customEmojisList = []
for (let emoji in data.emojis) {
let emojiData = data.emojis[emoji],
@ -25,7 +26,18 @@ for (let emoji in data.emojis) {
originalPool[id] = emojiData
}
function clearCustomEmojis(pool) {
customEmojisList.forEach(emoji => {
let emojiId = emoji.id || emoji.short_names[0]
delete pool[emojiId]
delete emojisList[emojiId]
})
}
function addCustomToPool(custom, pool) {
if (customEmojisList.length) clearCustomEmojis(pool)
custom.forEach(emoji => {
let emojiId = emoji.id || emoji.short_names[0]
@ -34,13 +46,16 @@ function addCustomToPool(custom, pool) {
emojisList[emojiId] = getSanitizedData(emoji)
}
})
customEmojisList = custom
index = {}
}
function search(
value,
{ emojisToShowFilter, maxResults, include, exclude, custom = [] } = {}
) {
addCustomToPool(custom, originalPool)
if (customEmojisList != custom) addCustomToPool(custom, originalPool)
maxResults || (maxResults = 75)
include || (include = [])