jamlib 3.0.0b12.dev3__tar.gz → 3.0.0b12.dev4__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 (100) hide show
  1. {jamlib-3.0.0b12.dev3/src/jamlib.egg-info → jamlib-3.0.0b12.dev4}/PKG-INFO +1 -1
  2. {jamlib-3.0.0b12.dev3 → jamlib-3.0.0b12.dev4}/pyproject.toml +1 -1
  3. {jamlib-3.0.0b12.dev3 → jamlib-3.0.0b12.dev4}/src/jam/__init__.py +1 -1
  4. {jamlib-3.0.0b12.dev3 → jamlib-3.0.0b12.dev4}/src/jam/ext/litestar/__init__.py +3 -1
  5. {jamlib-3.0.0b12.dev3 → jamlib-3.0.0b12.dev4}/src/jam/ext/litestar/plugins.py +35 -0
  6. {jamlib-3.0.0b12.dev3 → jamlib-3.0.0b12.dev4/src/jamlib.egg-info}/PKG-INFO +1 -1
  7. {jamlib-3.0.0b12.dev3 → jamlib-3.0.0b12.dev4}/LICENSE.md +0 -0
  8. {jamlib-3.0.0b12.dev3 → jamlib-3.0.0b12.dev4}/README.md +0 -0
  9. {jamlib-3.0.0b12.dev3 → jamlib-3.0.0b12.dev4}/setup.cfg +0 -0
  10. {jamlib-3.0.0b12.dev3 → jamlib-3.0.0b12.dev4}/src/jam/__base__.py +0 -0
  11. {jamlib-3.0.0b12.dev3 → jamlib-3.0.0b12.dev4}/src/jam/__base_encoder__.py +0 -0
  12. {jamlib-3.0.0b12.dev3 → jamlib-3.0.0b12.dev4}/src/jam/__deprecated__.py +0 -0
  13. {jamlib-3.0.0b12.dev3 → jamlib-3.0.0b12.dev4}/src/jam/aio/__base__.py +0 -0
  14. {jamlib-3.0.0b12.dev3 → jamlib-3.0.0b12.dev4}/src/jam/aio/__init__.py +0 -0
  15. {jamlib-3.0.0b12.dev3 → jamlib-3.0.0b12.dev4}/src/jam/aio/instance.py +0 -0
  16. {jamlib-3.0.0b12.dev3 → jamlib-3.0.0b12.dev4}/src/jam/aio/jwt/__init__.py +0 -0
  17. {jamlib-3.0.0b12.dev3 → jamlib-3.0.0b12.dev4}/src/jam/aio/oauth2/__base__.py +0 -0
  18. {jamlib-3.0.0b12.dev3 → jamlib-3.0.0b12.dev4}/src/jam/aio/oauth2/__init__.py +0 -0
  19. {jamlib-3.0.0b12.dev3 → jamlib-3.0.0b12.dev4}/src/jam/aio/oauth2/builtin/__init__.py +0 -0
  20. {jamlib-3.0.0b12.dev3 → jamlib-3.0.0b12.dev4}/src/jam/aio/oauth2/builtin/github.py +0 -0
  21. {jamlib-3.0.0b12.dev3 → jamlib-3.0.0b12.dev4}/src/jam/aio/oauth2/builtin/gitlab.py +0 -0
  22. {jamlib-3.0.0b12.dev3 → jamlib-3.0.0b12.dev4}/src/jam/aio/oauth2/builtin/google.py +0 -0
  23. {jamlib-3.0.0b12.dev3 → jamlib-3.0.0b12.dev4}/src/jam/aio/oauth2/builtin/yandex.py +0 -0
  24. {jamlib-3.0.0b12.dev3 → jamlib-3.0.0b12.dev4}/src/jam/aio/oauth2/client.py +0 -0
  25. {jamlib-3.0.0b12.dev3 → jamlib-3.0.0b12.dev4}/src/jam/aio/sessions/__base__.py +0 -0
  26. {jamlib-3.0.0b12.dev3 → jamlib-3.0.0b12.dev4}/src/jam/aio/sessions/__init__.py +0 -0
  27. {jamlib-3.0.0b12.dev3 → jamlib-3.0.0b12.dev4}/src/jam/aio/sessions/json.py +0 -0
  28. {jamlib-3.0.0b12.dev3 → jamlib-3.0.0b12.dev4}/src/jam/aio/sessions/redis.py +0 -0
  29. {jamlib-3.0.0b12.dev3 → jamlib-3.0.0b12.dev4}/src/jam/encoders.py +0 -0
  30. {jamlib-3.0.0b12.dev3 → jamlib-3.0.0b12.dev4}/src/jam/exceptions/__init__.py +0 -0
  31. {jamlib-3.0.0b12.dev3 → jamlib-3.0.0b12.dev4}/src/jam/exceptions/base.py +0 -0
  32. {jamlib-3.0.0b12.dev3 → jamlib-3.0.0b12.dev4}/src/jam/exceptions/jwt.py +0 -0
  33. {jamlib-3.0.0b12.dev3 → jamlib-3.0.0b12.dev4}/src/jam/exceptions/oauth2.py +0 -0
  34. {jamlib-3.0.0b12.dev3 → jamlib-3.0.0b12.dev4}/src/jam/exceptions/paseto.py +0 -0
  35. {jamlib-3.0.0b12.dev3 → jamlib-3.0.0b12.dev4}/src/jam/exceptions/plugins.py +0 -0
  36. {jamlib-3.0.0b12.dev3 → jamlib-3.0.0b12.dev4}/src/jam/exceptions/sessions.py +0 -0
  37. {jamlib-3.0.0b12.dev3 → jamlib-3.0.0b12.dev4}/src/jam/ext/__init__.py +0 -0
  38. {jamlib-3.0.0b12.dev3 → jamlib-3.0.0b12.dev4}/src/jam/ext/fastapi/__init__.py +0 -0
  39. {jamlib-3.0.0b12.dev3 → jamlib-3.0.0b12.dev4}/src/jam/ext/flask/__init__.py +0 -0
  40. {jamlib-3.0.0b12.dev3 → jamlib-3.0.0b12.dev4}/src/jam/ext/flask/extensions.py +0 -0
  41. {jamlib-3.0.0b12.dev3 → jamlib-3.0.0b12.dev4}/src/jam/ext/litestar/middleware.py +0 -0
  42. {jamlib-3.0.0b12.dev3 → jamlib-3.0.0b12.dev4}/src/jam/ext/litestar/objects.py +0 -0
  43. {jamlib-3.0.0b12.dev3 → jamlib-3.0.0b12.dev4}/src/jam/ext/starlette/__init__.py +0 -0
  44. {jamlib-3.0.0b12.dev3 → jamlib-3.0.0b12.dev4}/src/jam/ext/starlette/auth_backends.py +0 -0
  45. {jamlib-3.0.0b12.dev3 → jamlib-3.0.0b12.dev4}/src/jam/ext/starlette/value.py +0 -0
  46. {jamlib-3.0.0b12.dev3 → jamlib-3.0.0b12.dev4}/src/jam/instance.py +0 -0
  47. {jamlib-3.0.0b12.dev3 → jamlib-3.0.0b12.dev4}/src/jam/jwt/__algorithms__.py +0 -0
  48. {jamlib-3.0.0b12.dev3 → jamlib-3.0.0b12.dev4}/src/jam/jwt/__base__.py +0 -0
  49. {jamlib-3.0.0b12.dev3 → jamlib-3.0.0b12.dev4}/src/jam/jwt/__init__.py +0 -0
  50. {jamlib-3.0.0b12.dev3 → jamlib-3.0.0b12.dev4}/src/jam/jwt/__types__.py +0 -0
  51. {jamlib-3.0.0b12.dev3 → jamlib-3.0.0b12.dev4}/src/jam/jwt/lists/__abc_list_repo__.py +0 -0
  52. {jamlib-3.0.0b12.dev3 → jamlib-3.0.0b12.dev4}/src/jam/jwt/lists/__init__.py +0 -0
  53. {jamlib-3.0.0b12.dev3 → jamlib-3.0.0b12.dev4}/src/jam/jwt/lists/json.py +0 -0
  54. {jamlib-3.0.0b12.dev3 → jamlib-3.0.0b12.dev4}/src/jam/jwt/lists/redis.py +0 -0
  55. {jamlib-3.0.0b12.dev3 → jamlib-3.0.0b12.dev4}/src/jam/jwt/module.py +0 -0
  56. {jamlib-3.0.0b12.dev3 → jamlib-3.0.0b12.dev4}/src/jam/jwt/utils.py +0 -0
  57. {jamlib-3.0.0b12.dev3 → jamlib-3.0.0b12.dev4}/src/jam/logger.py +0 -0
  58. {jamlib-3.0.0b12.dev3 → jamlib-3.0.0b12.dev4}/src/jam/oauth2/__base__.py +0 -0
  59. {jamlib-3.0.0b12.dev3 → jamlib-3.0.0b12.dev4}/src/jam/oauth2/__init__.py +0 -0
  60. {jamlib-3.0.0b12.dev3 → jamlib-3.0.0b12.dev4}/src/jam/oauth2/builtin/__init__.py +0 -0
  61. {jamlib-3.0.0b12.dev3 → jamlib-3.0.0b12.dev4}/src/jam/oauth2/builtin/github.py +0 -0
  62. {jamlib-3.0.0b12.dev3 → jamlib-3.0.0b12.dev4}/src/jam/oauth2/builtin/gitlab.py +0 -0
  63. {jamlib-3.0.0b12.dev3 → jamlib-3.0.0b12.dev4}/src/jam/oauth2/builtin/google.py +0 -0
  64. {jamlib-3.0.0b12.dev3 → jamlib-3.0.0b12.dev4}/src/jam/oauth2/builtin/yandex.py +0 -0
  65. {jamlib-3.0.0b12.dev3 → jamlib-3.0.0b12.dev4}/src/jam/oauth2/client.py +0 -0
  66. {jamlib-3.0.0b12.dev3 → jamlib-3.0.0b12.dev4}/src/jam/otp/__base__.py +0 -0
  67. {jamlib-3.0.0b12.dev3 → jamlib-3.0.0b12.dev4}/src/jam/otp/__init__.py +0 -0
  68. {jamlib-3.0.0b12.dev3 → jamlib-3.0.0b12.dev4}/src/jam/otp/hotp.py +0 -0
  69. {jamlib-3.0.0b12.dev3 → jamlib-3.0.0b12.dev4}/src/jam/otp/totp.py +0 -0
  70. {jamlib-3.0.0b12.dev3 → jamlib-3.0.0b12.dev4}/src/jam/paseto/__base__.py +0 -0
  71. {jamlib-3.0.0b12.dev3 → jamlib-3.0.0b12.dev4}/src/jam/paseto/__init__.py +0 -0
  72. {jamlib-3.0.0b12.dev3 → jamlib-3.0.0b12.dev4}/src/jam/paseto/utils.py +0 -0
  73. {jamlib-3.0.0b12.dev3 → jamlib-3.0.0b12.dev4}/src/jam/paseto/v1.py +0 -0
  74. {jamlib-3.0.0b12.dev3 → jamlib-3.0.0b12.dev4}/src/jam/paseto/v2.py +0 -0
  75. {jamlib-3.0.0b12.dev3 → jamlib-3.0.0b12.dev4}/src/jam/paseto/v3.py +0 -0
  76. {jamlib-3.0.0b12.dev3 → jamlib-3.0.0b12.dev4}/src/jam/paseto/v4.py +0 -0
  77. {jamlib-3.0.0b12.dev3 → jamlib-3.0.0b12.dev4}/src/jam/py.typed +0 -0
  78. {jamlib-3.0.0b12.dev3 → jamlib-3.0.0b12.dev4}/src/jam/sessions/__base__.py +0 -0
  79. {jamlib-3.0.0b12.dev3 → jamlib-3.0.0b12.dev4}/src/jam/sessions/__init__.py +0 -0
  80. {jamlib-3.0.0b12.dev3 → jamlib-3.0.0b12.dev4}/src/jam/sessions/json.py +0 -0
  81. {jamlib-3.0.0b12.dev3 → jamlib-3.0.0b12.dev4}/src/jam/sessions/redis.py +0 -0
  82. {jamlib-3.0.0b12.dev3 → jamlib-3.0.0b12.dev4}/src/jam/tests/__init__.py +0 -0
  83. {jamlib-3.0.0b12.dev3 → jamlib-3.0.0b12.dev4}/src/jam/tests/clients.py +0 -0
  84. {jamlib-3.0.0b12.dev3 → jamlib-3.0.0b12.dev4}/src/jam/tests/fakers.py +0 -0
  85. {jamlib-3.0.0b12.dev3 → jamlib-3.0.0b12.dev4}/src/jam/utils/__init__.py +0 -0
  86. {jamlib-3.0.0b12.dev3 → jamlib-3.0.0b12.dev4}/src/jam/utils/aes.py +0 -0
  87. {jamlib-3.0.0b12.dev3 → jamlib-3.0.0b12.dev4}/src/jam/utils/await_maybe.py +0 -0
  88. {jamlib-3.0.0b12.dev3 → jamlib-3.0.0b12.dev4}/src/jam/utils/basic_auth.py +0 -0
  89. {jamlib-3.0.0b12.dev3 → jamlib-3.0.0b12.dev4}/src/jam/utils/config_maker.py +0 -0
  90. {jamlib-3.0.0b12.dev3 → jamlib-3.0.0b12.dev4}/src/jam/utils/ed.py +0 -0
  91. {jamlib-3.0.0b12.dev3 → jamlib-3.0.0b12.dev4}/src/jam/utils/otp_keys.py +0 -0
  92. {jamlib-3.0.0b12.dev3 → jamlib-3.0.0b12.dev4}/src/jam/utils/rsa.py +0 -0
  93. {jamlib-3.0.0b12.dev3 → jamlib-3.0.0b12.dev4}/src/jam/utils/salt_hash.py +0 -0
  94. {jamlib-3.0.0b12.dev3 → jamlib-3.0.0b12.dev4}/src/jam/utils/symmetric.py +0 -0
  95. {jamlib-3.0.0b12.dev3 → jamlib-3.0.0b12.dev4}/src/jam/utils/xchacha20poly1305.py +0 -0
  96. {jamlib-3.0.0b12.dev3 → jamlib-3.0.0b12.dev4}/src/jam/utils/xor.py +0 -0
  97. {jamlib-3.0.0b12.dev3 → jamlib-3.0.0b12.dev4}/src/jamlib.egg-info/SOURCES.txt +0 -0
  98. {jamlib-3.0.0b12.dev3 → jamlib-3.0.0b12.dev4}/src/jamlib.egg-info/dependency_links.txt +0 -0
  99. {jamlib-3.0.0b12.dev3 → jamlib-3.0.0b12.dev4}/src/jamlib.egg-info/requires.txt +0 -0
  100. {jamlib-3.0.0b12.dev3 → jamlib-3.0.0b12.dev4}/src/jamlib.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: jamlib
