-
-
{{emoji.unicode}}
+
+
:{{emoji.shortcodes[0]}}:
-
diff --git a/src/utils/emojiParser.js b/src/utils/emojiParser.js
index 6da3108..5c313df 100644
--- a/src/utils/emojiParser.js
+++ b/src/utils/emojiParser.js
@@ -1,3 +1,4 @@
+import twemoji from "twemoji";
import emojis from "emojibase-data/en/compact.json";
import matchSorter from "match-sorter";
import {
@@ -15,17 +16,15 @@ export default {
return x
});
},
+ replaceEmojis: (string) => {
+ return twemoji.parse(string,
+ function (icon, options, variant) {
+ if (!icon) return string;
+ return require("twemoji/2/svg/" + icon + ".svg")
+ })
+ },
searchEmoji: (shortCode) => {
- let array = []
- for (let index = 0; index < emojis.length; index++) {
- const element = emojis[index];
- for (let i = 0; i < element.shortcodes.length; i++) {
- const el2 = element.shortcodes[i];
- if (el2.includes(shortCode)) array.push(element);
-
- }
- }
return matchSorter(emojis, shortCode, {keys: ['shortcodes']});
}
}
diff --git a/src/utils/messageFormatter.js b/src/utils/messageFormatter.js
index 9a6e8f9..d685e28 100644
--- a/src/utils/messageFormatter.js
+++ b/src/utils/messageFormatter.js
@@ -1,15 +1,11 @@
import futoji from 'futoji'
import twemoji from 'twemoji'
+import emojiParser from '@/utils/emojiParser';
export default (message) => {
- message = twemoji.parse(escapeHtml(message),
- function (icon, options, variant) {
- if (!icon) return message;
- return require("twemoji/2/svg/" + icon + ".svg")
- })
futoji.addTransformer({
name: 'bold-and-italic',
@@ -58,7 +54,13 @@ export default (message) => {
recursive: false,
transformer: text => `
${text}`,
})
- return futoji.format(message);
+
+
+ message = futoji.format(escapeHtml(message));
+
+ message = emojiParser.replaceEmojis(message);
+
+ return message;
}
/**