diff --git a/generate.sh b/generate.sh index af51cd70..1ab0eaec 100755 --- a/generate.sh +++ b/generate.sh @@ -8,7 +8,7 @@ then exit 1; fi -if ! poetry -V &> /dev/null +if ! uv -V &> /dev/null then echo "cannot find poetry in path, did you setup this repo correctly?"; exit 1; diff --git a/getstream/models/__init__.py b/getstream/models/__init__.py index a33b2db1..5e201c92 100644 --- a/getstream/models/__init__.py +++ b/getstream/models/__init__.py @@ -7070,9 +7070,7 @@ class MessageNewEvent(DataClassJsonMixin): ) ) watcher_count: int = dc_field(metadata=dc_config(field_name="watcher_count")) - type: str = dc_field( - default="notification.thread_message_new", metadata=dc_config(field_name="type") - ) + type: str = dc_field(default="message.new", metadata=dc_config(field_name="type")) team: Optional[str] = dc_field(default=None, metadata=dc_config(field_name="team")) thread_participants: "Optional[List[User]]" = dc_field( default=None, metadata=dc_config(field_name="thread_participants") @@ -10281,12 +10279,76 @@ class Role(DataClassJsonMixin): scopes: List[str] = dc_field(metadata=dc_config(field_name="scopes")) +@dataclass +class RuleBuilderAction(DataClassJsonMixin): + duration: Optional[int] = dc_field( + default=None, metadata=dc_config(field_name="duration") + ) + ip_ban: Optional[bool] = dc_field( + default=None, metadata=dc_config(field_name="ip_ban") + ) + reason: Optional[str] = dc_field( + default=None, metadata=dc_config(field_name="reason") + ) + shadow_ban: Optional[bool] = dc_field( + default=None, metadata=dc_config(field_name="shadow_ban") + ) + type: Optional[str] = dc_field(default=None, metadata=dc_config(field_name="type")) + + +@dataclass +class RuleBuilderCondition(DataClassJsonMixin): + provider: Optional[str] = dc_field( + default=None, metadata=dc_config(field_name="provider") + ) + threshold: Optional[int] = dc_field( + default=None, metadata=dc_config(field_name="threshold") + ) + time_window: Optional[str] = dc_field( + default=None, metadata=dc_config(field_name="time_window") + ) + labels: Optional[List[str]] = dc_field( + default=None, metadata=dc_config(field_name="labels") + ) + + +@dataclass +class RuleBuilderConfig(DataClassJsonMixin): + _async: Optional[bool] = dc_field( + default=None, metadata=dc_config(field_name="async") + ) + enabled: Optional[bool] = dc_field( + default=None, metadata=dc_config(field_name="enabled") + ) + rules: "Optional[List[RuleBuilderRule]]" = dc_field( + default=None, metadata=dc_config(field_name="rules") + ) + + +@dataclass +class RuleBuilderRule(DataClassJsonMixin): + enabled: Optional[bool] = dc_field( + default=None, metadata=dc_config(field_name="enabled") + ) + id: Optional[str] = dc_field(default=None, metadata=dc_config(field_name="id")) + name: Optional[str] = dc_field(default=None, metadata=dc_config(field_name="name")) + conditions: "Optional[List[RuleBuilderCondition]]" = dc_field( + default=None, metadata=dc_config(field_name="conditions") + ) + action: "Optional[RuleBuilderAction]" = dc_field( + default=None, metadata=dc_config(field_name="action") + ) + + @dataclass class S3Request(DataClassJsonMixin): s3_region: str = dc_field(metadata=dc_config(field_name="s3_region")) s3_api_key: Optional[str] = dc_field( default=None, metadata=dc_config(field_name="s3_api_key") ) + s3_custom_endpoint_url: Optional[str] = dc_field( + default=None, metadata=dc_config(field_name="s3_custom_endpoint_url") + ) s3_secret: Optional[str] = dc_field( default=None, metadata=dc_config(field_name="s3_secret") ) @@ -12392,6 +12454,9 @@ class UpsertConfigRequest(DataClassJsonMixin): google_vision_config: "Optional[GoogleVisionConfig]" = dc_field( default=None, metadata=dc_config(field_name="google_vision_config") ) + rule_builder_config: "Optional[RuleBuilderConfig]" = dc_field( + default=None, metadata=dc_config(field_name="rule_builder_config") + ) user: "Optional[UserRequest]" = dc_field( default=None, metadata=dc_config(field_name="user") )