stream-chat 4.29.0__py3-none-any.whl → 4.30.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
stream_chat/__pkg__.py CHANGED
@@ -1,6 +1,6 @@
1
1
  __author__ = "Tommaso Barbugli"
2
2
  __copyright__ = "Copyright 2019-2022, Stream.io, Inc"
3
- __version__ = "4.29.0"
3
+ __version__ = "4.30.0"
4
4
  __maintainer__ = "Tommaso Barbugli"
5
5
  __email__ = "support@getstream.io"
6
6
  __status__ = "Production"
@@ -232,6 +232,22 @@ class StreamChatAsync(StreamChatInterface, AsyncContextManager):
232
232
  "query_banned_users", params={"payload": json.dumps(query_conditions)}
233
233
  )
234
234
 
235
+ async def query_future_channel_bans(self, **options: Any) -> StreamResponse:
236
+ """
237
+ Query future channel bans created by a user.
238
+
239
+ :param options: Optional parameters including:
240
+ - user_id: The ID of the user who created the bans
241
+ - exclude_expired_bans: Whether to exclude expired bans
242
+ - limit: Maximum number of results to return
243
+ - offset: Number of results to skip
244
+
245
+ :return: A StreamResponse containing the list of future channel bans
246
+ """
247
+ return await self.get(
248
+ "query_future_channel_bans", params={"payload": json.dumps(options)}
249
+ )
250
+
235
251
  async def block_user(
236
252
  self, blocked_user_id: str, user_id: str, **options: Any
237
253
  ) -> StreamResponse:
