belgie-core 0.3.0__py3-none-any.whl → 0.4.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.
@@ -93,7 +93,7 @@ class Belgie[
93
93
  adapter: Database adapter for persistence operations
94
94
  session_manager: Session manager instance for session operations
95
95
  providers: Dictionary of registered OAuth providers keyed by provider_id
96
- router: FastAPI router with authentication endpoints (cached property)
96
+ router: FastAPI router with authentication endpoints
97
97
 
98
98
  Example:
99
99
  >>> from belgie_core import Belgie, BelgieSettings
@@ -191,6 +191,7 @@ class Belgie[
191
191
 
192
192
  return instance
193
193
 
194
+ @property
194
195
  def router(self) -> APIRouter:
195
196
  """FastAPI router with all provider routes.
196
197
 
@@ -17,6 +17,11 @@ class ProviderSettings(BaseSettings):
17
17
  Subclasses must implement __call__ to construct their provider instance.
18
18
  """
19
19
 
20
+ model_config = SettingsConfigDict(
21
+ env_file=".env",
22
+ extra="ignore",
23
+ )
24
+
20
25
  client_id: str
21
26
  client_secret: SecretStr
22
27
  redirect_uri: str
@@ -52,14 +57,22 @@ class ProviderSettings(BaseSettings):
52
57
 
53
58
 
54
59
  class SessionSettings(BaseSettings):
55
- model_config = SettingsConfigDict(env_prefix="BELGIE_SESSION_")
60
+ model_config = SettingsConfigDict(
61
+ env_prefix="BELGIE_SESSION_",
62
+ env_file=".env",
63
+ extra="ignore",
64
+ )
56
65
 
57
66
  max_age: int = Field(default=604800)
58
67
  update_age: int = Field(default=86400)
59
68
 
60
69
 
61
70
  class CookieSettings(BaseSettings):
62
- model_config = SettingsConfigDict(env_prefix="BELGIE_COOKIE_")
71
+ model_config = SettingsConfigDict(
72
+ env_prefix="BELGIE_COOKIE_",
73
+ env_file=".env",
74
+ extra="ignore",
75
+ )
63
76
 
64
77
  name: str = Field(default="belgie_session")
65
78
  secure: bool = Field(default=True)
@@ -69,7 +82,11 @@ class CookieSettings(BaseSettings):
69
82
 
70
83
 
71
84
  class URLSettings(BaseSettings):
72
- model_config = SettingsConfigDict(env_prefix="BELGIE_URLS_")
85
+ model_config = SettingsConfigDict(
86
+ env_prefix="BELGIE_URLS_",
87
+ env_file=".env",
88
+ extra="ignore",
89
+ )
73
90
 
74
91
  signin_redirect: str = Field(default="/dashboard")
75
92
  signout_redirect: str = Field(default="/")
@@ -81,6 +98,7 @@ class BelgieSettings(BaseSettings):
81
98
  env_file=".env",
82
99
  env_file_encoding="utf-8",
83
100
  case_sensitive=False,
101
+ extra="ignore",
84
102
  )
85
103
 
86
104
  secret: str
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: belgie-core
3
- Version: 0.3.0
3
+ Version: 0.4.0
4
4
  Summary: Core authentication logic for Belgie
5
5
  Author: Matt LeMay
6
6
  Author-email: Matt LeMay <mplemay@users.noreply.github.com>
@@ -1,11 +1,11 @@
1
1
  belgie_core/__init__.py,sha256=jiBO0li9yKCVFQq8mzvd3USpcY0q8trFuzrAoGB4niY,1704
2
2
  belgie_core/core/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
3
- belgie_core/core/belgie.py,sha256=ohcZLzH9_723xrVrEQYJQsDUpfPnL_8S69Q60WTA4uo,14420
3
+ belgie_core/core/belgie.py,sha256=hXy2Rfjkfz5DB3MlOlgJimHfrKUyICBYRzZxeyMBKV0,14416
4
4
  belgie_core/core/client.py,sha256=z-3P6u9SjPG9u6bjtxM0panYlN7mliWLeXb_ENEjbUw,8959
5
5
  belgie_core/core/exceptions.py,sha256=KF_pBbw-KJcrn5S6qCTa55YMcwRLETc5vEwXl4EmGwk,340
6
6
  belgie_core/core/hooks.py,sha256=mjksSE5YxjD-0WIn_mGIOl6DA_3socxoN1IpIrzo6uU,2993
7
7
  belgie_core/core/protocols.py,sha256=k-39EXCnve_qzZTIfLBrd3OXhhpXgRX8Gb2eXT4UtZA,509
8
- belgie_core/core/settings.py,sha256=xUrgmN5_VHyCu8EaXdOplll8blIndAAP6tlO8rdBhKI,3262
8
+ belgie_core/core/settings.py,sha256=hDiSIdUwoJfqUEbw_vylC5W6MxzSFV_Iq2VVYwMBa8c,3573
9
9
  belgie_core/providers/__init__.py,sha256=KqSIIXIvBK_luyZ58MXPEqaxOpeCYwemnd4SK-Q76iI,318
10
10
  belgie_core/providers/google.py,sha256=twG1nBi6tsps-eAYOC3X8FvZePPacsbF9Ky6R02GWK8,11411
11
11
  belgie_core/providers/protocols.py,sha256=WzHtxtqWi1nQusvgSlO3Emia4KE2ezCRNzP_OHG2yS8,1314
@@ -15,6 +15,6 @@ belgie_core/session/manager.py,sha256=XLUyihJTpvcRmsPa2Nidc2GuxyNB7cVhHqPABuZvcX
15
15
  belgie_core/utils/__init__.py,sha256=dUwKCAKVB2Mr806Ib51uSuafdLa4FzCMGstrzWwoioA,259
16
16
  belgie_core/utils/crypto.py,sha256=mtV3HNIWu1hDw7JaKqUWMdWi6_x2crEY5sg49AoUL3U,174
17
17
  belgie_core/utils/scopes.py,sha256=OIdI039U7uB9w7Y91QNuY05PBSrtcZz0ruqIY0Fvyik,1598
18
- belgie_core-0.3.0.dist-info/WHEEL,sha256=iHtWm8nRfs0VRdCYVXocAWFW8ppjHL-uTJkAdZJKOBM,80
19
- belgie_core-0.3.0.dist-info/METADATA,sha256=6Lku_ofd5KH5fpX3JpZKyDEw1zJcGjn-OMjh0ESGGsk,333
20
- belgie_core-0.3.0.dist-info/RECORD,,
18
+ belgie_core-0.4.0.dist-info/WHEEL,sha256=iHtWm8nRfs0VRdCYVXocAWFW8ppjHL-uTJkAdZJKOBM,80
19
+ belgie_core-0.4.0.dist-info/METADATA,sha256=xI1FOMmbtaHCkfg6jSu1J_ItcGXgstFxoejlEnMqaUY,333
20
+ belgie_core-0.4.0.dist-info/RECORD,,