add ruff format, ruff check, time_picker, project structure and imports reorganized
This commit is contained in:
@@ -1,4 +1,3 @@
|
||||
from babel.support import LazyProxy
|
||||
from pydantic import computed_field, model_validator
|
||||
from pydantic_settings import BaseSettings, SettingsConfigDict
|
||||
from typing import Literal, Self
|
||||
@@ -6,11 +5,8 @@ import warnings
|
||||
|
||||
|
||||
class Config(BaseSettings):
|
||||
|
||||
model_config = SettingsConfigDict(
|
||||
env_file = ".env",
|
||||
env_ignore_empty = True,
|
||||
extra = "ignore"
|
||||
env_file=".env", env_ignore_empty=True, extra="ignore"
|
||||
)
|
||||
|
||||
SECRET_KEY: str = "changethis"
|
||||
@@ -35,22 +31,24 @@ class Config(BaseSettings):
|
||||
def API_DOMAIN(self) -> str:
|
||||
if self.ENVIRONMENT == "local":
|
||||
return self.DOMAIN
|
||||
return f'api.{self.DOMAIN}'
|
||||
|
||||
@computed_field
|
||||
return f"api.{self.DOMAIN}"
|
||||
|
||||
@computed_field
|
||||
@property
|
||||
def API_URL(self) -> str:
|
||||
if self.USE_NGROK:
|
||||
return self.NGROK_URL
|
||||
return f"{"http" if self.ENVIRONMENT == "local" else "https"}://{self.API_DOMAIN}"
|
||||
|
||||
return (
|
||||
f"{'http' if self.ENVIRONMENT == 'local' else 'https'}://{self.API_DOMAIN}"
|
||||
)
|
||||
|
||||
API_PORT: int = 8000
|
||||
|
||||
TELEGRAM_BOT_TOKEN: str = "changethis"
|
||||
|
||||
ADMIN_TELEGRAM_ID: int
|
||||
|
||||
USE_NGROK : bool = False
|
||||
USE_NGROK: bool = False
|
||||
NGROK_AUTH_TOKEN: str = "changethis"
|
||||
NGROK_URL: str = ""
|
||||
|
||||
@@ -59,7 +57,7 @@ class Config(BaseSettings):
|
||||
def _check_default_secret(self, var_name: str, value: str | None) -> None:
|
||||
if value == "changethis":
|
||||
message = (
|
||||
f"The value of {var_name} is \"changethis\", "
|
||||
f'The value of {var_name} is "changethis", '
|
||||
"for security, please change it, at least for deployments."
|
||||
)
|
||||
if self.ENVIRONMENT == "local":
|
||||
@@ -76,5 +74,6 @@ class Config(BaseSettings):
|
||||
self._check_default_secret("NGROK_AUTH_TOKEN", self.NGROK_AUTH_TOKEN)
|
||||
|
||||
return self
|
||||
|
||||
config = Config()
|
||||
|
||||
|
||||
config = Config()
|
||||
|
||||
Reference in New Issue
Block a user