diff --git a/.changeset/short-numbers-carry.md b/.changeset/short-numbers-carry.md new file mode 100644 index 0000000000..be95300054 --- /dev/null +++ b/.changeset/short-numbers-carry.md @@ -0,0 +1,5 @@ +--- +'@backstage/plugin-search-backend-node': patch +--- + +Escape : characters in the query diff --git a/plugins/search-backend-node/src/engines/LunrSearchEngine.ts b/plugins/search-backend-node/src/engines/LunrSearchEngine.ts index f2ace54ed2..a1c12f019d 100644 --- a/plugins/search-backend-node/src/engines/LunrSearchEngine.ts +++ b/plugins/search-backend-node/src/engines/LunrSearchEngine.ts @@ -57,6 +57,9 @@ export class LunrSearchEngine implements SearchEngine { .map(([field, value]) => { // Require that the given field has the given value (with +). if (['string', 'number', 'boolean'].includes(typeof value)) { + if (typeof value === 'string') { + return ` +${field}:${value.replace(':', '\\:')}`; + } return ` +${field}:${value}`; }