X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/9f5256256f4b29188aa441f2e506297d27e200ce..b936759134f8d2b1a68b19be06de8a3f41f782d8:/apps/workbench/app/assets/javascripts/to_tsquery.js diff --git a/apps/workbench/app/assets/javascripts/to_tsquery.js b/apps/workbench/app/assets/javascripts/to_tsquery.js index dbb17f3f73..6957a5fe8f 100644 --- a/apps/workbench/app/assets/javascripts/to_tsquery.js +++ b/apps/workbench/app/assets/javascripts/to_tsquery.js @@ -2,39 +2,21 @@ // // SPDX-License-Identifier: AGPL-3.0 -// to_tsquery() converts a user-entered search query to a useful -// operand for the Arvados API "@@" filter. It returns null if it -// can't come up with anything valid (e.g., q consists entirely of -// punctuation). -// -// Examples: -// -// "foo" => "foo:*" -// "foo_bar" => "foo:*&bar:*" -// "foo.bar" => "foo.bar:*" // "." is a word char in FT queries -// "foo/b-r" => "foo/b-r:*" // "/" and "-", too -// "foo|bar" => "foo:*&bar:*" -// " oo|ba " => "oo:*&ba:*" -// "__ " => null -// "" => null -// null => null -window.to_tsquery = function(q) { - q = (q || '').replace(/[^-\w\.\/]+/g, ' ').trim().replace(/ /g, ':*&') - if (q == '') - return null - return q + ':*' -} - // to_tsquery_filters() converts a user-entered search query to a list of -// filters using the newly added (as for arvados 1.5) trigram indexes. +// filters using the newly added (as for arvados 1.5) trigram indexes. It returns +// null if it can't come up with anything valid (e.g., q consists entirely of +// punctuation). // // Examples: // // "foo" => [["any", "ilike", "%foo%"]] -// "foo.bar" => [["any", "ilike", "%foo.bar%"]] +// "foo.bar" => [["any", "ilike", "%foo.bar%"]] // "." is a word char in FT queries +// "foo/b-r" => [["any", "ilike", "%foo/b-r%"]] // "/" and "-", too // "foo bar" => [["any", "ilike", "%foo%"], ["any", "ilike", "%bar%"]] // "foo|bar" => [["any", "ilike", "%foo%"], ["any", "ilike", "%bar%"]] +// " oo|bar" => [["any", "ilike", "%oo%"], ["any", "ilike", "%bar%"]] // "" => [] +// " " => [] // null => [] window.to_tsquery_filters = function(q) { q = (q || '').replace(/[^-\w\.\/]+/g, ' ').trim()