Skip to content

Commit a5146ec

Browse files
committed
chore: add i18n translations for login handler error messages
1 parent b8b5ed3 commit a5146ec

File tree

5 files changed

+70
-23
lines changed

5 files changed

+70
-23
lines changed

.env.example

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,9 @@ DIFF_NUMS=3
5252
# DATA_DIR=./data
5353
# 클라우드 배포시 보통 data 디렉토리에 쓰기 권한이 없음
5454
DATA_DIR=
55+
# update_check 결과를 Redis에 캐시(프로덕션 true 사용) (*)
5556
UPDATE_CHECK_CACHE=false
57+
# rollout 대상 여부를 clientUniqueId별로 캐시(프로덕션 true 사용) (*)
5658
ROLLOUT_CLIENT_UNIQUE_ID_CACHE=false
5759

5860
# -------------------------------

locales/en.json

Lines changed: 30 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,31 @@
11
{
2-
"Please sign in": "Please sign in",
3-
"email address": "email address",
4-
"username": "username",
5-
"password": "password",
6-
"Remember me": "Remember me",
7-
"Log in": "Log in",
8-
"hot update server": "hot update server",
9-
"Change Password": "Change Password",
10-
"Obtain": "Obtain",
11-
"old password": "old password",
12-
"new password": "new password",
13-
"please login again": "please login again",
14-
"change success": "change success",
15-
"Logout": "Logout",
16-
"Register": "Register"
17-
}
2+
"Please sign in": "Please sign in",
3+
"email address": "email address",
4+
"username": "username",
5+
"password": "password",
6+
"Remember me": "Remember me",
7+
"Log in": "Log in",
8+
"hot update server": "hot update server",
9+
"Change Password": "Change Password",
10+
"Obtain": "Obtain",
11+
"old password": "old password",
12+
"new password": "new password",
13+
"please login again": "please login again",
14+
"change success": "change success",
15+
"Logout": "Logout",
16+
"Register": "Register",
17+
"error.input_email_required": "Please enter your email address.",
18+
"error.input_password_required": "Please enter your password.",
19+
"error.invalid_credentials": "The email or password you entered is incorrect.",
20+
"error.password_retry_limit_exceeded": "Your account has been locked due to too many failed login attempts.",
21+
"error.email_already_registered": "This email is already registered. Please use a different email address.",
22+
"error.verify_code_expired": "The verification code has expired. Please request a new one.",
23+
"error.verify_code_invalid": "The verification code is incorrect. Please try again.",
24+
"error.new_password_length": "Please enter a new password between 6 and 20 characters.",
25+
"error.password_length_register": "Please enter a password between 6 and 20 characters.",
26+
"error.user_not_found": "User information could not be found.",
27+
"error.old_password_incorrect": "The current password you entered is incorrect.",
28+
"error.app_not_exists": "The app information could not be found.",
29+
"error.permission_denied_not_owner": "Permission denied. You are not the owner.",
30+
"error.email_not_exists": "The specified email address does not exist."
31+
}

locales/ko.json

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,5 +13,19 @@
1313
"please login again": "다시 로그인해주세요",
1414
"change success": "변경되었습니다",
1515
"Logout": "로그아웃",
16-
"Register": "회원가입"
16+
"Register": "회원가입",
17+
"error.input_email_required": "이메일 주소를 입력해주세요.",
18+
"error.input_password_required": "비밀번호를 입력해주세요.",
19+
"error.invalid_credentials": "이메일 또는 비밀번호가 올바르지 않습니다.",
20+
"error.password_retry_limit_exceeded": "비밀번호 오류 횟수가 제한을 초과하여 계정이 잠겼습니다.",
21+
"error.email_already_registered": "이미 등록된 이메일입니다. 다른 이메일을 사용해주세요.",
22+
"error.verify_code_expired": "인증 코드가 만료되었습니다. 다시 발급받아주세요.",
23+
"error.verify_code_invalid": "인증 코드가 올바르지 않습니다. 다시 입력해주세요.",
24+
"error.new_password_length": "새 비밀번호는 6~20자 사이로 입력해주세요.",
25+
"error.password_length_register": "비밀번호는 6~20자 사이로 입력해주세요.",
26+
"error.user_not_found": "사용자 정보를 찾을 수 없습니다.",
27+
"error.old_password_incorrect": "현재 비밀번호가 올바르지 않습니다. 다시 입력해주세요.",
28+
"error.app_not_exists": "앱 정보를 찾을 수 없습니다.",
29+
"error.permission_denied_not_owner": "권한이 없습니다. Owner 계정이 아닙니다.",
30+
"error.email_not_exists": "해당 이메일을 찾을 수 없습니다."
1731
}

