Просмотр исходного кода

Merge pull request #4842 from weseek/fix/83399-display-snippet

refs #83399: fix display snnipet
Yuki Takei 4 лет назад
Родитель
Сommit
2cf6af4e02
1 измененных файлов с 14 добавлено и 1 удалено
  1. 14 1
      packages/app/src/server/service/search.ts

+ 14 - 1
packages/app/src/server/service/search.ts

@@ -401,10 +401,23 @@ class SearchService implements SearchQueryParser, SearchResolver {
         pageData.lastUpdateUser = serializeUserSecurely(pageData.lastUpdateUser);
       }
 
+      // increment elasticSearchResult
+      let elasticSearchResult;
+      const highlightData = data._highlight;
+      if (highlightData != null) {
+        const snippet = highlightData['body.en'] || highlightData['body.ja'] || '';
+        const pathMatch = highlightData['path.en'] || highlightData['path.ja'] || '';
+
+        elasticSearchResult = {
+          snippet: filterXss.process(snippet),
+          highlightedPath: filterXss.process(pathMatch),
+        };
+      }
+
       // generate pageMeta data
       const pageMeta = {
         bookmarkCount: data._source.bookmark_count || 0,
-        elasticSearchResult: data.elasticSearchResult,
+        elasticSearchResult,
       };
 
       return { pageData, pageMeta };