Skip to content

Commit

Permalink
Use variations at runtime instead of overriding data
Browse files Browse the repository at this point in the history
Fixes a bug for emojis having both variations and skin variations
  • Loading branch information
EtienneLem committed Feb 17, 2017
1 parent ff0cc12 commit f5ae64d
Show file tree
Hide file tree
Showing 2 changed files with 9 additions and 4 deletions.
4 changes: 0 additions & 4 deletions scripts/build-data.js
Expand Up @@ -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())
}
Expand Down
9 changes: 9 additions & 0 deletions src/utils/index.js
Expand Up @@ -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

Expand All @@ -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
}

Expand Down

0 comments on commit f5ae64d

Please sign in to comment.