feat(locales): Add multiple languages

This commit is contained in:
web@ppanel
2024-12-18 23:12:53 +07:00
parent a20834a9ac
commit b243ab9006
610 changed files with 23247 additions and 9 deletions
+11
View File
@@ -0,0 +1,11 @@
{
"commissionInfo": "금액 통계, 초대 커미션이 자동으로 잔액에 전환됩니다.",
"commissionRate": "커미션 비율",
"copyInviteLink": "초대 링크 복사",
"copySuccess": "복사 성공",
"inviteCode": "초대 코드",
"inviteRecords": "초대 기록",
"registrationTime": "등록 시간",
"totalCommission": "총 수수료",
"userEmail": "사용자 이메일"
}
+38
View File
@@ -0,0 +1,38 @@
{
"check": {
"checking": "확인 중...",
"continue": "계속",
"description": "로그인 또는 등록을 계속하려면 이메일을 입력하세요.",
"email": "유효한 이메일 주소를 입력하세요.",
"title": "로그인/등록",
"whitelist": "이메일 도메인이 허용된 화이트리스트에 없습니다."
},
"login": {
"description": "로그인하려면 계정 정보를 입력하세요.",
"forgotPassword": "비밀번호를 잊으셨나요?",
"success": "로그인 성공!",
"switchAccount": "회원가입/계정 전환",
"title": "로그인"
},
"orWithEmail": "또는 이메일 사용",
"register": {
"description": "새 계정을 생성하고 정보를 입력하여 등록하세요.",
"existingAccount": "이미 계정이 있으신가요?",
"get": "받기",
"invite": "초대 코드",
"message": "#### 존경하는 사용자님, 안녕하세요!\n\n저희에 대한 관심과 지원에 감사드립니다. 사이트 운영 전략의 조정으로 인해 신규 사용자 등록 기능을 닫았습니다. 이 기간 동안 기존 사용자의 사용에는 아무런 영향이 없습니다.\n\n저희는 더 나은 서비스와 경험을 제공하기 위해 등록이 닫힌 동안 시스템 최적화와 기능 업그레이드를 전면적으로 진행할 것입니다. 앞으로 더 나은 콘텐츠와 서비스로 여러분을 맞이하겠습니다.\n\n저희 웹사이트와 소셜 미디어 플랫폼을 주시하여 최신 동향과 공지를 받아보세요. 이해와 지원에 감사드립니다.\n\n궁금한 점이나 도움이 필요하시면 언제든지 고객 서비스 팀에 문의해 주세요.\n\n**다시 한번 지원과 이해에 감사드립니다.**",
"passwordMismatch": "비밀번호가 일치하지 않습니다.",
"success": "등록 성공, 자동으로 로그인되었습니다!",
"switchToLogin": "로그인/이메일 재설정",
"title": "등록"
},
"reset": {
"description": "비밀번호를 재설정하려면 이메일 주소를 입력하세요.",
"existingAccount": "이미 계정이 있으신가요?",
"get": "받기",
"success": "비밀번호 재설정 성공, 자동으로 로그인으로 전환되었습니다!",
"switchToLogin": "로그인/회원가입",
"title": "비밀번호 재설정"
},
"tos": "서비스 약관"
}
+52
View File
@@ -0,0 +1,52 @@
{
"empty": [
"여기에 멋진 내용이 가득할 거라고 상상해보세요! 지금은 상상에 맡겨야 해요…",
"이 영역이 신비롭게 사라졌습니다. 우리는 그것을 다시 불러오고 있어요!",
"아무 일도 일어나지 않았네요… 직접 무언가를 채워보세요!",
"마치 콘서트에서 무대에 아무도 없는 걸 발견한 것 같아요… 무대에 올라가서 공연해보세요?",
"빈 땅을 발견했어요! 집을 지어볼까요?",
"여기는 잠시 비어있지만, 창의력은 여기서 시작됩니다!",
"아무것도 없어요… 하지만 걱정 마세요, 이건 시작일 뿐이에요!",
"여기에 큰 놀라움을 준비했는데, 놀라움이 도망갔어요!",
"지금은 아무것도 없어요, 마치 간식장이 비어있는 것처럼요.",
"이 빈 공간은 주인공의 등장을 기다리고 있어요!"
],
"list": {
"pageInfo": "{current} 페이지, 총 {total} 페이지",
"rowsPerPage": "페이지당 행 수",
"selectedItems": "{total}개 행 선택됨"
},
"login": "로그인/회원가입",
"request": {
"10001": "조회가 아직 성공하지 않았습니다. 잠시 후 다시 시도하거나 조건을 확인해 주세요.",
"10002": "업데이트 작업이 성공하지 않았습니다. 잠시 후 다시 시도해 주세요.",
"10003": "삽입 작업을 완료할 수 없습니다. 잠시 후 다시 시도해 주세요.",
"10004": "삭제 작업을 완료할 수 없습니다. 잠시 후 다시 시도해 주세요.",
"20001": "해당 사용자 정보가 이미 존재합니다. 정보를 변경한 후 다시 시도해 주세요.",
"20002": "해당 사용자를 찾을 수 없습니다. 정보를 확인한 후 다시 시도해 주세요.",
"20003": "입력하신 비밀번호가 올바르지 않습니다. 다시 입력해 주세요.",
"20004": "해당 사용자가 비활성화되었습니다. 문의 사항이 있으면 고객 서비스에 문의해 주세요.",
"20005": "잔액이 부족합니다. 충전 후 다시 시도해 주세요.",
"20006": "등록 기능을 현재 사용할 수 없습니다. 잠시 후 다시 시도해 주세요.",
"30001": "해당 노드가 이미 존재합니다. 중복 추가하지 마세요.",
"30002": "관련 노드를 찾을 수 없습니다. 확인 후 다시 시도해 주세요.",
"30003": "그룹이 이미 존재합니다. 다른 이름을 사용해 보세요.",
"30004": "해당 그룹을 찾을 수 없습니다. 정보를 확인한 후 다시 시도해 주세요.",
"30005": "해당 그룹 내에 여전히 내용이 있습니다. 비운 후 다시 시도해 주세요.",
"400": "요청 매개변수가 올바르지 않습니다. 확인 후 다시 제출해 주세요.",
"40002": "유효한 토큰을 찾을 수 없습니다. 먼저 로그인한 후 다시 시도해 주세요.",
"40003": "현재 토큰이 유효하지 않습니다. 다시 획득한 후 시도해 주세요.",
"40004": "토큰이 만료되었습니다. 다시 로그인해 주세요.",
"40005": "접근 권한이 없습니다. 문의 사항이 있으면 관리자에게 문의해 주세요.",
"401": "요청이 너무 빈번합니다. 잠시 후 다시 시도해 주세요.",
"500": "서버에 문제가 발생했습니다. 잠시 후 다시 시도해 주세요.",
"50001": "해당 쿠폰 정보를 찾을 수 없습니다. 확인 후 다시 시도해 주세요.",
"50002": "해당 쿠폰이 이미 사용되었습니다. 중복 사용이 불가능합니다.",
"60001": "구독이 만료되었습니다. 갱신 후 사용해 주세요.",
"60002": "현재 구독을 사용할 수 없습니다. 잠시 후 다시 시도해 주세요.",
"70001": "인증 코드가 잘못되었습니다. 다시 입력해 주세요.",
"80001": "작업이 큐에 성공적으로 추가되지 않았습니다. 잠시 후 다시 시도해 주세요.",
"undefined": "시스템에 오류가 발생했습니다. 잠시 후 다시 시도해 주세요."
},
"unlimited": "무제한"
}
+25
View File
@@ -0,0 +1,25 @@
{
"cancel": "취소",
"confirm": "확인",
"confirmResetSubscription": "구독 주소를 재설정하시겠습니까?",
"copy": "복사",
"copyFailure": "복사 실패, 수동으로 복사하세요",
"copySuccess": "복사 성공",
"download": "다운로드",
"expirationDays": "만료일/일",
"import": "가져오기",
"latestAnnouncement": "최신 공지",
"manualImportMessage": "이 앱은 현재 호출을 지원하지 않습니다. 수동으로 가져오세요. 구독 주소가 자동으로 복사되었습니다.",
"mySubscriptions": "내 구독",
"nextResetDays": "다음 초기화/일",
"prompt": "프롬프트",
"purchaseSubscription": "구독 구매",
"qrCode": "QR코드",
"resetSubscription": "구독 주소 재설정",
"resetSuccess": "재설정 성공",
"scanToSubscribe": "스캔하여 구독",
"subscriptionUrl": "구독 주소",
"totalTraffic": "총 트래픽",
"unknown": "알 수 없음",
"used": "사용됨"
}
+6
View File
@@ -0,0 +1,6 @@
{
"all": "전체",
"document": "문서",
"read": "읽기",
"tutorial": "튜토리얼"
}
+14
View File
@@ -0,0 +1,14 @@
{
"global_map_description": "원활한 글로벌 연결을 탐색하세요. 필요에 맞는 네트워크 서비스를 선택하여 언제 어디서나 연결을 유지하세요.",
"global_map_itle": "글로벌 연결, 편안하고 걱정 없는",
"locations": "지역",
"per_month": "매월",
"product_showcase_description": "가장 적합한 패키지를 선택하여 기쁘게 탐험해 보세요.",
"product_showcase_title": "패키지를 선택하세요",
"servers": "서버",
"started": "시작하기",
"subscribe": "구독",
"tos": "서비스 약관",
"users": "사용자",
"welcome": "환영합니다"
}
+24
View File
@@ -0,0 +1,24 @@
{
"cs-CZ": "체코어",
"de-DE": "독일어",
"en-US": "영어",
"es-ES": "스페인어",
"es-MX": "스페인어(멕시코)",
"fi-FI": "핀란드어",
"fr-FR": "프랑스어",
"hi-IN": "힌디어",
"hu-HU": "헝가리어",
"ja-JP": "일본어",
"ko-KR": "한국어",
"no-NO": "노르웨이어",
"pl-PL": "폴란드어",
"pt-BR": "포르투갈어(브라질)",
"ro-RO": "루마니아어",
"ru-RU": "러시아어",
"th-TH": "태국어",
"tr-TR": "터키어",
"uk-UA": "우크라이나어",
"vi-VN": "베트남어",
"zh-CN": "한국어",
"zh-TW": "중국어(번체)"
}
+7
View File
@@ -0,0 +1,7 @@
{
"accountBalance": "계좌 잔액",
"copyInviteLink": "초대 링크 복사",
"copySuccess": "초대 링크가 성공적으로 복사되었습니다",
"inviteCode": "초대 코드",
"recharge": "충전"
}
+17
View File
@@ -0,0 +1,17 @@
{
"affiliate": "내 초대",
"announcement": "공지 목록",
"dashboard": "대시보드",
"document": "사용 설명서",
"finance": "재무",
"help": "도움말",
"logout": "로그아웃",
"order": "주문 목록",
"payment": "주문 세부사항",
"personal": "개인",
"profile": "개인 센터",
"server": "서버",
"subscribe": "구독 구매",
"ticket": "내 티켓",
"wallet": "재무 센터"
}
+61
View File
@@ -0,0 +1,61 @@
{
"balanceRecharge": "잔액 충전",
"buyNow": "지금 구매",
"buySubscription": "구독 구매",
"cancel": "취소",
"createdAt": "생성 시간",
"description": "원클릭 충전, 간편하게 해결",
"detail": "세부사항",
"enterAmount": "충전 금액을 입력하세요",
"enterCoupon": "할인 코드를 입력하세요",
"goToPayment": "결제하기",
"methods": {
"alipay_f2f": "알리페이(대면)",
"balance": "잔액",
"epay": "이페이",
"stripe_alipay": "Stripe(알리페이)",
"stripe_wechat_pay": "Stripe(위챗)"
},
"month": "개월",
"months": "개월",
"name": "이름",
"orderClosed": "주문이 종료되었습니다",
"orderList": "주문 목록",
"orderNo": "주문번호",
"orderNumber": "주문 번호",
"payment": "결제하기",
"paymentAmount": "지불 금액",
"paymentMethod": "결제 수단",
"paymentSuccess": "결제 성공",
"productList": "제품 목록",
"purchaseDuration": "구매 기간",
"recharge": "충전",
"rechargeAmount": "충전 금액",
"rechargeNow": "지금 충전하기",
"renew": "갱신",
"renewSubscription": "구독 갱신",
"resetPrice": "가격 재설정",
"resetTraffic": "트래픽 재설정",
"resetTrafficDescription": "이번 달의 트래픽만 초기화됩니다.",
"resetTrafficTitle": "트래픽 재설정",
"scanToPay": "스캔하여 결제하세요",
"status": {
"0": "상태",
"1": "결제 대기 중",
"2": "결제 완료",
"3": "취소됨",
"4": "닫힘",
"5": "완료됨"
},
"subscribeNow": "지금 구독하기",
"timeExpired": "결제 시간이 만료되었습니다",
"type": {
"0": "유형",
"1": "신규 구매",
"2": "갱신",
"3": "트래픽 재설정",
"4": "충전"
},
"viewDocument": "문서 보기",
"waitingForPayment": "결제 대기 중"
}
+28
View File
@@ -0,0 +1,28 @@
{
"accountSettings": {
"accountSettings": "계정 설정",
"loginPassword": "로그인 비밀번호",
"newPassword": "새 비밀번호",
"passwordMismatch": "비밀번호가 일치하지 않습니다",
"repeatNewPassword": "새 비밀번호 반복",
"updatePassword": "비밀번호 업데이트",
"updateSuccess": "업데이트 성공"
},
"notify": {
"bind": "연결",
"emailNotification": "이메일 알림",
"notificationSettings": "알림 설정",
"telegramId": "텔레그램 ID",
"telegramIdPlaceholder": "텔레그램 ID 입력",
"telegramNotification": "텔레그램 알림",
"updateSuccess": "업데이트 성공"
},
"notifyEvent": {
"balanceChange": "잔액 변경",
"finance": "재무",
"login": "로그인",
"notificationEvents": "알림 이벤트",
"subscribe": "구독",
"updateSuccess": "업데이트 성공"
}
}
+31
View File
@@ -0,0 +1,31 @@
{
"all": "전체",
"billing": {
"billingTitle": "상품 청구서",
"couponDiscount": "할인 코드 혜택",
"duration": "패키지 기간",
"fee": "수수료",
"months": "개월",
"price": "가격",
"productDiscount": "상품 할인",
"total": "총액"
},
"buy": "구매",
"category": "카테고리",
"detail": {
"availableTraffic": "사용 가능한 트래픽",
"connectedDevices": "동시 연결 IP 수",
"connectionSpeed": "연결 속도",
"productDetail": "제품 세부 정보"
},
"methods": {
"alipay_f2f": "알리페이(대면)",
"balance": "잔액",
"epay": "이페이",
"stripe_alipay": "Stripe(알리페이)",
"stripe_wechat_pay": "Stripe(위챗)"
},
"perMonth": "월",
"productDescription": "제품 설명",
"products": "상품"
}
+26
View File
@@ -0,0 +1,26 @@
{
"cancel": "취소",
"check": "확인",
"close": "닫기",
"closeSuccess": "작업 티켓이 성공적으로 닫혔습니다",
"closeWarning": "작업을 닫으면 더 이상 답장할 수 없습니다.",
"confirm": "확인",
"confirmClose": "작업 주문을 닫으시겠습니까?",
"createSuccess": "생성 성공",
"createTicket": "티켓 생성",
"createTicketDescription": "티켓은 24시간 이내에 응답됩니다.",
"description": "설명",
"inputPlaceholder": "메시지를 입력하세요",
"reply": "답장",
"status": {
"0": "상태",
"1": "대기 중",
"2": "처리 중",
"3": "해결됨",
"4": "닫힘"
},
"submit": "제출",
"ticketList": "티켓 목록",
"title": "제목",
"updatedAt": "업데이트 시간"
}
+15
View File
@@ -0,0 +1,15 @@
{
"amount": "금액",
"balance": "잔액",
"createdAt": "시간",
"title": "계정 잔액",
"type": {
"0": "유형",
"1": "충전",
"2": "출금",
"3": "구매",
"4": "환불",
"5": "보상",
"6": "커미션"
}
}