2017-07-14 20:30:12 +02:00
|
|
|
// @preval
|
|
|
|
// Force tree shaking on emojione by exposing just a subset of its functionality
|
|
|
|
|
|
|
|
const emojione = require('emojione');
|
|
|
|
|
|
|
|
const mappedUnicode = emojione.mapUnicodeToShort();
|
2017-08-02 21:05:17 +02:00
|
|
|
const excluded = ['®', '©', '™'];
|
2017-07-14 20:30:12 +02:00
|
|
|
|
2017-07-18 22:49:24 +02:00
|
|
|
module.exports.unicodeMapping = Object.keys(emojione.jsEscapeMap)
|
2017-08-02 21:05:17 +02:00
|
|
|
.filter(c => !excluded.includes(c))
|
2017-07-14 20:30:12 +02:00
|
|
|
.map(unicodeStr => [unicodeStr, mappedUnicode[emojione.jsEscapeMap[unicodeStr]]])
|
2017-07-18 22:49:24 +02:00
|
|
|
.map(([unicodeStr, shortCode]) => ({ [unicodeStr]: [emojione.emojioneList[shortCode].fname, shortCode.slice(1, shortCode.length - 1)] }))
|
2017-07-14 20:30:12 +02:00
|
|
|
.reduce((x, y) => Object.assign(x, y), { });
|