From 3b98cb1664ff0dcf04e475c5dadd342b58e9cd0a Mon Sep 17 00:00:00 2001 From: Kushal Pandya Date: Wed, 21 Nov 2018 19:52:41 +0530 Subject: Add support for custom highlighting slash commands via warning flags --- app/assets/javascripts/gfm_auto_complete.js | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) (limited to 'app/assets/javascripts/gfm_auto_complete.js') 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 = '
  • /${name}'; + let tpl = '
  • /${name}'; if (value.aliases.length > 0) { tpl += ' (or /<%- aliases.join(", /") %>)'; } @@ -72,10 +74,19 @@ class GfmAutoComplete { tpl += ' <%- params.join(" ") %>'; } if (value.description !== '') { - tpl += '<%- description %>'; + tpl += '<%- description %> <%- warningText %>'; } tpl += '
  • '; - 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, }; }); -- cgit v1.2.3