diff --git a/app/search/client/provider/result.js b/app/search/client/provider/result.js index 3ab80e13943b0..6809f2915874c 100644 --- a/app/search/client/provider/result.js +++ b/app/search/client/provider/result.js @@ -100,6 +100,8 @@ Template.DefaultSearchResultTemplate.helpers({ return Template.instance().hasMore.get(); }, messageParse(msg) { + const text = Template.instance().data.text.get(); + msg.searchedText = text; return { customClass: 'search', actionContext: 'search', ...msg, groupable: false }; }, messageContext, diff --git a/app/ui-message/client/message.js b/app/ui-message/client/message.js index a237f26b2ba24..3f15f7b4c3973 100644 --- a/app/ui-message/client/message.js +++ b/app/ui-message/client/message.js @@ -19,6 +19,7 @@ import './messageThread.html'; import { AutoTranslate } from '../../autotranslate/client'; const renderBody = (msg, settings) => { + const searchedText = msg.searchedText ? msg.searchedText : ''; const isSystemMessage = MessageTypes.isSystemMessage(msg); const messageType = MessageTypes.getType(msg) || {}; @@ -40,6 +41,11 @@ const renderBody = (msg, settings) => { if (isSystemMessage) { msg.html = Markdown.parse(msg.html); } + + if (searchedText) { + msg = msg.replace(new RegExp(searchedText, 'gi'), (str) => `${ str }`); + } + return msg; };