rb-commons 0.5.10__tar.gz → 0.5.12__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 (31) hide show
  1. {rb_commons-0.5.10 → rb_commons-0.5.12}/PKG-INFO +1 -1
  2. {rb_commons-0.5.10 → rb_commons-0.5.12}/rb_commons/http/base_api.py +7 -1
  3. {rb_commons-0.5.10 → rb_commons-0.5.12}/rb_commons/schemes/jwt.py +9 -1
  4. {rb_commons-0.5.10 → rb_commons-0.5.12}/rb_commons.egg-info/PKG-INFO +1 -1
  5. {rb_commons-0.5.10 → rb_commons-0.5.12}/setup.py +1 -1
  6. {rb_commons-0.5.10 → rb_commons-0.5.12}/README.md +0 -0
  7. {rb_commons-0.5.10 → rb_commons-0.5.12}/rb_commons/__init__.py +0 -0
  8. {rb_commons-0.5.10 → rb_commons-0.5.12}/rb_commons/broker/__init__.py +0 -0
  9. {rb_commons-0.5.10 → rb_commons-0.5.12}/rb_commons/broker/consumer.py +0 -0
  10. {rb_commons-0.5.10 → rb_commons-0.5.12}/rb_commons/configs/__init__.py +0 -0
  11. {rb_commons-0.5.10 → rb_commons-0.5.12}/rb_commons/configs/config.py +0 -0
  12. {rb_commons-0.5.10 → rb_commons-0.5.12}/rb_commons/configs/injections.py +0 -0
  13. {rb_commons-0.5.10 → rb_commons-0.5.12}/rb_commons/configs/rabbitmq.py +0 -0
  14. {rb_commons-0.5.10 → rb_commons-0.5.12}/rb_commons/http/__init__.py +0 -0
  15. {rb_commons-0.5.10 → rb_commons-0.5.12}/rb_commons/http/consul.py +0 -0
  16. {rb_commons-0.5.10 → rb_commons-0.5.12}/rb_commons/http/exceptions.py +0 -0
  17. {rb_commons-0.5.10 → rb_commons-0.5.12}/rb_commons/orm/__init__.py +0 -0
  18. {rb_commons-0.5.10 → rb_commons-0.5.12}/rb_commons/orm/exceptions.py +0 -0
  19. {rb_commons-0.5.10 → rb_commons-0.5.12}/rb_commons/orm/managers.py +0 -0
  20. {rb_commons-0.5.10 → rb_commons-0.5.12}/rb_commons/orm/services.py +0 -0
  21. {rb_commons-0.5.10 → rb_commons-0.5.12}/rb_commons/permissions/__init__.py +0 -0
  22. {rb_commons-0.5.10 → rb_commons-0.5.12}/rb_commons/permissions/role_permissions.py +0 -0
  23. {rb_commons-0.5.10 → rb_commons-0.5.12}/rb_commons/schemes/__init__.py +0 -0
  24. {rb_commons-0.5.10 → rb_commons-0.5.12}/rb_commons/schemes/pagination.py +0 -0
  25. {rb_commons-0.5.10 → rb_commons-0.5.12}/rb_commons/utils/__init__.py +0 -0
  26. {rb_commons-0.5.10 → rb_commons-0.5.12}/rb_commons/utils/media.py +0 -0
  27. {rb_commons-0.5.10 → rb_commons-0.5.12}/rb_commons.egg-info/SOURCES.txt +0 -0
  28. {rb_commons-0.5.10 → rb_commons-0.5.12}/rb_commons.egg-info/dependency_links.txt +0 -0
  29. {rb_commons-0.5.10 → rb_commons-0.5.12}/rb_commons.egg-info/requires.txt +0 -0
  30. {rb_commons-0.5.10 → rb_commons-0.5.12}/rb_commons.egg-info/top_level.txt +0 -0
  31. {rb_commons-0.5.10 → rb_commons-0.5.12}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: rb-commons
3
- Version: 0.5.10
3
+ Version: 0.5.12
4
4
  Summary: Commons of project and simplified orm based on sqlalchemy.
5
5
  Home-page: https://github.com/RoboSell-organization/rb-commons
6
6
  Author: Abdulvoris
@@ -60,7 +60,13 @@ class BaseAPI:
60
60
 
61
61
  response = request_methods[method](url, **kwargs)
62
62
 
63
- data = response.json()
63
+ try:
64
+ if response.text.strip():
65
+ data = response.json()
66
+ else:
67
+ data = {}
68
+ except ValueError as e:
69
+ raise BadRequestException(f"Invalid JSON response: {response.text}")
64
70
 
65
71
  if not (200 <= response.status_code < 300):
66
72
  error_message = data.get("message")
@@ -16,13 +16,15 @@ class Claims(BaseModel):
16
16
  user_id: Optional[int] = Field(None, alias="x-user-id")
17
17
  user_role: UserRole = Field(UserRole.GUEST, alias="x-user-role")
18
18
  shop_id: Optional[uuid.UUID] = Field(None, alias="x-shop-id")
19
+ jwt_token: Optional[str] = Field(None, alias="x-jwt-token")
19
20
 
20
21
  @classmethod
21
22
  def from_headers(cls, headers: dict) -> 'Claims':
22
23
  raw_claims = {
23
24
  "x-user-id": headers.get("x-user-id"),
24
25
  "x-user-role": headers.get("x-user-role", "admin"),
25
- "x-shop-id": headers.get("x-shop-id")
26
+ "x-shop-id": headers.get("x-shop-id"),
27
+ "x-jwt-token": headers.get("x-jwt-token")
26
28
  }
27
29
 
28
30
  try:
@@ -44,6 +46,12 @@ class Claims(BaseModel):
44
46
  except ValueError as e:
45
47
  raise ValueError(f"Invalid user_role: {e}")
46
48
 
49
+ if raw_claims["x-jwt-token"]:
50
+ try:
51
+ raw_claims["x-jwt-token"] = str(raw_claims["x-jwt-token"])
52
+ except ValueError as e:
53
+ raise ValueError(f"Invalid jwt token format: {e}")
54
+
47
55
  return cls(**raw_claims)
48
56
 
49
57
  except Exception as e:
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: rb-commons
3
- Version: 0.5.10
3
+ Version: 0.5.12
4
4
  Summary: Commons of project and simplified orm based on sqlalchemy.
5
5
  Home-page: https://github.com/RoboSell-organization/rb-commons
6
6
  Author: Abdulvoris
@@ -5,7 +5,7 @@ with open("README.md", "r", encoding="utf-8") as fh:
5
5
 
6
6
  setup(
7
7
  name="rb-commons",
8
- version="0.5.10",
8
+ version="0.5.12",
9
9
  author="Abdulvoris",
10
10
  author_email="erkinovabdulvoris101@gmail.com",
11
11
  description="Commons of project and simplified orm based on sqlalchemy.",
File without changes
File without changes