diff --git a/src/lib/components/auth/MfaChallenge.svelte b/src/lib/components/auth/MfaChallenge.svelte index d0d5ed38a3..52de63092a 100644 --- a/src/lib/components/auth/MfaChallenge.svelte +++ b/src/lib/components/auth/MfaChallenge.svelte @@ -3,6 +3,7 @@ import { mfaRequest, type MfaChallenge } from '$lib/apis/auths/mfa'; import MfaRecoveryCodes from './MfaRecoveryCodes.svelte'; import ChevronRight from '$lib/components/icons/ChevronRight.svelte'; + import Spinner from '$lib/components/common/Spinner.svelte'; const i18n: any = getContext('i18n'); export let challenge: MfaChallenge; export let onComplete: (result: any) => void | Promise; @@ -48,10 +49,10 @@ recovery } ); - code = ''; - setup = null; if (response.recovery_codes) result = response; else await onComplete(response); + code = ''; + setup = null; } } catch (e) { error = e instanceof Error ? e.message : String(e); @@ -65,10 +66,10 @@ {#if result} { + onContinue={async () => { const { recovery_codes, ...completed } = result; + await onComplete(completed); result = null; - onComplete(completed); }} /> {:else} @@ -122,7 +123,9 @@ on:click={loadSetup}>{$i18n.t('Retry setup')}{/if} {/if} -