|
@@ -4,6 +4,25 @@ Template.editor.onRendered(() => {
|
|
|
autosize($textarea);
|
|
|
|
|
|
$textarea.escapeableTextComplete([
|
|
|
+ // Emoji
|
|
|
+ {
|
|
|
+ match: /\B:([\-+\w]*)$/,
|
|
|
+ search(term, callback) {
|
|
|
+ callback(Emoji.values.map((emoji) => {
|
|
|
+ return emoji.includes(term) ? emoji : null;
|
|
|
+ }).filter(Boolean));
|
|
|
+ },
|
|
|
+ template(value) {
|
|
|
+ const imgSrc = Emoji.baseImagePath + value;
|
|
|
+ const image = `<img src="${imgSrc}.png" />`;
|
|
|
+ return image + value;
|
|
|
+ },
|
|
|
+ replace(value) {
|
|
|
+ return `:${value}:`;
|
|
|
+ },
|
|
|
+ index: 1,
|
|
|
+ },
|
|
|
+
|
|
|
// User mentions
|
|
|
{
|
|
|
match: /\B@([\w.]*)$/,
|