From f7d46a4cecddb6b51497512e17c41b10ef4d2db2 Mon Sep 17 00:00:00 2001 From: Borislav Pantaleev Date: Thu, 29 May 2025 00:10:05 +0300 Subject: [PATCH] bring back handleUsernameChange --- src/pages/LoginPage.tsx | 21 ++++++++++++++++++++- 1 file changed, 20 insertions(+), 1 deletion(-) diff --git a/src/pages/LoginPage.tsx b/src/pages/LoginPage.tsx index a485bc8..6acb02f 100644 --- a/src/pages/LoginPage.tsx +++ b/src/pages/LoginPage.tsx @@ -138,6 +138,25 @@ const LoginPage = () => { const [serverVersion, setServerVersion] = useState(""); const [matrixVersions, setMatrixVersions] = useState(""); + const handleUsernameChange = () => { + if (formData.base_url || allowSingleBaseUrl) { + return; + } + // check if username is a full qualified userId then set base_url accordingly + const domain = splitMxid(formData.username)?.domain; + if (domain) { + getWellKnownUrl(domain).then(url => { + if (allowAnyBaseUrl || (allowMultipleBaseUrls && restrictBaseUrl.includes(url))) { + form.setValue("base_url", url, { + shouldValidate: true, + shouldDirty: true, + }); + checkServerInfo(url); + } + }); + } + }; + const checkServerInfo = (url: string) => { if (!isValidBaseUrl(url)) return; @@ -231,7 +250,7 @@ const LoginPage = () => { source="username" label="ra.auth.username" autoComplete="username" - onBlur={handleBaseUrlBlur} + onBlur={handleUsernameChange} resettable validate={required()} {...(loading || !supportPassAuth ? { disabled: true } : {})}