From 96cd2379f6fcda19210d38e0b4443f32505b875b Mon Sep 17 00:00:00 2001 From: Rudra Date: Fri, 16 Oct 2026 20:17:36 +0530 Subject: [PATCH] fix(queries): derive filter op correctly for list filter values --- fairgraph/queries.py | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/fairgraph/queries.py b/fairgraph/queries.py index 2888289a..96042660 100644 --- a/fairgraph/queries.py +++ b/fairgraph/queries.py @@ -495,7 +495,16 @@ def get_query_filter_property(property, context, filter: Any) -> QueryProperty: filter_obj = None else: # we have a filter value for this property - if isinstance(filter, Regex): + if isinstance(filter, list) and filter: + if all(isinstance(item, Regex) for item in filter): + op = "REGEX" + elif all(isinstance(item, Equals) for item in filter): + op = "EQUALS" + elif property.types[0] in (int, float, bool, datetime, date): + op = "EQUALS" + else: + op = "CONTAINS" + elif isinstance(filter, Regex): op = "REGEX" elif isinstance(filter, Equals): op = "EQUALS"