diff options
Diffstat (limited to 'components/login')
| -rw-r--r-- | components/login/login-form.tsx | 40 |
1 files changed, 20 insertions, 20 deletions
diff --git a/components/login/login-form.tsx b/components/login/login-form.tsx index 0e047cc7..36687096 100644 --- a/components/login/login-form.tsx +++ b/components/login/login-form.tsx @@ -281,13 +281,13 @@ export function LoginForm() { if (result.success) { setMfaCountdown(60); toast({ - title: '이메일 인증번호 전송', - description: `${targetEmail}로 인증번호가 전송되었습니다.`, + title: t('emailOtpSentTitle'), + description: t('emailOtpSentTo', { email: targetEmail }), }); } else { toast({ title: t('errorTitle'), - description: result.error || '이메일 전송에 실패했습니다.', + description: result.error || t('emailOtpSendFailed'), variant: 'destructive', }); } @@ -295,7 +295,7 @@ export function LoginForm() { console.error('Email OTP send error:', error); toast({ title: t('errorTitle'), - description: '이메일 전송 중 오류가 발생했습니다.', + description: t('emailOtpSendError'), variant: 'destructive', }); } finally { @@ -398,7 +398,7 @@ export function LoginForm() { if (!emailInput) { toast({ title: t('errorTitle'), - description: '이메일을 입력해주세요.', + description: t('pleaseEnterEmail'), variant: 'destructive', }); return; @@ -435,8 +435,8 @@ export function LoginForm() { setShowMfaForm(true); toast({ - title: '이메일 인증', - description: `${emailInput}로 인증번호가 전송되었습니다.`, + title: t('emailVerification'), + description: t('emailOtpSentTo', { email: emailInput }), }); } else { // 일반 이메일: 패스워드 입력 필요 @@ -445,8 +445,8 @@ export function LoginForm() { setShowPasswordInput(true); toast({ - title: '패스워드 입력', - description: '패스워드를 입력해주세요.', + title: t('passwordInput'), + description: t('pleaseEnterPassword'), }); } } catch (error: unknown) { @@ -454,7 +454,7 @@ export function LoginForm() { toast({ title: t('errorTitle'), - description: '이메일 확인 중 오류가 발생했습니다.', + description: t('emailVerificationError'), variant: 'destructive', }); } finally { @@ -469,7 +469,7 @@ export function LoginForm() { if (!password) { toast({ title: t('errorTitle'), - description: '패스워드를 입력해주세요.', + description: t('pleaseEnterPassword'), variant: 'destructive', }); return; @@ -736,19 +736,19 @@ export function LoginForm() { {mfaType === 'email' ? '📧' : '🔐'} </div> <h1 className="text-2xl font-bold"> - {mfaType === 'email' ? '이메일 인증' : t('smsVerification')} + {mfaType === 'email' ? t('emailVerification') : t('smsVerification')} </h1> <p className="text-sm text-muted-foreground mt-2"> {selectedOtpUser ? t('firstAuthCompleteForSgips', { name: selectedOtpUser.name, email: mfaUserEmail }) : mfaType === 'email' - ? `${mfaUserEmail}로 인증번호가 전송되었습니다.` + ? t('emailOtpSentTo', { email: mfaUserEmail }) : t('firstAuthCompleteFor', { email: mfaUserEmail }) } </p> <p className="text-xs text-muted-foreground mt-1"> - {mfaType === 'email' - ? '이메일에서 받은 6자리 인증번호를 입력해주세요.' + {mfaType === 'email' + ? t('enterSixDigitEmailCode') : t('enterSixDigitCodeInstructions')} </p> </> @@ -814,7 +814,7 @@ export function LoginForm() { variant="samsung" disabled={isFirstAuthLoading || !emailInput} > - {isFirstAuthLoading ? t('authenticating') : '다음'} + {isFirstAuthLoading ? t('authenticating') : t('next')} </Button> </form> ) : ( @@ -836,7 +836,7 @@ export function LoginForm() { {/* 이메일 표시 */} <div className="bg-gray-50 p-3 rounded-lg"> - <p className="text-sm text-gray-600 mb-1">로그인 이메일</p> + <p className="text-sm text-gray-600 mb-1">{t('loginEmail')}</p> <p className="text-sm font-medium text-gray-900">{emailInput}</p> </div> @@ -958,8 +958,8 @@ export function LoginForm() { {t('resendCode')} </h3> <p className="text-xs text-gray-600 mb-3"> - {mfaType === 'email' - ? '이메일을 받지 못하셨나요?' + {mfaType === 'email' + ? t('didNotReceiveEmail') : t('didNotReceiveCode')} </p> <Button @@ -981,7 +981,7 @@ export function LoginForm() { ) : mfaCountdown > 0 ? ( t('resendAvailable', { seconds: mfaCountdown }) ) : ( - mfaType === 'email' ? '인증번호 재전송' : t('resendCode') + mfaType === 'email' ? t('resendEmailOtp') : t('resendCode') )} </Button> </div> |
