From 04ad5e67d0fd035abae9575fc69094fb1b24c969 Mon Sep 17 00:00:00 2001 From: noellabo Date: Thu, 21 Sep 2023 17:53:51 +0900 Subject: [PATCH] Add supported operator and properties for search --- app/lib/search_query_transformer.rb | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/app/lib/search_query_transformer.rb b/app/lib/search_query_transformer.rb index a45ae3d09b..857ed1af55 100644 --- a/app/lib/search_query_transformer.rb +++ b/app/lib/search_query_transformer.rb @@ -12,6 +12,23 @@ class SearchQueryTransformer < Parslet::Transform in ).freeze + SUPPORTED_OPERATOR = %w( + + + - + ).freeze + + SUPPORTED_PROPERTIES = %w( + image + video + audio + media + poll + link + embed + sensitive + reply + ).freeze + class Query def initialize(clauses, options = {}) raise ArgumentError if options[:current_account].nil? @@ -152,6 +169,8 @@ class SearchQueryTransformer < Parslet::Transform case prefix when 'has', 'is' + raise "Unknown properties: #{term}" unless SUPPORTED_PROPERTIES.include?(term) + @filter = :properties @type = :term @term = term