Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKushal Pandya <kushalspandya@gmail.com>2018-11-21 17:22:41 +0300
committerKushal Pandya <kushalspandya@gmail.com>2018-11-21 17:22:41 +0300
commit3b98cb1664ff0dcf04e475c5dadd342b58e9cd0a (patch)
tree7b726f87d8bd10b4408f4aaa03ca0e937508e1d5 /app/assets/javascripts/gfm_auto_complete.js
parent1fc450d0d1b741f6105afb6f498c1a39cbfd13fb (diff)
Add support for custom highlighting slash commands via warning flags
Diffstat (limited to 'app/assets/javascripts/gfm_auto_complete.js')
-rw-r--r--app/assets/javascripts/gfm_auto_complete.js18
1 files changed, 15 insertions, 3 deletions
diff --git a/app/assets/javascripts/gfm_auto_complete.js b/app/assets/javascripts/gfm_auto_complete.js
index 6f8b73564d0..c14eb936930 100644
--- a/app/assets/javascripts/gfm_auto_complete.js
+++ b/app/assets/javascripts/gfm_auto_complete.js
@@ -62,9 +62,11 @@ class GfmAutoComplete {
skipMarkdownCharacterTest: true,
data: GfmAutoComplete.defaultLoadingData,
displayTpl(value) {
+ const cssClasses = [];
+
if (GfmAutoComplete.isLoading(value)) return GfmAutoComplete.Loading.template;
// eslint-disable-next-line no-template-curly-in-string
- let tpl = '<li><span class="name">/${name}</span>';
+ let tpl = '<li class="<%- className %>"><span class="name">/${name}</span>';
if (value.aliases.length > 0) {
tpl += ' <small class="aliases">(or /<%- aliases.join(", /") %>)</small>';
}
@@ -72,10 +74,19 @@ class GfmAutoComplete {
tpl += ' <small class="params"><%- params.join(" ") %></small>';
}
if (value.description !== '') {
- tpl += '<small class="description"><i><%- description %></i></small>';
+ tpl += '<small class="description"><i><%- description %> <%- warningText %></i></small>';
}
tpl += '</li>';
- return _.template(tpl)(value);
+
+ if (value.warning) {
+ cssClasses.push('has-warning');
+ }
+
+ return _.template(tpl)({
+ ...value,
+ className: cssClasses.join(' '),
+ warningText: value.warning ? `(${value.warning})` : '',
+ });
},
insertTpl(value) {
// eslint-disable-next-line no-template-curly-in-string
@@ -104,6 +115,7 @@ class GfmAutoComplete {
aliases: c.aliases,
params: c.params,
description: c.description,
+ warning: c.warning,
search,
};
});