fix: prevent popup blocker on telegram connect link

This commit is contained in:
Ruslan Bakiev
2026-02-22 08:07:03 +07:00
parent 40b5fa86f6
commit 9b38c32b3f

View File

@@ -650,6 +650,7 @@ async function loadTelegramConnectStatus() {
async function startTelegramBusinessConnect() {
if (telegramConnectBusy.value) return;
telegramConnectBusy.value = true;
const popup = process.client ? window.open("about:blank", "_blank", "noopener,noreferrer") : null;
try {
const result = await $fetch<{
ok: boolean;
@@ -660,8 +661,15 @@ async function startTelegramBusinessConnect() {
telegramConnectStatus.value = result?.status ?? "pending_link";
telegramConnectUrl.value = String(result?.connectUrl ?? "").trim();
if (telegramConnectUrl.value && process.client) {
window.open(telegramConnectUrl.value, "_blank", "noopener,noreferrer");
if (popup) {
popup.location.href = telegramConnectUrl.value;
} else {
window.open(telegramConnectUrl.value, "_blank", "noopener,noreferrer");
}
}
} catch {
popup?.close();
telegramConnectStatus.value = "not_connected";
} finally {
telegramConnectBusy.value = false;
await loadTelegramConnectStatus();