aboutsummaryrefslogtreecommitdiffstats
path: root/server/sonar-docs
diff options
context:
space:
mode:
authorWouter Admiraal <wouter.admiraal@sonarsource.com>2019-01-28 12:09:39 +0100
committersonartech <sonartech@sonarsource.com>2019-02-11 09:11:41 +0100
commit2578fb89a59e36ac92d0b9853ac43986447f92a8 (patch)
tree5f55ea3786ec4c881a0c49122cb6fb7961d112b9 /server/sonar-docs
parentb89ada85c86c8936ede30813a13bbd5c7fea051a (diff)
downloadsonarqube-2578fb89a59e36ac92d0b9853ac43986447f92a8.tar.gz
sonarqube-2578fb89a59e36ac92d0b9853ac43986447f92a8.zip
SONAR-11657 Fix Lunr warnings when building Docs
Diffstat (limited to 'server/sonar-docs')
-rw-r--r--server/sonar-docs/src/components/Search.tsx11
1 files changed, 8 insertions, 3 deletions
diff --git a/server/sonar-docs/src/components/Search.tsx b/server/sonar-docs/src/components/Search.tsx
index a51421038b5..d798a2b5ad2 100644
--- a/server/sonar-docs/src/components/Search.tsx
+++ b/server/sonar-docs/src/components/Search.tsx
@@ -192,17 +192,22 @@ export default class Search extends React.PureComponent<Props, State> {
// end, the best would be for Lunr to support multi-term matching, as extending
// the search algorithm for this would be way too complicated.
function tokenContextPlugin(builder: LunrBuilder) {
+ const label = 'tokenContext';
const pipelineFunction = (token: LunrToken, index: number, tokens: LunrToken[]) => {
const prevToken = tokens[index - 1] || '';
const nextToken = tokens[index + 1] || '';
- token.metadata['tokenContext'] = [prevToken.toString(), token.toString(), nextToken.toString()]
+ token.metadata[label] = [prevToken.toString(), token.toString(), nextToken.toString()]
.filter(s => s.length)
.join(' ')
.toLowerCase();
return token;
};
- (lunr as any).Pipeline.registerFunction(pipelineFunction, 'tokenContext');
+ if (label in (lunr as any).Pipeline.registeredFunctions) {
+ return;
+ }
+
+ (lunr as any).Pipeline.registerFunction(pipelineFunction, label);
builder.pipeline.before((lunr as any).stemmer, pipelineFunction);
- builder.metadataWhitelist.push('tokenContext');
+ builder.metadataWhitelist.push(label);
}