From 3b9008610990d57ba155a154a7a147ce8011b05b Mon Sep 17 00:00:00 2001 From: Andrej730 Date: Mon, 6 May 2024 16:57:02 +0500 Subject: [PATCH] Fix loading search queries with exclusion #4609 It was failing to load queries like "!IfcWall" or "!2Mg7PHubX0xxOfF0DdA9Wd" --- src/blenderbim/blenderbim/tool/search.py | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/src/blenderbim/blenderbim/tool/search.py b/src/blenderbim/blenderbim/tool/search.py index cbad2ac02e..3d77e1653f 100644 --- a/src/blenderbim/blenderbim/tool/search.py +++ b/src/blenderbim/blenderbim/tool/search.py @@ -160,10 +160,16 @@ class ImportFilterQueryTransformer(lark.Transformer): return args[0] def instance(self, args): - return {"type": "instance", "value": " ".join([a.children[0].value for a in args])} + if args[0].data == "not": + return {"type": "instance", "value": "!" + args[1].children[0].value} + else: + return {"type": "instance", "value": args[0].children[0].value} def entity(self, args): - return {"type": "entity", "value": " ".join([a.children[0].value for a in args])} + if args[0].data == "not": + return {"type": "entity", "value": "!" + args[1].children[0].value} + else: + return {"type": "entity", "value": args[0].children[0].value} def attribute(self, args): name, comparison, value = args