2017-07-14 21:30:12 +03: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 22:05:17 +03:00
|
|
|
const excluded = ['®', '©', '™'];
|
2017-07-14 21:30:12 +03:00
|
|
|
|
2017-07-18 23:49:24 +03:00
|
|
|
module.exports.unicodeMapping = Object.keys(emojione.jsEscapeMap)
|
2017-08-02 22:05:17 +03:00
|
|
|
.filter(c => !excluded.includes(c))
|
2017-07-14 21:30:12 +03:00
|
|
|
.map(unicodeStr => [unicodeStr, mappedUnicode[emojione.jsEscapeMap[unicodeStr]]])
|
2017-09-23 02:41:00 +03:00
|
|
|
.map(([unicodeStr, shortCode]) => ({ [unicodeStr]: [emojione.emojioneList[shortCode].fname.replace(/^0+/g, ''), shortCode.slice(1, shortCode.length - 1)] }))
|
2017-07-14 21:30:12 +03:00
|
|
|
.reduce((x, y) => Object.assign(x, y), { });
|