From 72108b20e215a866ae4ce54bd2113e36551ba2ef Mon Sep 17 00:00:00 2001 From: Sorin Davidoi Date: Tue, 18 Jul 2017 22:49:24 +0200 Subject: feat(emoji): Add back title attribute (#4253) --- app/javascript/mastodon/emoji.js | 10 +++++----- app/javascript/mastodon/emojione_light.js | 4 ++-- 2 files changed, 7 insertions(+), 7 deletions(-) (limited to 'app') diff --git a/app/javascript/mastodon/emoji.js b/app/javascript/mastodon/emoji.js index 1de41f572..9b58cacf5 100644 --- a/app/javascript/mastodon/emoji.js +++ b/app/javascript/mastodon/emoji.js @@ -1,7 +1,7 @@ -import { unicodeToFilename } from './emojione_light'; +import { unicodeMapping } from './emojione_light'; import Trie from 'substring-trie'; -const trie = new Trie(Object.keys(unicodeToFilename)); +const trie = new Trie(Object.keys(unicodeMapping)); function emojify(str) { // This walks through the string from start to end, ignoring any tags (

,
, etc.) @@ -19,10 +19,10 @@ function emojify(str) { insideTag = true; } else if (!insideTag && (match = trie.search(str.substring(i)))) { const unicodeStr = match; - if (unicodeStr in unicodeToFilename) { - const filename = unicodeToFilename[unicodeStr]; + if (unicodeStr in unicodeMapping) { + const [filename, shortCode] = unicodeMapping[unicodeStr]; const alt = unicodeStr; - const replacement = `${alt}`; + const replacement = `${alt}`; str = str.substring(0, i) + replacement + str.substring(i + unicodeStr.length); i += (replacement.length - unicodeStr.length); // jump ahead the length we've added to the string } diff --git a/app/javascript/mastodon/emojione_light.js b/app/javascript/mastodon/emojione_light.js index c75e10a98..985e9dbcb 100644 --- a/app/javascript/mastodon/emojione_light.js +++ b/app/javascript/mastodon/emojione_light.js @@ -5,7 +5,7 @@ const emojione = require('emojione'); const mappedUnicode = emojione.mapUnicodeToShort(); -module.exports.unicodeToFilename = Object.keys(emojione.jsEscapeMap) +module.exports.unicodeMapping = Object.keys(emojione.jsEscapeMap) .map(unicodeStr => [unicodeStr, mappedUnicode[emojione.jsEscapeMap[unicodeStr]]]) - .map(([unicodeStr, shortCode]) => ({ [unicodeStr]: emojione.emojioneList[shortCode].fname })) + .map(([unicodeStr, shortCode]) => ({ [unicodeStr]: [emojione.emojioneList[shortCode].fname, shortCode.slice(1, shortCode.length - 1)] })) .reduce((x, y) => Object.assign(x, y), { }); -- cgit