loadRecoveryCodes(); } /** * Generate new recovery codes for the user. */ public function regenerateRecoveryCodes(GenerateNewRecoveryCodes $generateNewRecoveryCodes): void { $generateNewRecoveryCodes(auth()->user()); $this->loadRecoveryCodes(); } /** * Load the recovery codes for the user. */ private function loadRecoveryCodes(): void { $user = auth()->user(); if ($user->hasEnabledTwoFactorAuthentication() && $user->two_factor_recovery_codes) { try { $this->recoveryCodes = json_decode(decrypt($user->two_factor_recovery_codes), true); } catch (Exception) { $this->addError('recoveryCodes', 'Failed to load recovery codes'); $this->recoveryCodes = []; } } } }; ?>

{{ __('2FA Recovery Codes') }}

{{ __('Recovery codes let you regain access if you lose your 2FA device. Store them in a secure password manager.') }}

@if (filled($recoveryCodes)) @endif
@error('recoveryCodes') {{ $message }} @enderror @if (filled($recoveryCodes))
@foreach ($recoveryCodes as $code)
{{ $code }}
@endforeach

{{ __('Each recovery code can be used once to access your account and will be removed after use. If you need more, click Regenerate Codes above.') }}

@endif