3
- Version: 3.0.0b12.dev3
3
+ Version: 3.0.0b12.dev4
4
4
  Summary: Simple and universal library for authorization.
5
5
  Author-email: Makridenko Adrian <adrianmakridenko@duck.com>, Ksenia Travnikova <kseniatravnikova@duck.com>
6
6
  License: Apache-2.0
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "jamlib"
3
- version = "3.0.0b12.dev3"
3
+ version = "3.0.0b12.dev4"
4
4
  description = "Simple and universal library for authorization."
5
5
  authors = [
6
6
  {name = "Makridenko Adrian",email = "adrianmakridenko@duck.com"},
@@ -12,5 +12,5 @@ from jam.encoders import JsonEncoder
12
12
  from jam.instance import Jam
13
13
 
14
14
 
15
- __version__ = "3.0.0b12.dev3"
15
+ __version__ = "3.0.0b12.dev4"
16
16
  __all__ = ["Jam", "JsonEncoder", "BaseJam", "BaseEncoder"]
@@ -16,7 +16,8 @@ from .plugins import (
16
16
  BasePlugin,
17
17
  JamJWTPlugin,
18
18
  JamSessionPlugin,
19
- JamPASETOPlugin
19
+ JamPASETOPlugin,
20
+ JamOAuth2Plugin,
20
21
  )
21
22
 
22
23
  __all__ = [
@@ -27,4 +28,5 @@ __all__ = [
27
28
  "JamJWTPlugin",
28
29
  "JamSessionPlugin",
29
30
  "JamPASETOPlugin",
31
+ "JamOAuth2Plugin",
30
32
  ]
@@ -17,6 +17,7 @@ from jam.ext.litestar.middleware import (
17
17
  )
18
18
  from jam.ext.litestar.objects import BaseUser
19
19
  from jam.jwt import JWT
20
+ from jam.oauth2 import create_instance as create_oauth2
20
21
  from jam.paseto import create_instance as create_paseto
21
22
  from jam.utils.config_maker import GENERIC_POINTER, __config_maker__
22
23
 
@@ -109,3 +110,37 @@ class JamPASETOPlugin(BasePlugin):
109
110
  _MIDDLEWARE = PASETOMiddleware
110
111
  _DI_KEY = "paseto"
111
112
  _CONFIG_KEY = "paseto"
113
+
114
+
115
+ class JamOAuth2Plugin(BasePlugin):
116
+ """OAuth2 plugin."""
117
+
118
+ MODULE = staticmethod(create_oauth2)
119
+ _DI_KEY = "oauth2"
120
+ _CONFIG_KEY = "oauth2"
121
+
122
+ def __init__(
123
+ self,
124
+ config: str | dict[str, Any] | None = None,
125
+ pointer: str = GENERIC_POINTER,
126
+ **kwargs,
127
+ ) -> None:
128
+ """Initialize the OAuth2 plugin.
129
+
130
+ Args:
131
+ config (str | dict[str, Any] | None): The configuration for the OAuth2 plugin.
132
+ pointer (str): The pointer to the configuration in the app config.
133
+ **kwargs: Additional keyword arguments.
134
+ """
135
+ _config: dict[str, Any] | None = (
136
+ __config_maker__(config, pointer) if config else None
137
+ )
138
+
139
+ params = _config.pop(self._CONFIG_KEY) if _config else kwargs
140
+ self._setup_config(params)
141
+
142
+ def on_app_init(self, app_config: AppConfig) -> AppConfig: # noqa
143
+ app_config.dependencies[self._DI_KEY] = Provide(
144
+ lambda: self._auth, sync_to_thread=True
145
+ )
146
+ return app_config
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: jamlib
3
- Version: 3.0.0b12.dev3
3
+ Version: 3.0.0b12.dev4
4
4
  Summary: Simple and universal library for authorization.
5
5
  Author-email: Makridenko Adrian <adrianmakridenko@duck.com>, Ksenia Travnikova <kseniatravnikova@duck.com>
6
6
  License: Apache-2.0
File without changes
File without changes