@@ -356,6 +356,23 @@ class StreamChatInterface(abc.ABC):
356
356
  """
357
357
  pass
358
358
 
359
+ @abc.abstractmethod
360
+ def query_future_channel_bans(
361
+ self, **options: Any
362
+ ) -> Union[StreamResponse, Awaitable[StreamResponse]]:
363
+ """
364
+ Query future channel bans created by a user.
365
+
366
+ :param options: Optional parameters including:
367
+ - user_id: The ID of the user who created the bans
368
+ - exclude_expired_bans: Whether to exclude expired bans
369
+ - limit: Maximum number of results to return
370
+ - offset: Number of results to skip
371
+
372
+ :return: A StreamResponse containing the list of future channel bans
373
+ """
374
+ pass
375
+
359
376
  @abc.abstractmethod
360
377
  def block_user(
361
378
  self, blocked_user_id: str, user_id: str, **options: Any
stream_chat/client.py CHANGED
@@ -232,6 +232,22 @@ class StreamChat(StreamChatInterface):
232
232
  "query_banned_users", params={"payload": json.dumps(query_conditions)}
233
233
  )
234
234
 
235
+ def query_future_channel_bans(self, **options: Any) -> StreamResponse:
236
+ """
237
+ Query future channel bans created by a user.
238
+
239
+ :param options: Optional parameters including:
240
+ - user_id: The ID of the user who created the bans
241
+ - exclude_expired_bans: Whether to exclude expired bans
242
+ - limit: Maximum number of results to return
243
+ - offset: Number of results to skip
244
+
245
+ :return: A StreamResponse containing the list of future channel bans
246
+ """
247
+ return self.get(
248
+ "query_future_channel_bans", params={"payload": json.dumps(options)}
249
+ )
250
+
235
251
  def block_user(
236
252
  self, blocked_user_id: str, user_id: str, **options: Any
237
253
  ) -> StreamResponse:
stream_chat/types/base.py CHANGED
@@ -1,6 +1,6 @@
1
1
  import sys
2
2
  from enum import IntEnum
3
- from typing import Optional
3
+ from typing import Any, Dict, List, Optional
4
4
 
5
5
  if sys.version_info >= (3, 8):
6
6
  from typing import TypedDict
@@ -43,3 +43,20 @@ class Pager(TypedDict, total=False):
43
43
  limit: Optional[int]
44
44
  next: Optional[str]
45
45
  prev: Optional[str]
46
+
47
+
48
+ class ParsedPredefinedFilterResponse(TypedDict, total=False):
49
+ """
50
+ Represents the parsed/interpolated predefined filter returned in QueryChannels response.
51
+
52
+ This is only present when a predefined filter is used in the query.
53
+
54
+ Parameters:
55
+ name: The name of the predefined filter that was used.
56
+ filter: The interpolated filter with placeholders replaced by actual values.
57
+ sort: The interpolated sort parameters (optional).
58
+ """
59
+
60
+ name: str
61
+ filter: Dict[str, Any]
62
+ sort: Optional[List[SortParam]]
@@ -1,13 +1,13 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: stream-chat
3
- Version: 4.29.0
3
+ Version: 4.30.0
4
4
  Summary: Client for Stream Chat.
5
5
  Home-page: https://github.com/GetStream/stream-chat-python
6
6
  Author: Tommaso Barbugli
7
7
  Author-email: support@getstream.io
8
8
  Project-URL: Bug Tracker, https://github.com/GetStream/stream-chat-python/issues
9
9
  Project-URL: Documentation, https://getstream.io/activity-feeds/docs/python/?language=python
10
- Project-URL: Release Notes, https://github.com/GetStream/stream-chat-python/releases/tag/v4.29.0
10
+ Project-URL: Release Notes, https://github.com/GetStream/stream-chat-python/releases/tag/v4.30.0
11
11
  Classifier: Intended Audience :: Developers
12
12
  Classifier: Intended Audience :: System Administrators
13
13
  Classifier: Operating System :: OS Independent
@@ -1,9 +1,9 @@
1
1
  stream_chat/__init__.py,sha256=xYQuC8xcPLJxJnFWzaNaO-sVUc7IJZYe13OIPRaDBEA,116
2
- stream_chat/__pkg__.py,sha256=8cnvJc4Zln03zsTmgM1cga5doADhiHe3q7MxtOkTlSg,206
2
+ stream_chat/__pkg__.py,sha256=GnrN9f9j_gBmgUVVxVXsMyzcYVmyKp27E4LbAFdPY0Q,206
3
3
  stream_chat/campaign.py,sha256=Z7bBo2rGMs02JkA1k9_206J0spcSLecjdhQuRnrc2Eo,2156
4
4
  stream_chat/channel.py,sha256=40q61hI0A0iy_Q2Xdv6D94oSG47Bu1PYaBXMRX2k03g,11059
5
5
  stream_chat/channel_batch_updater.py,sha256=QkO7MlIsD0q0krox_zKqKrqNNsB0wiSRKiwIXALdyd0,8216
6
- stream_chat/client.py,sha256=-IZduXIKFarCHsyGK_Cw888Sd9uiQNasYLC25rFoqTM,38294
6
+ stream_chat/client.py,sha256=U-640jHDkabpeKg9518FWq3cJoghEU--k5drhR7U4dw,38933
7
7
  stream_chat/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
8
8
  stream_chat/query_threads.py,sha256=zz0w7DnTq0FR8OAvNkPH7Q1CSYaWOtoP_NAa8JgsKtE,542
9
9
  stream_chat/segment.py,sha256=MD1de83rVsaqxcyPy8wTXDudFjxz5Mvr70z4pTkW3P0,2691
@@ -11,17 +11,17 @@ stream_chat/async_chat/__init__.py,sha256=V6x7yDCdXbP3vMuSan6Xm7RE_njZUvflImqOxf
11
11
  stream_chat/async_chat/campaign.py,sha256=Bc3iHZigxserUycZK4wDuXU0wXVH2G6fIDiYNVYPkeE,1885
12
12
  stream_chat/async_chat/channel.py,sha256=20dj1jQVm6dU_VUDpFJ1rUqxZVJtLhQeFxjJvcFm56s,11525
13
13
  stream_chat/async_chat/channel_batch_updater.py,sha256=UiPHN8j49tn15RnjxqUBW6p6Ee3enMmvbNZn3gNWEBY,8401
14
- stream_chat/async_chat/client.py,sha256=uWck1sxCgp_KmWCgQ05Kn0MmrFvOAJBrQkxkac98Gqo,40451
14
+ stream_chat/async_chat/client.py,sha256=PeCjdCunhXPkMWGvtDvWipgLwR8-tOwe5AHxHwu4vuw,41102
15
15
  stream_chat/async_chat/segment.py,sha256=G_YEwW2SXIE7huTW3Zu_rim2XkYcuFNYekLZZGDjFkA,2777
16
16
  stream_chat/base/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
17
17
  stream_chat/base/campaign.py,sha256=dAVkTYyirEpgyOPn8JyDebNMKeJu02vTuqgmPvdQoWU,1449
18
18
  stream_chat/base/channel.py,sha256=zaVhpVHXW-e3GHCqOtQO8x2yHqqAQ6MKP-AZXarQOUc,17805
19
- stream_chat/base/client.py,sha256=YPqpNlaPYr-QifVPImUh4ZFGtUoEpV8AV3N8bi6P_Ew,49023
19
+ stream_chat/base/client.py,sha256=XUfW4ZojcGGz2qC52GBhs3IDmzKgezbkv_7_SqdJfQA,49631
20
20
  stream_chat/base/exceptions.py,sha256=eh1qW5d6zjUrlgsHNEBebAr0jVH2UupZ06w8sp2cseI,819
21
21
  stream_chat/base/query_threads.py,sha256=LfC09Atsw6cwL98MJjL-cGzQU4V1r7CRbRLitgBV-x8,934
22
22
  stream_chat/base/segment.py,sha256=X82DX8Y-cERJ1OvF2tz9iIM4CBNW6tx8HGaTEXBva9I,2364
23
23
  stream_chat/types/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
24
- stream_chat/types/base.py,sha256=JKlOxQVPvMClTo0ev63Ya-K-dX-98j95qSE-KKzziEE,858
24
+ stream_chat/types/base.py,sha256=yMmYa_fH0YJRi5tkOlKCQUCAQccGe3IkMCTzzxsVG_M,1423
25
25
  stream_chat/types/campaign.py,sha256=3Hsgf3SGKA5jh-szQkGLJlmIuswKVTFQBW7vxpJVu-g,2795
26
26
  stream_chat/types/channel_batch.py,sha256=KskaIJCwQMXjanJaFOA3q5ipAgQjhw_RiNpyTmv6k_E,2714
27
27
  stream_chat/types/delivery_receipts.py,sha256=ir1EYIvRCKo2pw5nMPJ_JNJck1c_9xRXOANEW_803gk,1607
@@ -30,8 +30,8 @@ stream_chat/types/rate_limit.py,sha256=v3Z4Ur0yoEdFLiHa1CNABEej2nxPlHQ6Bpy2XxW-T
30
30
  stream_chat/types/segment.py,sha256=KzOi5N-VzLfj0m4zeZ9U_29ey9dxDtewtcNv9g4Aums,1273
31
31
  stream_chat/types/shared_locations.py,sha256=2rO4e0G1RX9DXGHcg3HJt5gp33G-LRKox62hfc0skGA,200
32
32
  stream_chat/types/stream_response.py,sha256=jWKPrOU7u6dZ2SyOK53uQCXTstrL1HshO9fA7R6Bt_A,2391
33
- stream_chat-4.29.0.dist-info/licenses/LICENSE,sha256=H66SBDuPWSRHzKPEdyjAk3C0THQRcGPfqqve4naQuu0,14424
34
- stream_chat-4.29.0.dist-info/METADATA,sha256=r3T-WT0XDCPg5M_ZHhUrTskgTmLJiWlGgn7c3YveWmU,7638
35
- stream_chat-4.29.0.dist-info/WHEEL,sha256=SmOxYU7pzNKBqASvQJ7DjX3XGUF92lrGhMb3R6_iiqI,91
36
- stream_chat-4.29.0.dist-info/top_level.txt,sha256=26uTfg4bWcEaFrVKlzGGgfONH1p5DDe21G07EKfYSvo,12
37
- stream_chat-4.29.0.dist-info/RECORD,,
33
+ stream_chat-4.30.0.dist-info/licenses/LICENSE,sha256=H66SBDuPWSRHzKPEdyjAk3C0THQRcGPfqqve4naQuu0,14424
34
+ stream_chat-4.30.0.dist-info/METADATA,sha256=XqhKdpv8lR3-5lhNMm8Vpaee2H8Q-czOGNJ_UoGLd3Y,7638
35
+ stream_chat-4.30.0.dist-info/WHEEL,sha256=SmOxYU7pzNKBqASvQJ7DjX3XGUF92lrGhMb3R6_iiqI,91
36
+ stream_chat-4.30.0.dist-info/top_level.txt,sha256=26uTfg4bWcEaFrVKlzGGgfONH1p5DDe21G07EKfYSvo,12
37
+ stream_chat-4.30.0.dist-info/RECORD,,