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
@@ -0,0 +1,30 @@
{
"actions": "Hành động",
"announcementList": "Danh sách thông báo",
"cancel": "Hủy",
"confirm": "Xác nhận",
"confirmDelete": "Bạn có chắc chắn muốn xóa không?",
"content": "Nội dung",
"create": "Tạo",
"createAnnouncement": "Tạo thông báo",
"createSuccess": "Tạo thành công",
"delete": "Xóa",
"deleteDescription": "Một khi đã xóa, dữ liệu sẽ không thể khôi phục. Hãy cẩn thận khi thực hiện.",
"deleteSuccess": "Xóa thành công",
"edit": "Chỉnh sửa",
"editAnnouncement": "Chỉnh sửa thông báo",
"enable": "Kích hoạt",
"form": {
"cancel": "Hủy",
"confirm": "Xác nhận",
"content": "Nội dung",
"contentPlaceholder": "Vui lòng nhập nội dung thông báo (hỗ trợ Markdown)",
"title": "Tiêu đề",
"titlePlaceholder": "Vui lòng nhập"
},
"hide": "Ẩn",
"show": "Hiển thị",
"title": "Tiêu đề",
"updateSuccess": "Cập nhật thành công",
"updatedAt": "Cập nhật lúc"
}
+39
View File
@@ -0,0 +1,39 @@
{
"check": {
"checking": "Đang kiểm tra...",
"continue": "Tiếp tục",
"description": "Vui lòng nhập email của bạn để tiếp tục đăng nhập hoặc đăng ký.",
"email": "Vui lòng nhập địa chỉ email hợp lệ.",
"title": "Đăng nhập/Đăng ký",
"whitelist": "Tên miền email không có trong danh sách trắng được phép."
},
"login": {
"description": "Vui lòng nhập thông tin tài khoản của bạn để đăng nhập.",
"forgotPassword": "Quên mật khẩu?",
"success": "Đăng nhập thành công!",
"switchAccount": "Đăng ký/Chuyển đổi tài khoản",
"title": "Đăng nhập"
},
"logout": "Đăng xuất",
"orWithEmail": "hoặc sử dụng email",
"register": {
"description": "Tạo tài khoản mới, điền thông tin của bạn để đăng ký.",
"existingAccount": "Đã có tài khoản?",
"get": "Lấy",
"invite": "Mã mời",
"message": "#### Kính gửi người dùng,\n\nCảm ơn bạn đã quan tâm và ủng hộ chúng tôi. Do điều chỉnh chiến lược vận hành trang web, chúng tôi đã đóng chức năng đăng ký người dùng mới. Trong thời gian này, việc sử dụng của người dùng hiện tại sẽ không bị ảnh hưởng.\n\nChúng tôi cam kết mang đến cho bạn dịch vụ và trải nghiệm tốt hơn, do đó sẽ tiến hành tối ưu hóa hệ thống và nâng cấp chức năng toàn diện trong thời gian đóng đăng ký. Trong tương lai, chúng tôi sẽ chào đón bạn với nội dung và dịch vụ chất lượng hơn.\n\nHãy theo dõi trang web và các nền tảng truyền thông xã hội của chúng tôi để nhận thông tin và thông báo mới nhất. Cảm ơn bạn đã hiểu và ủng hộ.\n\nNếu có bất kỳ thắc mắc hoặc cần hỗ trợ, vui lòng liên hệ với đội ngũ chăm sóc khách hàng của chúng tôi.\n\n**Một lần nữa cảm ơn sự ủng hộ và hiểu biết của bạn.**",
"passwordMismatch": "Mật khẩu nhập hai lần không khớp",
"success": "Đăng ký thành công, đã tự động đăng nhập!",
"switchToLogin": "Đăng nhập/Đặt lại email",
"title": "Đăng ký"
},
"reset": {
"description": "Vui lòng nhập địa chỉ email của bạn để đặt lại mật khẩu.",
"existingAccount": "Đã có tài khoản?",
"get": "Lấy",
"success": "Đặt lại mật khẩu thành công, đã tự động chuyển sang đăng nhập!",
"switchToLogin": "Đăng nhập/Đăng ký",
"title": "Đặt lại mật khẩu"
},
"tos": "Điều khoản dịch vụ"
}
+60
View File
@@ -0,0 +1,60 @@
{
"billing": {
"description": "Tài trợ giúp PPanel tiếp tục phát hành các bản cập nhật!",
"title": "Nhà tài trợ"
},
"empty": [
"Hãy tưởng tượng nơi này đầy ắp nội dung thú vị! Tạm thời chỉ có thể tưởng tượng thôi…",
"Khu vực này đã biến mất một cách bí ẩn, chúng tôi đang triệu hồi nó trở lại!",
"Ôi chao, chẳng có gì xảy ra… bạn có thể tự điền gì đó vào!",
"Giống như phát hiện sân khấu không có ai trong buổi hòa nhạc… bạn có muốn lên biểu diễn không?",
"Bạn đã tìm thấy một vùng đất trống! Có muốn xây một ngôi nhà không?",
"Nơi này tạm thời trống rỗng, nhưng sự sáng tạo bắt đầu từ đây!",
"Chẳng có gì cả… nhưng đừng lo, đây chỉ là khởi đầu thôi!",
"Nơi này đã chuẩn bị một bất ngờ lớn, nhưng bất ngờ đã chạy mất rồi!",
"Tạm thời không có gì, giống như tủ đồ ăn vặt đã bị ăn sạch vậy.",
"Khu đất trống này đang chờ nhân vật chính xuất hiện!"
],
"request": {
"10001": "Truy vấn chưa thành công, vui lòng thử lại sau hoặc kiểm tra điều kiện của bạn.",
"10002": "Thao tác cập nhật không thành công, vui lòng thử lại sau.",
"10003": "Tạm thời không thể hoàn thành thao tác chèn, vui lòng thử lại sau.",
"10004": "Thao tác xóa không thể hoàn thành, vui lòng thử lại sau.",
"20001": "Thông tin người dùng này đã tồn tại, vui lòng thay đổi thông tin và thử lại.",
"20002": "Không tìm thấy người dùng này, vui lòng kiểm tra thông tin và thử lại.",
"20003": "Mật khẩu bạn nhập không chính xác, vui lòng nhập lại.",
"20004": "Người dùng này đã bị vô hiệu hóa, nếu có thắc mắc vui lòng liên hệ dịch vụ khách hàng.",
"20005": "Số dư không đủ, vui lòng nạp tiền và thử lại.",
"20006": "Chức năng đăng ký tạm thời không khả dụng, vui lòng thử lại sau.",
"30001": "Nút này đã tồn tại, vui lòng không thêm lại.",
"30002": "Không tìm thấy nút liên quan, vui lòng kiểm tra và thử lại.",
"30003": "Nhóm đã tồn tại, vui lòng thử sử dụng tên khác.",
"30004": "Không tìm thấy nhóm này, vui lòng xác nhận thông tin và thử lại.",
"30005": "Nhóm này vẫn còn nội dung, vui lòng làm trống trước khi thử lại.",
"400": "Tham số yêu cầu không chính xác, vui lòng kiểm tra và gửi lại.",
"40002": "Không tìm thấy Token hợp lệ, vui lòng đăng nhập trước khi thử lại.",
"40003": "Token hiện tại không hợp lệ, vui lòng lấy lại và thử lại.",
"40004": "Token đã hết hạn, vui lòng đăng nhập lại.",
"40005": "Bạn không có quyền truy cập, nếu có thắc mắc vui lòng liên hệ quản trị viên.",
"401": "Yêu cầu quá thường xuyên, vui lòng thử lại sau.",
"500": "Máy chủ gặp một số vấn đề, vui lòng thử lại sau.",
"50001": "Không tìm thấy thông tin phiếu giảm giá tương ứng, vui lòng kiểm tra và thử lại.",
"50002": "Phiếu giảm giá này đã được sử dụng, không thể sử dụng lại.",
"60001": "Đăng ký đã hết hạn, vui lòng gia hạn trước khi sử dụng.",
"60002": "Tạm thời không thể sử dụng đăng ký này, vui lòng thử lại sau.",
"70001": "Mã xác nhận không chính xác, vui lòng nhập lại.",
"80001": "Nhiệm vụ không được thêm vào hàng đợi thành công, vui lòng thử lại sau.",
"90001": "Vui lòng tắt chế độ DEBUG trước khi thử lại.",
"undefined": "Hệ thống xảy ra lỗi, vui lòng thử lại sau."
},
"table": {
"actions": "Hành động",
"asc": "Tăng dần",
"desc": "Giảm dần",
"hide": "Ẩn",
"pageInfo": "Trang {current} trên tổng số {total} trang",
"rowsPerPage": "Số hàng mỗi trang",
"selectedItems": "Đã chọn {total} hàng"
},
"unlimited": "không giới hạn"
}
+50
View File
@@ -0,0 +1,50 @@
{
"actions": "Hành động",
"amount": "Số tiền",
"cancel": "Hủy",
"code": "mã",
"confirm": "Xác nhận",
"confirmDelete": "Bạn có chắc chắn muốn xóa không?",
"count": "số lượng",
"couponList": "Danh sách phiếu giảm giá",
"create": "Tạo",
"createCoupon": "Tạo phiếu giảm giá",
"createSuccess": "Tạo thành công",
"delete": "xóa",
"deleteSuccess": "Xóa thành công",
"deleteWarning": "Khi đã xóa, dữ liệu sẽ không thể khôi phục. Vui lòng thao tác cẩn thận.",
"discount": "giảm giá",
"edit": "Chỉnh sửa",
"editCoupon": "Chỉnh sửa phiếu giảm giá",
"enable": "Kích hoạt",
"form": {
"amountDiscount": "Giảm giá theo số tiền",
"cancel": "Hủy bỏ",
"confirm": "Xác nhận",
"count": "Số lần sử dụng tối đa",
"countPlaceholder": "Số lần sử dụng tối đa (để trống nếu không giới hạn)",
"customCouponCode": "Mã giảm giá tùy chỉnh",
"customCouponCodePlaceholder": "Mã giảm giá tùy chỉnh (để trống để tự động tạo)",
"enterCouponName": "Vui lòng nhập tên phiếu giảm giá",
"enterValue": "Vui lòng nhập giá trị",
"expireTime": "Thời gian hết hạn",
"name": "Tên",
"percentageDiscount": "Giảm giá theo phần trăm",
"selectServer": "Vui lòng chọn gói đăng ký",
"selectTime": "Chọn thời gian",
"specifiedServer": "Gói đăng ký chỉ định",
"startTime": "Thời gian bắt đầu",
"type": "Loại phiếu giảm giá",
"userLimit": "Số lần sử dụng tối đa mỗi người dùng",
"userLimitPlaceholder": "Số lần sử dụng tối đa mỗi người dùng (để trống nếu không giới hạn)"
},
"name": "Tên",
"percentage": "phần trăm",
"remainingTimes": "Còn lại",
"subscribe": "Đăng ký",
"type": "Loại",
"unlimited": "không giới hạn",
"updateSuccess": "Cập nhật thành công",
"usedTimes": "Số lần sử dụng",
"validityPeriod": "Thời hạn hiệu lực"
}
+29
View File
@@ -0,0 +1,29 @@
{
"DocumentList": "Danh sách tài liệu",
"actions": "Hành động",
"cancel": "Hủy",
"confirm": "Xác nhận",
"confirmDelete": "Bạn có chắc chắn muốn xóa không?",
"create": "Tạo",
"createDocument": "Tạo tài liệu",
"createSuccess": "Tạo thành công",
"delete": "Xóa",
"deleteDescription": "Một khi đã xóa, dữ liệu sẽ không thể khôi phục. Vui lòng thao tác cẩn thận.",
"deleteSuccess": "Xóa thành công",
"edit": "Chỉnh sửa",
"editDocument": "Chỉnh sửa tài liệu",
"form": {
"cancel": "Hủy bỏ",
"confirm": "Xác nhận",
"content": "Nội dung",
"tags": "Thể loại",
"tagsPlaceholder": "Vui lòng sử dụng phím Enter hoặc dấu phẩy (,) để nhập nhiều thể loại",
"title": "Tiêu đề",
"titlePlaceholder": "Vui lòng nhập"
},
"show": "Hiển thị",
"tags": "Thể loại",
"title": "Tiêu đề",
"updateSuccess": "Cập nhật thành công",
"updatedAt": "Cập nhật lúc"
}
+29
View File
@@ -0,0 +1,29 @@
{
"email": "Email",
"month": "Tháng này",
"monthDownloadTraffic": "Lưu lượng tải xuống tháng này",
"monthUploadTraffic": "Lưu lượng tải lên trong tháng này",
"newPurchase": "Mua mới",
"nodeTraffic": "Lưu lượng nút",
"nodes": "nút",
"offlineNodeCount": "Số lượng nút ngoại tuyến",
"onlineIPCount": "Số lượng IP trực tuyến",
"onlineNodeCount": "Số lượng nút trực tuyến",
"pendingTickets": "Phiếu hỗ trợ đang chờ xử lý",
"register": "Đăng ký",
"repurchase": "mua lại",
"revenueTitle": "Thống kê doanh thu",
"selectTypePlaceholder": "Chọn loại",
"statisticsTitle": "Thống kê",
"today": "Hôm nay",
"todayDownloadTraffic": "Lưu lượng tải xuống hôm nay",
"todayUploadTraffic": "Lưu lượng tải lên hôm nay",
"total": "Tổng cộng",
"totalIncome": "Tổng thu nhập",
"trafficRank": "Xếp hạng lưu lượng",
"type": "Loại",
"userTitle": "Thống kê người dùng",
"userTraffic": "Lưu lượng người dùng",
"users": "người dùng",
"yesterday": "Hôm qua"
}
+24
View File
@@ -0,0 +1,24 @@
{
"cs-CZ": "Tiếng Séc",
"de-DE": "Tiếng Đức",
"en-US": "tiếng Anh",
"es-ES": "Tiếng Tây Ban Nha",
"es-MX": "Tiếng Tây Ban Nha (Mexico)",
"fi-FI": "Tiếng Phần Lan",
"fr-FR": "Tiếng Pháp",
"hi-IN": "Tiếng Hindi",
"hu-HU": "Tiếng Hungary",
"ja-JP": "Tiếng Nhật",
"ko-KR": "Tiếng Hàn",
"no-NO": "Tiếng Na Uy",
"pl-PL": "Tiếng Ba Lan",
"pt-BR": "Tiếng Bồ Đào Nha (Brazil)",
"ro-RO": "Tiếng Romania",
"ru-RU": "Tiếng Nga",
"th-TH": "Tiếng Thái",
"tr-TR": "Tiếng Thổ Nhĩ Kỳ",
"uk-UA": "Tiếng Ukraina",
"vi-VN": "Tiếng Việt",
"zh-CN": "Tiếng Trung (Giản thể)",
"zh-TW": "Tiếng Trung (Phồn thể)"
}
+18
View File
@@ -0,0 +1,18 @@
{
"Announcement Management": "Quản lý Thông báo",
"Coupon Management": "Quản lý phiếu giảm giá",
"Dashboard": "Bảng điều khiển",
"Document Management": "Quản lý tài liệu",
"Finance": "Tài chính",
"Order Management": "Quản lý đơn hàng",
"Payment Config": "Cấu hình thanh toán",
"Server": "Dịch vụ",
"Server Management": "Quản lý máy chủ",
"Settings": "Cài đặt",
"Subscribe Management": "Quản lý đăng ký",
"System Config": "Cấu hình hệ thống",
"System Tool": "Công Cụ Hệ Thống",
"Ticket Management": "Quản lý phiếu hỗ trợ",
"User": "Người dùng",
"User Management": "Quản lý người dùng"
}
+37
View File
@@ -0,0 +1,37 @@
{
"amount": "Số tiền",
"couponDiscount": "Giảm giá phiếu giảm giá",
"discount": "Số tiền chiết khấu",
"failed": "Thất bại",
"feeAmount": "Phí dịch vụ",
"method": "Phương thức thanh toán",
"methods": {
"alipay_f2f": "Alipay (mặt đối mặt)",
"balance": "Số dư",
"epay": "Thanh toán dễ dàng",
"stripe_alipay": "Stripe (Alipay)",
"stripe_wechat_pay": "Stripe (WeChat)"
},
"orderNumber": "Số đơn hàng",
"status": {
"0": "Trạng thái",
"1": "Chờ thanh toán",
"2": "Đã thanh toán",
"3": "Đã hủy",
"4": "Đã đóng",
"5": "Đã hoàn thành"
},
"subscribe": "Đăng ký",
"subscribePrice": "Giá đăng ký",
"total": "Tổng cộng",
"tradeNo": "Số giao dịch",
"type": {
"0": "Loại",
"1": "Mua mới",
"2": "Gia hạn",
"3": "Đặt lại lưu lượng",
"4": "Nạp tiền"
},
"updateTime": "Thời gian cập nhật",
"user": "người dùng"
}
+44
View File
@@ -0,0 +1,44 @@
{
"aliPay": "Thanh toán qua Alipay",
"alipayf2f": {
"appId": "ID ứng dụng Alipay",
"invoiceName": "Tên sản phẩm tùy chỉnh",
"invoiceNameDescription": "Sẽ hiển thị trên hóa đơn Alipay",
"privateKey": "Khóa riêng Alipay",
"publicKey": "Khóa công khai Alipay",
"sandbox": "Chế độ sandbox",
"sandboxDescription": "Kích hoạt chế độ sandbox để kiểm tra thanh toán"
},
"enable": "Kích hoạt",
"enableDescription": "Kích hoạt phương thức thanh toán này",
"epay": {
"key": "KHÓA",
"pid": "PID",
"url": "URL"
},
"feeMode": "Phương thức tính phí",
"feeModeDescription": "Cách tính phí bổ sung",
"feeModeItems": ["Không phí dịch vụ", "Phần trăm", "Số tiền cố định", "Hai loại trên"],
"feePercent": "Phí phần trăm (tùy chọn)",
"feePercentDescription": "Thêm phí trên số tiền đơn hàng",
"fixedFee": "Phí cố định (tùy chọn)",
"fixedFeeDescription": "Thêm phí cố định vào trên số tiền đơn hàng",
"iconUrl": "URL biểu tượng (tùy chọn)",
"iconUrlDescription": "Dùng để hiển thị phía trước",
"inputPlaceholder": "Vui lòng nhập",
"key": "KEY",
"notifyUrl": "Miền thông báo tùy chỉnh (tùy chọn)",
"notifyUrlDescription": "Thông báo cổng sẽ được gửi đến miền này",
"payForRecommendations": "Thanh toán cho đề xuất",
"pid": "PID",
"saveSuccess": "Lưu thành công",
"showName": "Hiển thị tên",
"showNameDescription": "Dùng để hiển thị phía trước",
"stripe": {
"publicKey": "KHÓA CÔNG KHAI",
"secretKey": "KHÓA BÍ MẬT",
"webhookSecret": "CHỮ KÝ KHÓA WEBHOOK"
},
"url": "URL",
"wechatPay": "Thanh toán WeChat"
}
+122
View File
@@ -0,0 +1,122 @@
{
"group": {
"actions": "Hành động",
"cancel": "Hủy bỏ",
"confirm": "Xác nhận",
"confirmDelete": "Bạn có chắc chắn muốn xóa không?",
"create": "Tạo",
"createNodeGroup": "Tạo nhóm nút",
"createdSuccessfully": "Tạo thành công",
"delete": "Xóa",
"deleteWarning": "Dữ liệu sẽ không thể khôi phục sau khi xóa, hãy cẩn thận.",
"deletedSuccessfully": "Xóa thành công",
"description": "Mô tả",
"edit": "Chỉnh sửa",
"editNodeGroup": "Chỉnh sửa nhóm nút",
"form": {
"cancel": "Hủy bỏ",
"confirm": "Xác nhận",
"description": "Mô tả",
"name": "Tên"
},
"name": "Tên",
"title": "Danh sách nhóm nút",
"updatedAt": "Thời gian cập nhật"
},
"node": {
"abnormal": "Bất thường",
"actions": "Hành động",
"address": "Địa chỉ",
"all": "Tất cả",
"cancel": "Hủy",
"confirm": "Xác nhận",
"confirmDelete": "Bạn có chắc chắn muốn xóa không?",
"create": "Tạo",
"createNode": "Tạo nút",
"createSuccess": "Tạo thành công",
"delete": "Xóa",
"deleteSuccess": "Xóa thành công",
"deleteWarning": "Sau khi xóa, dữ liệu sẽ không thể khôi phục. Vui lòng cẩn thận.",
"disk": "Đĩa",
"edit": "Chỉnh sửa",
"editNode": "Chỉnh sửa nút",
"enable": "Kích hoạt",
"form": {
"allowInsecure": "Cho phép không an toàn",
"cancel": "Hủy",
"confirm": "Xác nhận",
"edit": "Chỉnh sửa",
"editSecurity": "Chỉnh sửa cấu hình bảo mật",
"enableRelay": "Kích hoạt chuyển tiếp",
"enableTLS": "Kích hoạt TLS",
"encryptionMethod": "Phương pháp mã hóa",
"flow": "Thuật toán điều khiển luồng",
"hopInterval": "Khoảng cách nhảy",
"hopPorts": "Cổng nhảy",
"hopPortsPlaceholder": "Nhiều cổng cách nhau bằng dấu phẩy",
"name": "Tên",
"nodeGroupId": "ID nhóm nút",
"obfsPassword": "Mật khẩu làm mờ",
"obfsPasswordPlaceholder": "Để trống nếu không làm mờ",
"path": "Đường dẫn",
"pleaseSelect": "Vui lòng chọn",
"port": "Cổng dịch vụ",
"protocol": "Giao thức",
"relayHost": "Địa chỉ chuyển tiếp",
"relayPort": "Cổng chuyển tiếp",
"remarks": "Ghi chú",
"security": "Bảo mật",
"securityConfig": "Cấu hình bảo mật",
"security_config": {
"fingerprint": "Dấu vân tay",
"privateKey": "Khóa riêng",
"privateKeyPlaceholder": "Để trống để tự động tạo",
"publicKey": "Khóa công khai",
"publicKeyPlaceholder": "Để trống để tự động tạo",
"serverAddress": "Địa chỉ máy chủ",
"serverAddressPlaceholder": "Địa chỉ mục tiêu REALITY, mặc định sử dụng SNI",
"serverName": "Tên máy chủ (SNI)",
"serverNamePlaceholder": "REALITY bắt buộc, phải khớp với phía sau",
"serverPort": "Cổng máy chủ",
"serverPortPlaceholder": "Cổng mục tiêu REALITY, mặc định 443",
"shortId": "ID ngắn",
"shortIdPlaceholder": "Để trống để tự động tạo",
"sni": "Chỉ thị tên máy chủ (SNI)"
},
"selectEncryptionMethod": "Chọn phương pháp mã hóa",
"selectNodeGroup": "Chọn nhóm nút",
"selectProtocol": "Chọn giao thức",
"serverAddr": "Địa chỉ máy chủ",
"serverName": "Tên dịch vụ",
"speedLimit": "Giới hạn tốc độ",
"speedLimitPlaceholder": "Không giới hạn",
"trafficRatio": "Tỷ lệ lưu lượng",
"transport": "Giao thức truyền tải",
"transportConfig": "Cấu hình giao thức truyền tải",
"transportHost": "Địa chỉ dịch vụ truyền tải",
"transportPath": "Đường dẫn truyền tải",
"transportServerName": "Tên dịch vụ truyền tải"
},
"lastUpdated": "Cập nhật lần cuối",
"memory": "Bộ nhớ",
"name": "Tên",
"node": "Nút",
"nodeGroup": "Nhóm nút",
"normal": "Bình thường",
"onlineCount": "Số người trực tuyến",
"onlineUsers": "Người dùng trực tuyến",
"rate": "Tốc độ",
"relay": "Chuyển tiếp",
"serverAddr": "Địa chỉ máy chủ",
"speedLimit": "Giới hạn tốc độ",
"status": "Trạng thái",
"trafficRatio": "Tỷ lệ lưu lượng",
"type": "Loại",
"updateSuccess": "Cập nhật thành công",
"updatedAt": "Thời gian cập nhật"
},
"tabs": {
"node": "Nút",
"nodeGroup": "Nhóm nút"
}
}
+79
View File
@@ -0,0 +1,79 @@
{
"actions": "Hành động",
"cancel": "Hủy",
"confirm": "Xác nhận",
"confirmDelete": "Bạn có chắc chắn muốn xóa không?",
"create": "Tạo",
"createSubscribe": "Tạo đăng ký mới",
"createSuccess": "Tạo thành công",
"delete": "xóa",
"deleteSuccess": "Xóa thành công",
"deleteWarning": "Sau khi xóa, dữ liệu không thể khôi phục, vui lòng thao tác cẩn thận.",
"deviceLimit": "Số lượng thiết bị",
"edit": "Chỉnh sửa",
"editSubscribe": "Chỉnh sửa đăng ký",
"form": {
"cancel": "Hủy",
"confirm": "Xác nhận",
"description": "Mô tả",
"deviceLimit": "Giới hạn thiết bị",
"discount": "Giảm giá",
"discountDescription": "Thiết lập giảm giá dựa trên đơn giá",
"discountMonths": "tháng",
"discountPercent": "Phần trăm giảm giá",
"discount_price": "Giá sau giảm",
"duration": "Thời gian (tháng)",
"inventory": "Tồn kho",
"name": "Tên",
"noLimit": "Không giới hạn",
"quota": "Số lượng mua giới hạn",
"replacement": "Giá thay thế (mỗi lần)",
"selectSubscribeGroup": "Vui lòng chọn nhóm đăng ký",
"server": "Dịch vụ",
"serverGroup": "Nhóm dịch vụ",
"speedLimit": "Giới hạn tốc độ (Mbps)",
"subscribeGroup": "Nhóm đăng ký",
"traffic": "Lưu lượng",
"unit_price": "Giá mỗi tháng"
},
"group": {
"actions": "Hành động",
"cancel": "Hủy bỏ",
"confirm": "Xác nhận",
"confirmDelete": "Bạn có chắc chắn muốn xóa không?",
"create": "Tạo mới",
"createSubscribeGroup": "Tạo nhóm đăng ký mới",
"createSuccess": "Tạo thành công",
"delete": "Xóa",
"deleteSuccess": "Xóa thành công",
"deleteWarning": "Dữ liệu không thể khôi phục sau khi xóa, hãy cẩn thận.",
"description": "Mô tả",
"edit": "Chỉnh sửa",
"editSubscribeGroup": "Chỉnh sửa nhóm đăng ký",
"form": {
"cancel": "Hủy bỏ",
"confirm": "Xác nhận",
"description": "Mô tả",
"name": "Tên"
},
"name": "Tên",
"title": "Danh sách nhóm đăng ký",
"updateSuccess": "Cập nhật thành công",
"updatedAt": "Thời gian cập nhật"
},
"inventory": "Hàng tồn kho",
"name": "Tên",
"quota": "Giới hạn mua/lần",
"replacement": "Đặt lại giá/lần",
"sell": "Bán hàng",
"show": "Hiển thị trang chủ",
"subscribe": "Đăng ký",
"subscribeGroup": "Nhóm đăng ký",
"tabs": {
"subscribe": "Đăng ký",
"subscribeGroup": "Nhóm đăng ký"
},
"traffic": "lưu lượng",
"unitPrice": "Giá/tháng",
"updateSuccess": "Cập nhật thành công"
}
+156
View File
@@ -0,0 +1,156 @@
{
"currency": {
"accessKey": "Khóa truy cập",
"accessKeyDescription": "https://exchangerate.host cung cấp miễn phí khóa API tỷ giá hối đoái",
"currencySymbol": "Ký hiệu tiền tệ",
"currencySymbolDescription": "Chỉ sử dụng để hiển thị, sau khi thay đổi tất cả các đơn vị tiền tệ trong hệ thống sẽ thay đổi",
"currencyUnit": "Đơn vị tiền tệ",
"currencyUnitDescription": "Chỉ sử dụng để hiển thị, sau khi thay đổi tất cả các đơn vị tiền tệ trong hệ thống sẽ thay đổi",
"saveSuccess": "Lưu thành công"
},
"email": {
"expiration_email_template": "Mẫu thông báo hết hạn",
"expiration_email_templateDescription": "Các biến {after}.tên biến{before} trong mẫu sẽ được thay thế bằng dữ liệu thực tế, vui lòng đảm bảo giữ lại các biến này.",
"inputPlaceholder": "Vui lòng nhập nội dung...",
"maintenance_email_template": "Mẫu thông báo bảo trì",
"maintenance_email_templateDescription": "Các biến {after}.tên biến{before} trong mẫu sẽ được thay thế bằng dữ liệu thực tế, vui lòng đảm bảo giữ lại các biến này.",
"saveSuccess": "Cấu hình đã được lưu thành công.",
"sendFailure": "Gửi email thử nghiệm thất bại, vui lòng kiểm tra cấu hình.",
"sendSuccess": "Email thử nghiệm đã được gửi thành công.",
"sendTestEmail": "Gửi email thử nghiệm",
"sendTestEmailDescription": "Gửi một email thử nghiệm để xác minh cấu hình có chính xác không.",
"senderAddress": "Địa chỉ người gửi",
"senderAddressDescription": "Địa chỉ email mặc định được sử dụng để gửi thư.",
"smtpAccount": "Tài khoản SMTP",
"smtpAccountDescription": "Tài khoản email được sử dụng để xác thực.",
"smtpEncryptionMethod": "Phương thức mã hóa SMTP",
"smtpEncryptionMethodDescription": "Chọn có bật mã hóa SSL/TLS hay không.",
"smtpPassword": "Mật khẩu SMTP",
"smtpPasswordDescription": "Mật khẩu của tài khoản SMTP này.",
"smtpServerAddress": "Địa chỉ máy chủ SMTP",
"smtpServerAddressDescription": "Chỉ định địa chỉ máy chủ được sử dụng để gửi thư.",
"smtpServerPort": "Cổng máy chủ SMTP",
"smtpServerPortDescription": "Chỉ định số cổng được sử dụng để kết nối với máy chủ SMTP.",
"verify_email_template": "Mẫu email xác minh",
"verify_email_templateDescription": "Các biến {after}.tên biến{before} trong mẫu sẽ được thay thế bằng dữ liệu thực tế, vui lòng đảm bảo giữ lại các biến này."
},
"invite": {
"commissionFirstTimeOnly": "Chỉ hoa hồng lần đầu tiên mua",
"commissionFirstTimeOnlyDescription": "Khi kích hoạt, hoa hồng chỉ được tạo khi người được mời thanh toán lần đầu tiên. Bạn có thể cấu hình từng người dùng trong quản lý người dùng",
"enableForcedInvite": "Kích hoạt mời bắt buộc",
"enableForcedInviteDescription": "Khi kích hoạt, chỉ người dùng được mời mới có thể đăng ký",
"inputPlaceholder": "Vui lòng nhập",
"inviteCommissionPercentage": "Phần trăm hoa hồng mời",
"inviteCommissionPercentageDescription": "Tỷ lệ phân chia hoa hồng toàn cầu mặc định, bạn có thể cấu hình tỷ lệ riêng cho từng người dùng trong quản lý người dùng",
"saveSuccess": "Lưu thành công"
},
"node": {
"communicationKey": "Khóa giao tiếp",
"communicationKeyDescription": "Khóa giao tiếp của nút để đảm bảo dữ liệu không bị chặn bởi người khác",
"inputPlaceholder": "Vui lòng nhập",
"nodePullInterval": "Khoảng thời gian kéo nút",
"nodePullIntervalDescription": "Tần suất nút lấy dữ liệu từ bảng điều khiển (giây)",
"nodePushInterval": "Khoảng thời gian đẩy nút",
"nodePushIntervalDescription": "Tần suất nút đẩy dữ liệu lên bảng điều khiển",
"saveSuccess": "Lưu thành công"
},
"register": {
"emailSuffixWhitelist": "Danh sách trắng hậu tố email",
"emailSuffixWhitelistDescription": "Khi bật, chỉ những email có hậu tố trong danh sách mới có thể đăng ký",
"emailVerification": "Xác minh email",
"emailVerificationDescription": "Khi bật, người dùng sẽ cần xác minh email của họ",
"ipRegistrationLimit": "Giới hạn đăng ký IP",
"ipRegistrationLimitDescription": "Khi bật, IP đáp ứng yêu cầu quy tắc sẽ bị giới hạn đăng ký. Lưu ý rằng việc xác định IP có thể gây ra vấn đề do CDN hoặc proxy phía trước",
"penaltyTime": "Thời gian phạt (phút)",
"penaltyTimeDescription": "Người dùng phải chờ hết thời gian phạt để đăng ký lại",
"registrationLimitCount": "Số lần giới hạn đăng ký",
"registrationLimitCountDescription": "Kích hoạt phạt khi đạt đến giới hạn đăng ký",
"saveSuccess": "Lưu thành công",
"stopNewUserRegistration": "Dừng đăng ký người dùng mới",
"stopNewUserRegistrationDescription": "Khi bật, không ai có thể đăng ký",
"trialRegistration": "Đăng ký dùng thử",
"trialRegistrationDescription": "Kích hoạt đăng ký dùng thử, vui lòng chỉnh sửa gói và thời gian dùng thử trước",
"whitelistSuffixes": "Hậu tố danh sách trắng",
"whitelistSuffixesDescription": "Dùng cho xác minh email đăng ký, mỗi dòng một hậu tố",
"whitelistSuffixesPlaceholder": "Vui lòng nhập hậu tố email, mỗi dòng một"
},
"site": {
"logo": "LOGO",
"logoDescription": "Dùng để hiển thị vị trí cần hiển thị LOGO",
"logoPlaceholder": "Vui lòng nhập địa chỉ URL của LOGO, không kết thúc bằng '/'",
"saveSuccess": "Lưu thành công",
"siteDesc": "Mô tả trang web",
"siteDescDescription": "Dùng để hiển thị vị trí cần hiển thị mô tả trang web",
"siteDescPlaceholder": "Vui lòng nhập mô tả trang web",
"siteDomain": "Tên miền trang web",
"siteDomainDescription": "Địa chỉ tên miền của trang web hiện tại, ví dụ như dùng trong email",
"siteDomainPlaceholder": "Vui lòng nhập địa chỉ tên miền, mỗi dòng một tên miền",
"siteName": "Tên trang web",
"siteNameDescription": "Dùng để hiển thị vị trí cần hiển thị tên trang web",
"siteNamePlaceholder": "Vui lòng nhập tên trang web"
},
"subscription": {
"add": "Thêm",
"app": "Ứng dụng",
"appDescription": "Cấu hình địa chỉ tải xuống và quy tắc nhập của ứng dụng, nhớ lưu sau khi chỉnh sửa",
"appDownloadURL": "Địa chỉ tải xuống ứng dụng",
"appIcon": "Biểu tượng ứng dụng",
"appName": "Tên ứng dụng",
"delete": "Xóa",
"reset": "Đặt lại",
"save": "Lưu",
"saveSuccess": "Lưu thành công",
"singleSubscriptionMode": "Chế độ đăng ký đơn lẻ",
"singleSubscriptionModeDescription": "Khi bật, tất cả gói của người dùng sẽ chuyển thành số dư",
"subscriptionDomain": "Tên miền đăng ký",
"subscriptionDomainDescription": "Dùng cho đăng ký, để trống sẽ sử dụng tên miền của trang",
"subscriptionDomainPlaceholder": "Vui lòng nhập tên miền đăng ký, nhiều tên miền vui lòng nhập mỗi dòng một",
"subscriptionPath": "Đường dẫn đăng ký",
"subscriptionPathDescription": "Dùng cho đăng ký, sau khi chỉnh sửa vui lòng khởi động lại hệ thống để đảm bảo trải nghiệm hiệu suất tốt nhất",
"subscriptionPathPlaceholder": "Vui lòng nhập",
"subscriptionProtocol": "Giao thức đăng ký",
"wildcardResolution": "Giải quyết ký tự đại diện",
"wildcardResolutionDescription": "Dùng cho đăng ký"
},
"tabs": {
"currency": "Tiền tệ",
"email": "Email",
"invite": "Mời",
"node": "Nút",
"register": "Đăng ký",
"site": "Trang web",
"subscription": "Đăng ký",
"telegram": "Telegram",
"tos": "Điều khoản dịch vụ",
"verify": "Xác minh"
},
"telegram": {
"botToken": "Token của bot",
"botTokenDescription": "Vui lòng nhập token do Botfather cung cấp",
"enableBotNotifications": "Kích hoạt thông báo bot",
"enableBotNotificationsDescription": "Sau khi kích hoạt, bot sẽ gửi thông báo cơ bản đến quản trị viên và người dùng đã liên kết Telegram",
"groupURL": "URL nhóm",
"groupURLDescription": "Sau khi điền, sẽ hiển thị ở phía người dùng hoặc sử dụng ở vị trí cần thiết",
"inputPlaceholderBotToken": "0000000000:xxxxxxxxx_xxxxxxxxxxxxxxx",
"inputPlaceholderGroupURL": "https://t.me/xxxxxx",
"saveSuccess": "Lưu thành công"
},
"tos": {
"saveSuccess": "Lưu thành công",
"title": "Điều khoản dịch vụ"
},
"verify": {
"inputPlaceholder": "Vui lòng nhập",
"loginVerificationCode": "Mã xác minh đăng nhập",
"loginVerificationCodeDescription": "Xác minh con người khi đăng nhập",
"registrationVerificationCode": "Mã xác minh đăng ký",
"registrationVerificationCodeDescription": "Xác minh con người khi đăng ký",
"resetPasswordVerificationCode": "Mã xác minh đặt lại mật khẩu",
"resetPasswordVerificationCodeDescription": "Xác minh con người khi đặt lại mật khẩu",
"saveSuccess": "Lưu thành công",
"turnstileSecret": "Khóa bí mật Turnstile",
"turnstileSecretDescription": "Khóa bí mật Turnstile do Cloudflare cung cấp",
"turnstileSiteKey": "Khóa trang Turnstile",
"turnstileSiteKeyDescription": "Khóa trang Turnstile do Cloudflare cung cấp"
}
}
+19
View File
@@ -0,0 +1,19 @@
{
"actions": "Hành động",
"cancel": "Hủy",
"check": "Kiểm tra",
"close": "Đóng",
"closeSuccess": "Đóng thành công",
"closeWarning": "Một khi đóng, bạn sẽ không thể thao tác với phiếu công việc này. Vui lòng cẩn thận.",
"confirm": "Xác nhận",
"confirmClose": "Bạn có chắc chắn muốn đóng không?",
"createdAt": "Thời gian tạo",
"inputPlaceholder": "Vui lòng nhập câu hỏi của bạn, chúng tôi sẽ trả lời sớm nhất có thể.",
"open": "Mở",
"reply": "Phản hồi",
"status": ["Trạng thái", "Chờ theo dõi", "Chờ phản hồi", "Đã xử lý", "Đóng"],
"ticketList": "Danh sách phiếu hỗ trợ",
"title": "Tiêu đề",
"updatedAt": "Cập nhật lúc",
"user": "người dùng"
}
+26
View File
@@ -0,0 +1,26 @@
{
"caller": "Người gọi",
"cancel": "Hủy",
"confirmReboot": "Xác nhận khởi động lại",
"confirmSystemReboot": "Xác nhận khởi động lại hệ thống",
"confirmSystemUpgrade": "Xác nhận nâng cấp hệ thống",
"confirmUpgrade": "Xác nhận nâng cấp",
"currentVersion": "Phiên bản hệ thống hiện tại:",
"errors": "Lỗi",
"ip": "IP",
"lastUpdated": "Cập nhật lần cuối:",
"none": "Không có",
"query": "Truy vấn",
"rebootDescription": "Bạn có chắc chắn muốn khởi động lại hệ thống không? Thao tác này sẽ gây gián đoạn dịch vụ trong thời gian ngắn.",
"rebooting": "Đang khởi động lại hệ thống...",
"refreshLogs": "Làm mới nhật ký",
"request": "Yêu cầu",
"status": "Trạng thái",
"systemLogs": "Nhật ký hệ thống",
"systemReboot": "Khởi động lại hệ thống",
"systemServices": "Dịch vụ hệ thống",
"systemUpgrade": "Nâng cấp hệ thống",
"upgradeDescription": "Bạn có chắc chắn muốn thực hiện nâng cấp hệ thống không? Thao tác này có thể mất vài phút và trong thời gian đó hệ thống có thể không phản hồi.",
"userAgent": "Tác nhân người dùng",
"viewLogsAndManage": "Xem nhật ký hệ thống, thực hiện nâng cấp và khởi động lại hệ thống"
}
+38
View File
@@ -0,0 +1,38 @@
{
"actions": "Hành động",
"balance": "Số dư",
"cancel": "Hủy",
"confirm": "Xác nhận",
"confirmDelete": "Bạn có chắc chắn muốn xóa không?",
"create": "Tạo",
"createSuccess": "Tạo thành công",
"createUser": "Tạo người dùng",
"createdAt": "Thời gian đăng ký",
"delete": "Xóa",
"deleteDescription": "Sau khi xóa, dữ liệu không thể khôi phục, hãy thao tác cẩn thận.",
"deleteSuccess": "Xóa thành công",
"edit": "Chỉnh sửa",
"editUser": "Chỉnh sửa người dùng",
"email": "Email",
"enable": "Kích hoạt",
"form": {
"balance": "Số dư",
"balancePlaceholder": "Số dư",
"cancel": "Hủy",
"confirm": "Xác nhận",
"invalidEmailFormat": "Định dạng email không hợp lệ",
"inviteCode": "Mã mời",
"inviteCodePlaceholder": "Vui lòng nhập mã mời (để trống sẽ tự động tạo)",
"manager": "Quản trị viên",
"password": "Mật khẩu",
"passwordPlaceholder": "Vui lòng nhập mật khẩu mới (có thể để trống)",
"refererId": "ID người giới thiệu",
"refererIdPlaceholder": "Vui lòng nhập ID người giới thiệu",
"userEmail": "Email người dùng",
"userEmailPlaceholder": "Vui lòng nhập email người dùng"
},
"referer": "Người giới thiệu",
"updateSuccess": "Cập nhật thành công",
"userList": "Danh sách người dùng",
"userName": "Email người dùng"
}