Use variations at runtime instead of overriding data
Fixes a bug for emojis having both variations and skin variationsrelease
parent
ff0cc12fbc
commit
f5ae64d07c
|
@ -32,10 +32,6 @@ emojiData.forEach((datum) => {
|
|||
datum.name || (datum.name = datum.short_name.replace(/\-/g, ' '))
|
||||
datum.name = inflection.titleize(datum.name || '')
|
||||
|
||||
if (datum.variations && datum.variations.length) {
|
||||
datum.unified = datum.variations.shift()
|
||||
}
|
||||
|
||||
if (datum.category == 'Flags') {
|
||||
datum.name = datum.name.replace(/\s(\w+)$/, (letters) => letters.toUpperCase())
|
||||
}
|
||||
|
|
|
@ -75,6 +75,10 @@ function getData(emoji, skin, set) {
|
|||
variationKey = `${emojiData.unified}-${skinKey}`,
|
||||
variationData = emojiData.skin_variations[variationKey]
|
||||
|
||||
if (!variationData.variations && emojiData.variations) {
|
||||
delete emojiData.variations
|
||||
}
|
||||
|
||||
if (variationData[`has_img_${set}`]) {
|
||||
emojiData.skin_tone = skin
|
||||
|
||||
|
@ -85,6 +89,11 @@ function getData(emoji, skin, set) {
|
|||
}
|
||||
}
|
||||
|
||||
if (emojiData.variations && emojiData.variations.length) {
|
||||
emojiData = JSON.parse(JSON.stringify(emojiData))
|
||||
emojiData.unified = emojiData.variations.shift()
|
||||
}
|
||||
|
||||
return emojiData
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue