summaryrefslogtreecommitdiff
path: root/app/assets/javascripts/gfm_auto_complete.js
diff options
context:
space:
mode:
authorSean McGivern <sean@gitlab.com>2017-04-27 11:02:27 +0100
committerSean McGivern <sean@gitlab.com>2017-04-27 11:02:27 +0100
commit2df748aa71d6c636c82ed2a0a8dde8ebf6bfc7f2 (patch)
treeaae6ce8fac0775b15b65ce26afb3f700de030948 /app/assets/javascripts/gfm_auto_complete.js
parent4bdbcf594812d35bab3c2b597fc8087f840bbd4d (diff)
parent31c990cc41e2dc7576cf867a313862a07fd8c170 (diff)
downloadgitlab-ce-2df748aa71d6c636c82ed2a0a8dde8ebf6bfc7f2.tar.gz
Merge branch 'blackst0ne/gitlab-ce-fix_emoji_parser'
Diffstat (limited to 'app/assets/javascripts/gfm_auto_complete.js')
-rw-r--r--app/assets/javascripts/gfm_auto_complete.js11
1 files changed, 10 insertions, 1 deletions
diff --git a/app/assets/javascripts/gfm_auto_complete.js b/app/assets/javascripts/gfm_auto_complete.js
index b62b2cec4d8..687a462a0d4 100644
--- a/app/assets/javascripts/gfm_auto_complete.js
+++ b/app/assets/javascripts/gfm_auto_complete.js
@@ -3,6 +3,7 @@
import emojiMap from 'emojis/digests.json';
import emojiAliases from 'emojis/aliases.json';
import { glEmojiTag } from '~/behaviors/gl_emoji';
+import glRegexp from '~/lib/utils/regexp';
// Creates the variables for setting up GFM auto-completion
window.gl = window.gl || {};
@@ -127,7 +128,15 @@ window.gl.GfmAutoComplete = {
callbacks: {
sorter: this.DefaultOptions.sorter,
beforeInsert: this.DefaultOptions.beforeInsert,
- filter: this.DefaultOptions.filter
+ filter: this.DefaultOptions.filter,
+
+ matcher: (flag, subtext) => {
+ const relevantText = subtext.trim().split(/\s/).pop();
+ const regexp = new RegExp(`(?:[^${glRegexp.unicodeLetters}0-9:]|\n|^):([^:]*)$`, 'gi');
+ const match = regexp.exec(relevantText);
+
+ return match && match.length ? match[1] : null;
+ }
}
});
// Team Members