Skip to content

Commit 540082b

Browse files
authored
feat(experience): improve MFA button text for email/phone verification (#7795)
1 parent c9f0720 commit 540082b

File tree

19 files changed

+56
-2
lines changed

19 files changed

+56
-2
lines changed

packages/experience/src/components/Button/MfaFactorButton.tsx

Lines changed: 19 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
import { MfaFactor } from '@logto/schemas';
22
import classNames from 'classnames';
33
import { type TFuncKey } from 'i18next';
4+
import { useTranslation } from 'react-i18next';
45

56
import ArrowNext from '@/assets/icons/arrow-next.svg?react';
67
import FactorBackupCode from '@/assets/icons/factor-backup-code.svg?react';
@@ -56,8 +57,25 @@ const linkFactorDescription: Record<MfaFactor, TFuncKey> = {
5657
};
5758

5859
const MfaFactorButton = ({ factor, isBinding, isDisabled, maskedIdentifier, onClick }: Props) => {
60+
const { t } = useTranslation();
5961
const Icon = factorIcon[factor];
6062

63+
const getDescriptionForMaskedIdentifier = () => {
64+
if (!maskedIdentifier) {
65+
return null;
66+
}
67+
68+
if (factor === MfaFactor.EmailVerificationCode) {
69+
return t('mfa.send_to_email', { identifier: maskedIdentifier });
70+
}
71+
72+
if (factor === MfaFactor.PhoneVerificationCode) {
73+
return t('mfa.send_to_phone', { identifier: maskedIdentifier });
74+
}
75+
76+
return maskedIdentifier;
77+
};
78+
6179
return (
6280
<button
6381
className={classNames(
@@ -78,7 +96,7 @@ const MfaFactorButton = ({ factor, isBinding, isDisabled, maskedIdentifier, onCl
7896
</div>
7997
<div className={mfaFactorButtonStyles.description}>
8098
{maskedIdentifier ? (
81-
<span>{maskedIdentifier}</span>
99+
<span>{getDescriptionForMaskedIdentifier()}</span>
82100
) : (
83101
<DynamicT forKey={(isBinding ? linkFactorDescription : factorDescription)[factor]} />
84102
)}

packages/phrases-experience/src/locales/ar/mfa.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,8 @@ const mfa = {
1616
verify_backup_code_description: 'الصق رمز النسخ الاحتياطي الذي حفظته',
1717
verify_email_verification_code_description: 'أدخل الرمز المرسل إلى بريدك الإلكتروني',
1818
verify_phone_verification_code_description: 'أدخل الرمز المرسل إلى هاتفك',
19+
send_to_email: 'إرسال إلى {{identifier}}',
20+
send_to_phone: 'إرسال إلى {{identifier}}',
1921
add_mfa_factors: 'إضافة التحقق من خطوتين',
2022
add_mfa_description: 'تم تمكين التحقق من خطوتين. حدد طريقة التحقق الثانية لتسجيل الدخول الآمن.',
2123
add_another_mfa_factor: 'إضافة تحقق آخر من خطوتين',

packages/phrases-experience/src/locales/de/mfa.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,8 @@ const mfa = {
1616
verify_backup_code_description: 'Fügen Sie den gespeicherten Backup-Code ein',
1717
verify_email_verification_code_description: 'Geben Sie den an Ihre E-Mail gesendeten Code ein',
1818
verify_phone_verification_code_description: 'Geben Sie den an Ihr Telefon gesendeten Code ein',
19+
send_to_email: 'Senden an {{identifier}}',
20+
send_to_phone: 'Senden an {{identifier}}',
1921
add_mfa_factors: '2-Schritte-Verifizierung hinzufügen',
2022
add_mfa_description:
2123
'Die Zwei-Faktor-Verifizierung ist aktiviert. Wählen Sie Ihre zweite Verifizierungsmethode für sicheres Anmelden aus.',

packages/phrases-experience/src/locales/en/mfa.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,8 @@ const mfa = {
1616
verify_backup_code_description: 'Paste the backup code you saved',
1717
verify_email_verification_code_description: 'Enter the code sent to your email',
1818
verify_phone_verification_code_description: 'Enter the code sent to your phone',
19+
send_to_email: 'Send to {{identifier}}',
20+
send_to_phone: 'Send to {{identifier}}',
1921
add_mfa_factors: 'Add 2-step verification',
2022
add_mfa_description:
2123
'Two-factor verification is enabled. Select your second verification method for secure sign-in.',

packages/phrases-experience/src/locales/es/mfa.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,8 @@ const mfa = {
1717
verify_backup_code_description: 'Pegue el código de respaldo que guardó',
1818
verify_email_verification_code_description: 'Ingrese el código enviado a su correo electrónico',
1919
verify_phone_verification_code_description: 'Ingrese el código enviado a su teléfono',
20+
send_to_email: 'Enviar a {{identifier}}',
21+
send_to_phone: 'Enviar a {{identifier}}',
2022
add_mfa_factors: 'Agregar verificación de 2 pasos',
2123
add_mfa_description:
2224
'La verificación de dos factores está habilitada. Seleccione su segundo método de verificación para iniciar sesión de forma segura.',

packages/phrases-experience/src/locales/fr/mfa.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,8 @@ const mfa = {
1616
verify_backup_code_description: 'Collez le code de sauvegarde que vous avez enregistré',
1717
verify_email_verification_code_description: 'Saisissez le code envoyé à votre e-mail',
1818
verify_phone_verification_code_description: 'Saisissez le code envoyé à votre téléphone',
19+
send_to_email: 'Envoyer à {{identifier}}',
20+
send_to_phone: 'Envoyer à {{identifier}}',
1921
add_mfa_factors: 'Ajouter la vérification en deux étapes',
2022
add_mfa_description:
2123
'La vérification en deux étapes est activée. Sélectionnez votre deuxième méthode de vérification pour une connexion sécurisée.',

packages/phrases-experience/src/locales/it/mfa.ts

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,9 @@ const mfa = {
1515
verify_webauthn_description: 'Verifica il tuo dispositivo o hardware USB',
1616
verify_backup_code_description: 'Incolla il codice di backup che hai salvato',
1717
verify_email_verification_code_description: 'Inserisci il codice inviato alla tua email',
18-
verify_phone_verification_code_description: 'Inserisci il codice inviato al tuo telefono',
18+
verify_phone_verification_code_description: 'Inserisci il codice inviato al tuo telefone',
19+
send_to_email: 'Invia a {{identifier}}',
20+
send_to_phone: 'Invia a {{identifier}}',
1921
add_mfa_factors: 'Aggiungi la verifica in due passaggi',
2022
add_mfa_description:
2123
'La verifica in due passaggi è abilitata. Seleziona il tuo secondo metodo di verifica per un accesso sicuro.',

packages/phrases-experience/src/locales/ja/mfa.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,8 @@ const mfa = {
1616
verify_backup_code_description: '保存したバックアップコードを貼り付け',
1717
verify_email_verification_code_description: 'メールに送信されたコードを入力',
1818
verify_phone_verification_code_description: '電話に送信されたコードを入力',
19+
send_to_email: '{{identifier}} に送信',
20+
send_to_phone: '{{identifier}} に送信',
1921
add_mfa_factors: '2段階認証を追加',
2022
add_mfa_description:
2123
'2段階認証が有効になっています。安全なサインインのために第二の認証方法を選択してください。',

packages/phrases-experience/src/locales/ko/mfa.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,8 @@ const mfa = {
1616
verify_backup_code_description: '저장한 백업 코드 붙여넣기',
1717
verify_email_verification_code_description: '이메일로 전송된 코드 입력',
1818
verify_phone_verification_code_description: '휴대폰으로 전송된 코드 입력',
19+
send_to_email: '{{identifier}}로 전송',
20+
send_to_phone: '{{identifier}}로 전송',
1921
add_mfa_factors: '2단계 인증 추가',
2022
add_mfa_description:
2123
'2단계 인증이 활성화되었습니다. 안전한 로그인을 위해 두 번째 인증 방법을 선택하세요.',

packages/phrases-experience/src/locales/pl-pl/mfa.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,8 @@ const mfa = {
1616
verify_backup_code_description: 'Wklej kod zapasowy, który zapisałeś',
1717
verify_email_verification_code_description: 'Wprowadź kod wysłany na twój e-mail',
1818
verify_phone_verification_code_description: 'Wprowadź kod wysłany na twój telefon',
19+
send_to_email: 'Wyślij do {{identifier}}',
20+
send_to_phone: 'Wyślij do {{identifier}}',
1921
add_mfa_factors: 'Dodaj weryfikację dwuetapową',
2022
add_mfa_description:
2123
'Weryfikacja dwuetapowa jest włączona. Wybierz swój drugi sposób weryfikacji dla bezpiecznego logowania.',

0 commit comments

Comments
 (0)