Merge branch 'dev' into feature/install-page

# Conflicts:
#	backend/bot/app/web/admin_api_impl/settings.py
#	backend/bot/app/web/webapp/cache_helpers.py
#	frontend/src/admin/sections/SettingsSection.svelte
#	tests/test_admin_settings_manifest_i18n.py
This commit is contained in:
3252a8
2026-05-22 22:57:24 +03:00
31 changed files with 2093 additions and 219 deletions
+12 -3
View File
@@ -145,6 +145,12 @@ export function createAccountStore({
clearPasswordCooldownTimer();
}
function getTelegramOAuthClientId() {
const value =
typeof telegramOAuthClientId === "function" ? telegramOAuthClientId() : telegramOAuthClientId;
return Number(value || 0);
}
function closeSetPasswordDialog() {
state.update((s) => ({
...s,
@@ -318,19 +324,21 @@ export function createAccountStore({
}
}
async function linkTelegramAccount(getTelegramMiniAppInitData) {
async function linkTelegramAccount(getTelegramMiniAppInitData = () => "") {
const s = get(state);
if (s.linkTelegramBusy) return;
const readTelegramMiniAppInitData =
typeof getTelegramMiniAppInitData === "function" ? getTelegramMiniAppInitData : () => "";
const isTelegramMiniAppAttempt = telegramSdk.hasLaunchParams();
if (isTelegramMiniAppAttempt) {
await telegramSdk.ensureForAction();
}
const initData = getTelegramMiniAppInitData();
const initData = readTelegramMiniAppInitData();
if (initData) {
await linkTelegramAccountWithPayload({ init_data: initData });
return;
}
if (!telegramOAuthClientId) {
if (!getTelegramOAuthClientId()) {
showToast(t("wa_auth_telegram_not_configured"));
return;
}
@@ -362,6 +370,7 @@ export function createAccountStore({
}
async function logout() {
if (telegramSdk.hasLaunchParams()) return;
markManualLogout();
clearToken();
try {
+5 -5
View File
@@ -61,11 +61,6 @@ export async function runWebappBoot({
);
}
if (isManuallyLoggedOut()) {
showLogin();
return;
}
const widgetAuthData = readTelegramLoginWidgetAuthData();
if (widgetAuthData && (await finalizeTelegramAuth(widgetAuthData, "auth_data"))) return;
@@ -78,6 +73,11 @@ export async function runWebappBoot({
}
}
if (isManuallyLoggedOut()) {
showLogin();
return;
}
if (getToken() || getCsrfToken()) {
try {
await loadData();