Skip to content

Commit fed13c3

Browse files
committed
implemented entity list methods
1 parent 3a1dd63 commit fed13c3

2 files changed

Lines changed: 436 additions & 0 deletions

File tree

ayon_api/graphql_queries.py

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -665,3 +665,33 @@ def activities_graphql_query(fields, order):
665665
query_queue.append((k, v, field))
666666

667667
return query
668+
669+
670+
def entity_lists_graphql_query(fields):
671+
query = GraphQlQuery("EntityLists")
672+
project_name_var = query.add_variable("projectName", "String!")
673+
entity_list_ids = query.add_variable("listIds", "String!")
674+
675+
project_field = query.add_field("project")
676+
project_field.set_filter("name", project_name_var)
677+
678+
entity_lists_field = project_field.add_field_with_edges("entityLists")
679+
entity_lists_field.set_filter("ids", entity_list_ids)
680+
681+
nested_fields = fields_to_dict(set(fields))
682+
683+
query_queue = collections.deque()
684+
for key, value in nested_fields.items():
685+
query_queue.append((key, value, entity_lists_field))
686+
687+
while query_queue:
688+
item = query_queue.popleft()
689+
key, value, parent = item
690+
field = parent.add_field(key)
691+
if value is FIELD_VALUE:
692+
continue
693+
694+
for k, v in value.items():
695+
query_queue.append((k, v, field))
696+
697+
return query

0 commit comments

Comments
 (0)