feat!: add telegram auth and async refactor

- Removed "/schedule/update-download-url" endpoint, this mechanism was replaced by Yandex Cloud FaaS. Ура :)
- Improved schedule caching mechanism.
- Added Telegram WebApp authentication support.
- Reworked endpoints responses and errors mechanism.
- Refactored application state management.
- Make synchronous database operations, middlewares and extractors to asynchronous.
- Made user password field optional to support multiple auth methods.
- Renamed users table column "version" to "android_version" and made it nullable.
This commit is contained in:
2025-06-08 01:29:21 +04:00
parent 6a106a366c
commit e64011ba16
66 changed files with 1842 additions and 1243 deletions

View File

@@ -21,12 +21,13 @@ diesel::table! {
users (id) {
id -> Text,
username -> Text,
password -> Text,
password -> Nullable<Text>,
vk_id -> Nullable<Int4>,
access_token -> Text,
group -> Text,
access_token -> Nullable<Text>,
group -> Nullable<Text>,
role -> UserRole,
version -> Text,
android_version -> Nullable<Text>,
telegram_id -> Nullable<Int8>,
}
}