locales/zh.json

Lines changed: 16 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,5 +12,20 @@
1212
"new password": "新密码",
1313
"please login again": "请重新登录",
1414
"change success": "修改成功",
15-
"Logout": "登出"
15+
"Logout": "登出",
16+
"Register": "注册",
17+
"error.input_email_required": "请您输入邮箱地址",
18+
"error.input_password_required": "请您输入密码",
19+
"error.invalid_credentials": "您输入的邮箱或密码有误",
20+
"error.password_retry_limit_exceeded": "您输入密码错误次数超过限制,帐户已经锁定",
21+
"error.email_already_registered": "该邮箱已经注册过,请更换邮箱注册",
22+
"error.verify_code_expired": "验证码已经失效,请您重新获取",
23+
"error.verify_code_invalid": "您输入的验证码不正确,请重新输入",
24+
"error.new_password_length": "请您输入6~20位长度的新密码",
25+
"error.password_length_register": "请您输入6~20位长度的密码",
26+
"error.user_not_found": "未找到用户信息",
27+
"error.old_password_incorrect": "您输入的旧密码不正确,请重新输入",
28+
"error.app_not_exists": "应用不存在",
29+
"error.permission_denied_not_owner": "权限不足,您不是该应用的 Owner",
30+
"error.email_not_exists": "该邮箱不存在"
1631
}

src/core/services/account-manager.ts

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -98,10 +98,10 @@ class AccountManager {
9898

9999
login(account: string, password: string) {
100100
if (_.isEmpty(account)) {
101-
return Promise.reject(new AppError('请您输入邮箱地址'));
101+
return Promise.reject(new AppError('이메일 주소를 입력해주세요.')); // 请您输入邮箱地址
102102
}
103103
if (_.isEmpty(password)) {
104-
return Promise.reject(new AppError('请您输入密码'));
104+
return Promise.reject(new AppError('비밀번호를 입력해주세요.')); // 请您输入密码
105105
}
106106
let where = {};
107107
if (validator.isEmail(account)) {
@@ -113,7 +113,7 @@ class AccountManager {
113113
return Users.findOne({ where })
114114
.then((users) => {
115115
if (_.isEmpty(users)) {
116-
throw new AppError('您输入的邮箱或密码有误');
116+
throw new AppError('이메일 또는 비밀번호가 올바르지 않습니다.'); // 您输入的邮箱或密码有误
117117
}
118118
return users;
119119
})
@@ -122,7 +122,9 @@ class AccountManager {
122122
const loginKey = `${LOGIN_LIMIT_PRE}${users.id}`;
123123
return redisClient.get(loginKey).then((loginErrorTimes) => {
124124
if (Number(loginErrorTimes) > tryLoginTimes) {
125-
throw new AppError(`您输入密码错误次数超过限制,帐户已经锁定`);
125+
throw new AppError(
126+
`비밀번호 오류 횟수가 제한을 초과하여 계정이 잠겼습니다.`,
127+
); // 您输入密码错误次数超过限制,帐户已经锁定
126128
}
127129
return users;
128130
});
@@ -142,7 +144,7 @@ class AccountManager {
142144
redisClient.incr(loginKey);
143145
});
144146
}
145-
throw new AppError('您输入的邮箱或密码有误');
147+
throw new AppError('이메일 또는 비밀번호가 올바르지 않습니다.'); // 您输入的邮箱或密码有误
146148
} else {
147149
return users;
148150
}

0 commit comments

Comments
 (0)