diff --git a/apps/oneclient/frontend/src/components/overlay/AddAccountModal.tsx b/apps/oneclient/frontend/src/components/overlay/AddAccountModal.tsx index 3485251a..b493b95b 100644 --- a/apps/oneclient/frontend/src/components/overlay/AddAccountModal.tsx +++ b/apps/oneclient/frontend/src/components/overlay/AddAccountModal.tsx @@ -20,7 +20,7 @@ export function AddAccountModalButton() { const [authError, setAuthError] = useState(null); const { data: profile, isPending, mutate: login } = useCommandMut(bindings.core.openMsaLogin, { - onSuccess(data) { + onSuccess() { setAuthError(null); queryClient.invalidateQueries({ queryKey: ['getUsers'], diff --git a/apps/oneclient/frontend/src/components/overlay/SuperSecretDevOptions.tsx b/apps/oneclient/frontend/src/components/overlay/SuperSecretDevOptions.tsx index 0a4f7e4e..b99e2b92 100644 --- a/apps/oneclient/frontend/src/components/overlay/SuperSecretDevOptions.tsx +++ b/apps/oneclient/frontend/src/components/overlay/SuperSecretDevOptions.tsx @@ -1,4 +1,4 @@ -import { minecraftAuthErrors, MinecraftAuthErrorModal, Overlay, RawDebugInfo, SettingsRow, SettingsSwitch, useDebugInfo } from '@/components'; +import { MinecraftAuthErrorModal, minecraftAuthErrors, Overlay, RawDebugInfo, SettingsRow, SettingsSwitch, useDebugInfo } from '@/components'; import { useSettings } from '@/hooks/useSettings'; import { bindings } from '@/main'; import { Button } from '@onelauncher/common/components'; diff --git a/apps/oneclient/frontend/src/routes/onboarding/account.tsx b/apps/oneclient/frontend/src/routes/onboarding/account.tsx index 70bf2135..aed8540a 100644 --- a/apps/oneclient/frontend/src/routes/onboarding/account.tsx +++ b/apps/oneclient/frontend/src/routes/onboarding/account.tsx @@ -58,7 +58,7 @@ function RouteComponent() { return bindings.core.getDefaultUser(true); }); const { data: profile, isPending, mutate: login } = useCommandMut(bindings.core.openMsaLogin, { - onSuccess(data) { + onSuccess() { setAuthError(null); queryClient.invalidateQueries({ queryKey: ['getDefaultUser'], diff --git a/packages/core/src/api/tauri/commands.rs b/packages/core/src/api/tauri/commands.rs index 8c0c957d..21afff3d 100644 --- a/packages/core/src/api/tauri/commands.rs +++ b/packages/core/src/api/tauri/commands.rs @@ -666,32 +666,28 @@ impl TauriLauncherApi for TauriLauncherApiImpl { return Ok(None); } - let current_url = match win.url() { - Ok(u) => u, - Err(_) => { - tokio::time::sleep(std::time::Duration::from_millis(50)).await; - continue; - } + let Ok(current_url) = win.url() else { + tokio::time::sleep(std::time::Duration::from_millis(50)).await; + continue; }; if current_url .as_str() .starts_with("https://login.live.com/oauth20_desktop.srf") + && let Some((_, code)) = current_url.query_pairs().find(|x| x.0 == "code") { - if let Some((_, code)) = win.url()?.query_pairs().find(|x| x.0 == "code") { - win.close()?; - let value = api::credentials::finish(&code.clone(), flow) - .await - .map_err(|e| { - tracing::error!( - "[auth] open_msa_login() - credentials::finish() failed: {:?}", - e - ); + win.close()?; + let value = api::credentials::finish(code.as_ref(), flow) + .await + .map_err(|e| { + tracing::error!( + "[auth] open_msa_login() - credentials::finish() failed: {:?}", e - })?; + ); + e + })?; - return Ok(Some(value)); - } + return Ok(Some(value)); } tokio::time::sleep(std::time::Duration::from_millis(50)).await; } diff --git a/packages/core/src/store/credentials.rs b/packages/core/src/store/credentials.rs index a0f50b55..33be881b 100644 --- a/packages/core/src/store/credentials.rs +++ b/packages/core/src/store/credentials.rs @@ -38,15 +38,16 @@ impl CredentialsStore { let path = Dirs::get_auth_file().await?; let store = io::read_json::(&path).await.ok(); - if let Some(s) = store { - Ok(s) - } else { - Ok(Self { - users: HashMap::new(), - token: None, - default_user: None, - }) - } + store.map_or_else( + || { + Ok(Self { + users: HashMap::new(), + token: None, + default_user: None, + }) + }, + Ok, + ) } /// Save the current Minecraft credentials.