diff options
author | Claire <claire.github-309c@sitedethib.com> | 2022-10-11 12:36:24 +0200 |
---|---|---|
committer | Claire <claire.github-309c@sitedethib.com> | 2022-10-11 12:43:19 +0200 |
commit | b728b25c102d10ac9447fee27a2b667e58f78b9b (patch) | |
tree | c4b9fbfcdbdaf373e2b3c36f123484b159a7a07e /app/javascript/flavours/glitch/features/emoji/emoji_unicode_mapping_light.js | |
parent | b75bf336bdb874eb9bbe3cec1a95ee59c2b3b54c (diff) |
Move flavours/glitch/utils/emoji back to flavours/glitch/features/emoji
Diffstat (limited to 'app/javascript/flavours/glitch/features/emoji/emoji_unicode_mapping_light.js')
-rw-r--r-- | app/javascript/flavours/glitch/features/emoji/emoji_unicode_mapping_light.js | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/app/javascript/flavours/glitch/features/emoji/emoji_unicode_mapping_light.js b/app/javascript/flavours/glitch/features/emoji/emoji_unicode_mapping_light.js new file mode 100644 index 000000000..918684c31 --- /dev/null +++ b/app/javascript/flavours/glitch/features/emoji/emoji_unicode_mapping_light.js @@ -0,0 +1,35 @@ +// A mapping of unicode strings to an object containing the filename +// (i.e. the svg filename) and a shortCode intended to be shown +// as a "title" attribute in an HTML element (aka tooltip). + +const [ + shortCodesToEmojiData, + skins, // eslint-disable-line no-unused-vars + categories, // eslint-disable-line no-unused-vars + short_names, // eslint-disable-line no-unused-vars + emojisWithoutShortCodes, +] = require('./emoji_compressed'); +const { unicodeToFilename } = require('./unicode_to_filename'); + +// decompress +const unicodeMapping = {}; + +function processEmojiMapData(emojiMapData, shortCode) { + let [ native, filename ] = emojiMapData; + if (!filename) { + // filename name can be derived from unicodeToFilename + filename = unicodeToFilename(native); + } + unicodeMapping[native] = { + shortCode: shortCode, + filename: filename, + }; +} + +Object.keys(shortCodesToEmojiData).forEach((shortCode) => { + let [ filenameData ] = shortCodesToEmojiData[shortCode]; + filenameData.forEach(emojiMapData => processEmojiMapData(emojiMapData, shortCode)); +}); +emojisWithoutShortCodes.forEach(emojiMapData => processEmojiMapData(emojiMapData)); + +module.exports = unicodeMapping; |