masto-fe/app/javascript/flavours/glitch/components/autosuggest_emoji.js
ThibG 813c84cd6c [Glitch] Change how CDN_HOST is passed down to make assets build reproducible
Port 4c45b43cb8 to glitch-soc

Signed-off-by: Thibaut Girka <thib@sitedethib.com>
2020-10-21 21:28:47 +02:00

42 lines
911 B
JavaScript

import React from 'react';
import PropTypes from 'prop-types';
import unicodeMapping from 'flavours/glitch/util/emoji/emoji_unicode_mapping_light';
import { assetHost } from 'flavours/glitch/util/config';
export default class AutosuggestEmoji extends React.PureComponent {
static propTypes = {
emoji: PropTypes.object.isRequired,
};
render () {
const { emoji } = this.props;
let url;
if (emoji.custom) {
url = emoji.imageUrl;
} else {
const mapping = unicodeMapping[emoji.native] || unicodeMapping[emoji.native.replace(/\uFE0F$/, '')];
if (!mapping) {
return null;
}
url = `${assetHost}/emoji/${mapping.filename}.svg`;
}
return (
<div className='emoji'>
<img
className='emojione'
src={url}
alt={emoji.native || emoji.colons}
/>
{emoji.colons}
</div>
);
}
}