Skip to content

Commit 685f565

Browse files
committed
added text filter and first or last filter options
1 parent e1716a6 commit 685f565

2 files changed

Lines changed: 15 additions & 0 deletions

File tree

ayon_api/_api_helpers/events.py

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -40,13 +40,16 @@ def get_events(
4040
project_names: Optional[Iterable[str]] = None,
4141
statuses: Optional[Iterable[EventStatus]] = None,
4242
users: Optional[Iterable[str]] = None,
43+
text_filter: Optional[str] = None,
4344
include_logs: Optional[bool] = None,
4445
has_children: Optional[bool] = None,
4546
newer_than: Optional[str] = None,
4647
older_than: Optional[str] = None,
4748
fields: Optional[Iterable[str]] = None,
4849
limit: Optional[int] = None,
4950
order: Optional[SortOrder] = None,
51+
first: Optional[int] = None,
52+
last: Optional[int] = None,
5053
states: Optional[Iterable[str]] = None,
5154
) -> Generator[dict[str, Any], None, None]:
5255
"""Get events from server with filtering options.
@@ -62,6 +65,7 @@ def get_events(
6265
statuses (Optional[Iterable[EventStatus]]): Filtering by statuses.
6366
users (Optional[Iterable[str]]): Filtering by users
6467
who created/triggered an event.
68+
text_filter (Optional[str]): Filtering by text in event payload.
6569
include_logs (Optional[bool]): Query also log events.
6670
has_children (Optional[bool]): Event is with/without children
6771
events. If 'None' then all events are returned, default.
@@ -75,6 +79,8 @@ def get_events(
7579
order (Optional[SortOrder]): Order events in ascending
7680
or descending order. It is recommended to set 'limit'
7781
when used descending.
82+
first (Optional[int]): Get first n events.
83+
last (Optional[int]): Get last n events.
7884
states (Optional[Iterable[str]]): DEPRECATED Filtering by states.
7985
Use 'statuses' instead.
8086
@@ -111,6 +117,9 @@ def get_events(
111117
("hasChildrenFilter", has_children),
112118
("newerThanFilter", newer_than),
113119
("olderThanFilter", older_than),
120+
("textFilter", text_filter),
121+
("firstFilter", first),
122+
("lastFilter", last),
114123
):
115124
if filter_value is not None:
116125
filters[filter_key] = filter_value

ayon_api/graphql_queries.py

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -593,6 +593,9 @@ def events_graphql_query(fields, order, use_states=False):
593593
has_children_var = query.add_variable("hasChildrenFilter", "Boolean!")
594594
newer_than_var = query.add_variable("newerThanFilter", "String!")
595595
older_than_var = query.add_variable("olderThanFilter", "String!")
596+
text_filter_var = query.add_variable("textFilter", "String!")
597+
first_n_var = query.add_variable("firstFilter", "Int!")
598+
last_n_var = query.add_variable("lastFilter", "Int!")
596599

597600
statuses_filter_name = "statuses"
598601
if use_states:
@@ -607,6 +610,9 @@ def events_graphql_query(fields, order, use_states=False):
607610
events_field.set_filter("hasChildren", has_children_var)
608611
events_field.set_filter("newerThan", newer_than_var)
609612
events_field.set_filter("olderThan", older_than_var)
613+
events_field.set_filter("filter", text_filter_var)
614+
events_field.set_filter("first", first_n_var)
615+
events_field.set_filter("last", last_n_var)
610616

611617
nested_fields = fields_to_dict(set(fields))
612618

0 commit comments

Comments
 (0)