fix: prevent popup blocker on telegram connect link
This commit is contained in:
@@ -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();
|
||||
|
||||
Reference in New Issue
Block a user