Restore thumbs after variation selector removal

This more thorough change adjusts emoji processing to deal with variation
selectors appropriately and revives the missing thumbs.

Regressed by https://github.com/matrix-org/matrix-react-sdk/pull/3598
Fixes https://github.com/vector-im/riot-web/issues/11344
This commit is contained in:
J. Ryan Stinnett 2019-11-07 17:49:25 +00:00
parent 9d180be3c0
commit 3d1a1121b9
3 changed files with 35 additions and 12 deletions

View file

@ -16,17 +16,19 @@ limitations under the License.
import React from 'react';
import PropTypes from 'prop-types';
import EMOJIBASE from 'emojibase-data/en/compact.json';
import sdk from '../../../index';
import { _t } from '../../../languageHandler';
import { findEmojiData } from '../../../HtmlUtils';
const QUICK_REACTIONS = ["👍", "👎", "😄", "🎉", "😕", "❤️", "🚀", "👀"];
EMOJIBASE.forEach(emoji => {
const index = QUICK_REACTIONS.indexOf(emoji.unicode);
if (index !== -1) {
QUICK_REACTIONS[index] = emoji;
const QUICK_REACTIONS = ["👍", "👎", "😄", "🎉", "😕", "❤️", "🚀", "👀"].map(emoji => {
const data = findEmojiData(emoji);
if (!data) {
throw new Error(`Emoji ${emoji} doesn't exist in emojibase`);
}
// Prefer our unicode value for quick reactions (which does not have
// variation selectors).
return Object.assign({}, data, { unicode: emoji });
});
class QuickReactions extends React.Component {