clipcloudlib 0.4.4__tar.gz → 0.4.6__tar.gz

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.
Files changed (27) hide show
  1. {clipcloudlib-0.4.4 → clipcloudlib-0.4.6}/PKG-INFO +1 -1
  2. {clipcloudlib-0.4.4 → clipcloudlib-0.4.6}/clipcloudlib/enums.py +3 -0
  3. {clipcloudlib-0.4.4 → clipcloudlib-0.4.6}/clipcloudlib/schemas/events.py +17 -9
  4. {clipcloudlib-0.4.4 → clipcloudlib-0.4.6}/clipcloudlib/schemas/message.py +1 -0
  5. {clipcloudlib-0.4.4 → clipcloudlib-0.4.6}/clipcloudlib.egg-info/PKG-INFO +1 -1
  6. {clipcloudlib-0.4.4 → clipcloudlib-0.4.6}/pyproject.toml +1 -1
  7. {clipcloudlib-0.4.4 → clipcloudlib-0.4.6}/README.md +0 -0
  8. {clipcloudlib-0.4.4 → clipcloudlib-0.4.6}/clipcloudlib/__init__.py +0 -0
  9. {clipcloudlib-0.4.4 → clipcloudlib-0.4.6}/clipcloudlib/exceptions.py +0 -0
  10. {clipcloudlib-0.4.4 → clipcloudlib-0.4.6}/clipcloudlib/mappers/__init__.py +0 -0
  11. {clipcloudlib-0.4.4 → clipcloudlib-0.4.6}/clipcloudlib/mappers/base.py +0 -0
  12. {clipcloudlib-0.4.4 → clipcloudlib-0.4.6}/clipcloudlib/mappers/room.py +0 -0
  13. {clipcloudlib-0.4.4 → clipcloudlib-0.4.6}/clipcloudlib/mappers/session.py +0 -0
  14. {clipcloudlib-0.4.4 → clipcloudlib-0.4.6}/clipcloudlib/models/redis/__init__.py +0 -0
  15. {clipcloudlib-0.4.4 → clipcloudlib-0.4.6}/clipcloudlib/models/redis/base.py +0 -0
  16. {clipcloudlib-0.4.4 → clipcloudlib-0.4.6}/clipcloudlib/models/redis/room.py +0 -0
  17. {clipcloudlib-0.4.4 → clipcloudlib-0.4.6}/clipcloudlib/models/redis/session.py +0 -0
  18. {clipcloudlib-0.4.4 → clipcloudlib-0.4.6}/clipcloudlib/required.py +0 -0
  19. {clipcloudlib-0.4.4 → clipcloudlib-0.4.6}/clipcloudlib/schemas/__init__.py +0 -0
  20. {clipcloudlib-0.4.4 → clipcloudlib-0.4.6}/clipcloudlib/schemas/file.py +0 -0
  21. {clipcloudlib-0.4.4 → clipcloudlib-0.4.6}/clipcloudlib/schemas/room.py +0 -0
  22. {clipcloudlib-0.4.4 → clipcloudlib-0.4.6}/clipcloudlib/schemas/session.py +0 -0
  23. {clipcloudlib-0.4.4 → clipcloudlib-0.4.6}/clipcloudlib.egg-info/SOURCES.txt +0 -0
  24. {clipcloudlib-0.4.4 → clipcloudlib-0.4.6}/clipcloudlib.egg-info/dependency_links.txt +0 -0
  25. {clipcloudlib-0.4.4 → clipcloudlib-0.4.6}/clipcloudlib.egg-info/requires.txt +0 -0
  26. {clipcloudlib-0.4.4 → clipcloudlib-0.4.6}/clipcloudlib.egg-info/top_level.txt +0 -0
  27. {clipcloudlib-0.4.4 → clipcloudlib-0.4.6}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: clipcloudlib
3
- Version: 0.4.4
3
+ Version: 0.4.6
4
4
  Summary: Add your description here
5
5
  Project-URL: Repository, https://github.com/rorka491/clipcloud-lib.git
6
6
  Requires-Python: >=3.11
@@ -2,6 +2,7 @@ from enum import StrEnum
2
2
 
3
3
 
4
4
  class EventTypeEnum(StrEnum):
5
+ TOGGLE_ROOM_ACCESS = "toggle_room_access"
5
6
  DELETE_MESSAGE = "delete_message"
6
7
  MESSAGE = "message"
7
8
  PAIRING = "pairing"
@@ -12,6 +13,8 @@ class EventTypeEnum(StrEnum):
12
13
  PROMO = "promo"
13
14
  SET_USERNAME = "set_username"
14
15
  CHANGE_MESSAGE = "change_message"
16
+ USER_ONLINE = "user_online"
17
+ USER_OFFLINE = "user_offline"
15
18
 
16
19
  class EventTargetEnum(StrEnum):
17
20
  ROOM = "room"
@@ -1,15 +1,11 @@
1
- from uuid import UUID
2
-
3
- from pydantic import BaseModel
1
+ from typing import Annotated, Union, Literal
2
+ from pydantic import Field, RootModel, BaseModel
4
3
  from clipcloudlib.enums import EventTypeEnum
5
- from typing import Annotated, Union
6
- from pydantic import Field, RootModel
7
-
8
4
 
9
- from enum import StrEnum
10
- from typing import Literal
11
- from pydantic import BaseModel
12
5
 
6
+ class ToggleRoomAccessStatusEvent(BaseModel):
7
+ type: Literal[EventTypeEnum.TOGGLE_ROOM_ACCESS] = EventTypeEnum.TOGGLE_ROOM_ACCESS
8
+ payload: dict
13
9
 
14
10
 
15
11
  class DeleteMessageEvent(BaseModel):
@@ -62,9 +58,19 @@ class UserTypingEvent(BaseModel):
62
58
  payload: dict
63
59
 
64
60
 
61
+ class UserOnlineEvent(BaseModel):
62
+ type: Literal[EventTypeEnum.USER_ONLINE] = EventTypeEnum.USER_ONLINE
63
+ payload: dict
64
+
65
+
66
+ class UserOfflineEvent(BaseModel):
67
+ type: Literal[EventTypeEnum.USER_OFFLINE] = EventTypeEnum.USER_OFFLINE
68
+ payload: dict
69
+
65
70
 
66
71
  EventUnion = Annotated[
67
72
  Union[
73
+ ToggleRoomAccessStatusEvent,
68
74
  DeleteMessageEvent,
69
75
  ChangeMessageEvent,
70
76
  SetUsernameEvent,
@@ -75,6 +81,8 @@ EventUnion = Annotated[
75
81
  MessageEvent,
76
82
  ChangeRoomCodeEvent,
77
83
  UserTypingEvent,
84
+ UserOnlineEvent,
85
+ UserOfflineEvent,
78
86
  ],
79
87
  Field(discriminator="type"),
80
88
  ]
@@ -15,6 +15,7 @@ class MessageSchema(BaseModel):
15
15
  session_id: UUID
16
16
  file: FileSchema | None = None
17
17
 
18
+
18
19
  model_config = ConfigDict(from_attributes=True)
19
20
 
20
21
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: clipcloudlib
3
- Version: 0.4.4
3
+ Version: 0.4.6
4
4
  Summary: Add your description here
5
5
  Project-URL: Repository, https://github.com/rorka491/clipcloud-lib.git
6
6
  Requires-Python: >=3.11
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "clipcloudlib"
3
- version = "0.4.4"
3
+ version = "0.4.6"
4
4
  description = "Add your description here"
5
5
  readme = "README.md"
6
6
  requires-python = ">=3.11"
File without changes
File without changes