diff --git a/apps/web/src/components/screens/login/form.tsx b/apps/web/src/components/screens/login/form.tsx index ff76307..c66d5e6 100644 --- a/apps/web/src/components/screens/login/form.tsx +++ b/apps/web/src/components/screens/login/form.tsx @@ -190,11 +190,9 @@ export default function Form() { [save], ); - const isTauriEnv = isTauri(); - return (
- {isTauriEnv ? ( + {isTauri() ? ( <> { diff --git a/apps/web/src/routes/settings/security.tsx b/apps/web/src/routes/settings/security.tsx index 15a6155..86c580e 100644 --- a/apps/web/src/routes/settings/security.tsx +++ b/apps/web/src/routes/settings/security.tsx @@ -46,6 +46,7 @@ function QrCodeLogin() { const [qrCodeBase64, setQrCodeBase64] = useState( undefined, ); + const [connectionString, setConnectionString] = useState(null); useEffect(() => { load("private_key").then((value) => { @@ -58,15 +59,25 @@ function QrCodeLogin() { setUserId(value); } }); + load("ttp_url") + .then((value) => { + if (value) { + const url = new URL(value); + setConnectionString(`@${url.host}`); + } else { + setConnectionString(""); + } + }) + .catch(() => setConnectionString("")); }, [load]); useEffect(() => { - if (userId && privateKey) { - generateQR(`tensamin://tu::${userId}::${privateKey}`).then( - setQrCodeBase64, - ); + if (userId && privateKey && connectionString !== null) { + generateQR( + `tensamin://tu::${userId}${connectionString}::${privateKey}`, + ).then(setQrCodeBase64); } - }, [userId, privateKey]); + }, [userId, privateKey, connectionString]); const [qrCodeVisible, setQrCodeVisible] = useState(false);