Merge pull request #3727 from Erquint/staging Chat titles are now included in the search. Query terms don't have to occur in the same message anymore.

190f2f908594a5bf65dd8e3b0322d254fda26445

Cohee <18619528+Cohee1207@users.noreply.github.com>

Signed
1 files changed, +4 -5Ignore whitespace
src/endpoints/chats.js+4 -5
@@ -783,12 +783,11 @@ router.post('/search', validateAvatarUrlMiddleware, function (request, response)
783 continue;783 continue;
784 }784 }
785785
786 // Search through messages786 // Search through title and messages of the chat
787 const fragments = query.trim().toLowerCase().split(/\s+/).filter(x => x);787 const fragments = query.trim().toLowerCase().split(/\s+/).filter(x => x);
788 const hasMatch = messages.some(message => {788 const text = [chatFile.path.split(/[\\/]/).pop().replace(/.jsonl$/, ''),
789 const text = message?.mes?.toLowerCase();789 ...messages.map(message => message?.mes)].join('\n').toLowerCase();
790 return text && fragments.every(fragment => text.includes(fragment));790 const hasMatch = fragments.every(fragment => text.includes(fragment));
791 });
792791
793 if (hasMatch) {792 if (hasMatch) {
794 results.push({793 results.push({