Skip to content

Commit 0537d64

Browse files
committed
processSearchQuery: Add support for keyword: filter
1 parent bdcd6e8 commit 0537d64

File tree

2 files changed

+8
-1
lines changed

2 files changed

+8
-1
lines changed

app/utils/search.js

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
const KEYWORD_PREFIX = 'keyword:';
12
const KEYWORDS_PREFIX = 'keywords:';
23

34
/**
@@ -12,7 +13,12 @@ export function processSearchQuery(query) {
1213
let queries = [];
1314
let keywords = [];
1415
for (let token of tokens) {
15-
if (token.startsWith(KEYWORDS_PREFIX)) {
16+
if (token.startsWith(KEYWORD_PREFIX)) {
17+
let value = token.slice(KEYWORD_PREFIX.length).trim();
18+
if (value) {
19+
keywords.push(value);
20+
}
21+
} else if (token.startsWith(KEYWORDS_PREFIX)) {
1622
keywords = token
1723
.slice(KEYWORDS_PREFIX.length)
1824
.split(',')

tests/utils/search-test.js

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ module('processSearchQuery()', function () {
1212
['foo \t keywords:bar baz', { q: 'foo baz', keyword: 'bar' }],
1313
['foo keywords:bar,baz', { q: 'foo', all_keywords: 'bar baz' }],
1414
['foo keywords:bar keywords:baz', { q: 'foo', keyword: 'baz' }],
15+
['foo keyword:bar keyword:baz', { q: 'foo', all_keywords: 'bar baz' }],
1516
];
1617

1718
for (let [input, expectation] of TESTS) {

0 commit comments

Comments
 (0)