Fixes: 1) Harmonize inconsistent whitespace across translation files. Extra: Address formatting issues in translation strings for better readability and maintainability.
441 lines
13 KiB
Text
441 lines
13 KiB
Text
#
|
||
msgid ""
|
||
msgstr ""
|
||
"Project-Id-Version: EVIBES 3.0.0\n"
|
||
"Report-Msgid-Bugs-To: \n"
|
||
"POT-Creation-Date: 2025-10-04 01:50+0300\n"
|
||
"PO-Revision-Date: 2025-01-30 03:27+0000\n"
|
||
"Last-Translator: EGOR GORBUNOV <CONTACT@FUREUNOIR.COM>\n"
|
||
"Language-Team: BRITISH ENGLISH <CONTACT@FUREUNOIR.COM>\n"
|
||
"Language: vi-vn\n"
|
||
"MIME-Version: 1.0\n"
|
||
"Content-Type: text/plain; charset=UTF-8\n"
|
||
"Content-Transfer-Encoding: 8bit\n"
|
||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||
|
||
#: vibes_auth/admin.py:36 vibes_auth/admin.py:37
|
||
#: vibes_auth/graphene/object_types.py:46
|
||
msgid "balance"
|
||
msgstr "Cân bằng"
|
||
|
||
#: vibes_auth/admin.py:45
|
||
msgid "order"
|
||
msgstr "Đặt hàng"
|
||
|
||
#: vibes_auth/admin.py:46 vibes_auth/graphene/object_types.py:44
|
||
msgid "orders"
|
||
msgstr "Đơn hàng"
|
||
|
||
#: vibes_auth/admin.py:56
|
||
msgid "personal info"
|
||
msgstr "Thông tin cá nhân"
|
||
|
||
#: vibes_auth/admin.py:60 vibes_auth/graphene/object_types.py:43
|
||
msgid "permissions"
|
||
msgstr "Quyền"
|
||
|
||
#: vibes_auth/admin.py:73
|
||
msgid "important dates"
|
||
msgstr "Các ngày quan trọng"
|
||
|
||
#: vibes_auth/admin.py:74
|
||
msgid "additional info"
|
||
msgstr "Thông tin bổ sung"
|
||
|
||
#: vibes_auth/apps.py:8
|
||
msgid "authentication"
|
||
msgstr "Xác thực"
|
||
|
||
#: vibes_auth/docs/drf/views.py:15
|
||
msgid "obtain a token pair"
|
||
msgstr "Nhận cặp token"
|
||
|
||
#: vibes_auth/docs/drf/views.py:16
|
||
msgid "obtain a token pair (refresh and access) for authentication."
|
||
msgstr "Nhận cặp token (refresh và access) để xác thực."
|
||
|
||
#: vibes_auth/docs/drf/views.py:35
|
||
msgid "refresh a token pair"
|
||
msgstr "Cập nhật cặp token"
|
||
|
||
#: vibes_auth/docs/drf/views.py:36
|
||
msgid "refresh a token pair (refresh and access)."
|
||
msgstr "Cập nhật cặp token (cập nhật và truy cập)."
|
||
|
||
#: vibes_auth/docs/drf/views.py:55
|
||
msgid "verify a token"
|
||
msgstr "Xác minh token"
|
||
|
||
#: vibes_auth/docs/drf/views.py:56
|
||
msgid "Verify a token (refresh or access)."
|
||
msgstr "Xác minh token (cập nhật hoặc truy cập)."
|
||
|
||
#: vibes_auth/docs/drf/views.py:62 vibes_auth/views.py:115
|
||
msgid "the token is valid"
|
||
msgstr "Token này hợp lệ"
|
||
|
||
#: vibes_auth/docs/drf/viewsets.py:16
|
||
msgid "create a new user"
|
||
msgstr "Tạo một người dùng mới"
|
||
|
||
#: vibes_auth/docs/drf/viewsets.py:21
|
||
msgid "retrieve a user's details"
|
||
msgstr "Lấy thông tin chi tiết của người dùng"
|
||
|
||
#: vibes_auth/docs/drf/viewsets.py:25
|
||
msgid "update a user's details"
|
||
msgstr "Cập nhật thông tin của người dùng"
|
||
|
||
#: vibes_auth/docs/drf/viewsets.py:30
|
||
msgid "delete a user"
|
||
msgstr "Xóa người dùng"
|
||
|
||
#: vibes_auth/docs/drf/viewsets.py:34
|
||
msgid "reset a user's password by sending a reset password email"
|
||
msgstr "Đặt lại mật khẩu của người dùng bằng cách gửi email đặt lại mật khẩu."
|
||
|
||
#: vibes_auth/docs/drf/viewsets.py:39
|
||
msgid "handle avatar upload for a user"
|
||
msgstr "Xử lý việc tải lên avatar cho người dùng"
|
||
|
||
#: vibes_auth/docs/drf/viewsets.py:54
|
||
msgid "confirm a user's password reset"
|
||
msgstr "Xác nhận việc đặt lại mật khẩu của người dùng"
|
||
|
||
#: vibes_auth/docs/drf/viewsets.py:58 vibes_auth/graphene/mutations.py:311
|
||
#: vibes_auth/serializers.py:105 vibes_auth/serializers.py:109
|
||
#: vibes_auth/viewsets.py:115
|
||
msgid "passwords do not match"
|
||
msgstr "Mật khẩu không khớp."
|
||
|
||
#: vibes_auth/docs/drf/viewsets.py:63
|
||
msgid "activate a user's account"
|
||
msgstr "Kích hoạt tài khoản của người dùng"
|
||
|
||
#: vibes_auth/docs/drf/viewsets.py:67
|
||
msgid "activation link is invalid or account already activated"
|
||
msgstr "Liên kết kích hoạt không hợp lệ hoặc tài khoản đã được kích hoạt."
|
||
|
||
#: vibes_auth/docs/drf/viewsets.py:72
|
||
msgid "merge client-stored recently viewed products"
|
||
msgstr ""
|
||
"Ghép các sản phẩm đã xem gần đây được lưu trữ trên thiết bị của khách hàng"
|
||
|
||
#: vibes_auth/graphene/mutations.py:41
|
||
msgid "the user's b64-encoded uuid who referred the new user to us."
|
||
msgstr ""
|
||
"Mã UUID được mã hóa bằng B64 của người dùng đã giới thiệu người dùng mới cho "
|
||
"chúng tôi."
|
||
|
||
#: vibes_auth/graphene/mutations.py:61
|
||
msgid "password too weak"
|
||
msgstr "Mật khẩu quá yếu."
|
||
|
||
#: vibes_auth/graphene/mutations.py:107
|
||
#, python-brace-format
|
||
msgid "{name} does not exist: {uuid}"
|
||
msgstr "{name} không tồn tại: {uuid}!"
|
||
|
||
#: vibes_auth/graphene/mutations.py:117
|
||
msgid "malformed email"
|
||
msgstr "Email không hợp lệ"
|
||
|
||
#: vibes_auth/graphene/mutations.py:124 vibes_auth/serializers.py:115
|
||
#, python-brace-format
|
||
msgid "malformed phone number: {phone_number}"
|
||
msgstr "Số điện thoại không hợp lệ: {phone_number}!"
|
||
|
||
#: vibes_auth/graphene/mutations.py:146
|
||
#, python-brace-format
|
||
msgid "Invalid attribute format: {attribute_pair}"
|
||
msgstr "Định dạng thuộc tính không hợp lệ: {attribute_pair}!"
|
||
|
||
#: vibes_auth/graphene/mutations.py:267 vibes_auth/viewsets.py:158
|
||
#: vibes_auth/viewsets.py:177
|
||
msgid "activation link is invalid!"
|
||
msgstr "Liên kết kích hoạt không hợp lệ!"
|
||
|
||
#: vibes_auth/graphene/mutations.py:270
|
||
msgid "account already activated..."
|
||
msgstr "Tài khoản đã được kích hoạt..."
|
||
|
||
#: vibes_auth/graphene/mutations.py:277 vibes_auth/graphene/mutations.py:329
|
||
msgid "something went wrong: {e!s}"
|
||
msgstr "Có sự cố xảy ra: {e!s}"
|
||
|
||
#: vibes_auth/graphene/mutations.py:318 vibes_auth/viewsets.py:126
|
||
msgid "token is invalid!"
|
||
msgstr "Token không hợp lệ!"
|
||
|
||
#: vibes_auth/graphene/object_types.py:40
|
||
msgid ""
|
||
"the products this user has viewed most recently (max 48), in reverse‐"
|
||
"chronological order"
|
||
msgstr ""
|
||
"Các sản phẩm mà người dùng này đã xem gần đây nhất (tối đa 48), theo thứ tự "
|
||
"thời gian ngược."
|
||
|
||
#: vibes_auth/graphene/object_types.py:42 vibes_auth/models.py:180
|
||
msgid "groups"
|
||
msgstr "Nhóm"
|
||
|
||
#: vibes_auth/graphene/object_types.py:45
|
||
msgid "wishlist"
|
||
msgstr "Danh sách mong muốn"
|
||
|
||
#: vibes_auth/graphene/object_types.py:47 vibes_auth/models.py:102
|
||
msgid "avatar"
|
||
msgstr "Avatar"
|
||
|
||
#: vibes_auth/graphene/object_types.py:48
|
||
msgid "attributes may be used to store custom data"
|
||
msgstr "Các thuộc tính có thể được sử dụng để lưu trữ dữ liệu tùy chỉnh."
|
||
|
||
#: vibes_auth/graphene/object_types.py:49
|
||
#, python-brace-format
|
||
msgid "language is one of the {LANGUAGES} with default {LANGUAGE_CODE}"
|
||
msgstr "Ngôn ngữ là một trong những {LANGUAGES} với mặc định {LANGUAGE_CODE}"
|
||
|
||
#: vibes_auth/graphene/object_types.py:50
|
||
msgid "address set"
|
||
msgstr "Địa chỉ"
|
||
|
||
#: vibes_auth/models.py:85
|
||
msgid "email"
|
||
msgstr "Email"
|
||
|
||
#: vibes_auth/models.py:85
|
||
msgid "user email address"
|
||
msgstr "Địa chỉ email của người dùng"
|
||
|
||
#: vibes_auth/models.py:87
|
||
msgid "phone_number"
|
||
msgstr "Số điện thoại"
|
||
|
||
#: vibes_auth/models.py:92
|
||
msgid "user phone number"
|
||
msgstr "Số điện thoại của người dùng"
|
||
|
||
#: vibes_auth/models.py:98
|
||
msgid "first_name"
|
||
msgstr "Họ"
|
||
|
||
#: vibes_auth/models.py:99
|
||
msgid "last_name"
|
||
msgstr "Họ"
|
||
|
||
#: vibes_auth/models.py:105
|
||
msgid "user profile image"
|
||
msgstr "Hình ảnh hồ sơ người dùng"
|
||
|
||
#: vibes_auth/models.py:110
|
||
msgid "is verified"
|
||
msgstr "Đã được xác minh"
|
||
|
||
#: vibes_auth/models.py:111
|
||
msgid "user verification status"
|
||
msgstr "Trạng thái xác minh của người dùng"
|
||
|
||
#: vibes_auth/models.py:114
|
||
msgid "is_active"
|
||
msgstr "Đang hoạt động"
|
||
|
||
#: vibes_auth/models.py:116
|
||
msgid "unselect this instead of deleting accounts"
|
||
msgstr "Hủy chọn tùy chọn này thay vì xóa tài khoản."
|
||
|
||
#: vibes_auth/models.py:119
|
||
msgid "is_subscribed"
|
||
msgstr "Đã đăng ký"
|
||
|
||
#: vibes_auth/models.py:119
|
||
msgid "user's newsletter subscription status"
|
||
msgstr "Tình trạng đăng ký bản tin của người dùng"
|
||
|
||
#: vibes_auth/models.py:122
|
||
msgid "activation token"
|
||
msgstr "Mã kích hoạt"
|
||
|
||
#: vibes_auth/models.py:124
|
||
msgid "attributes"
|
||
msgstr "Thuộc tính"
|
||
|
||
#: vibes_auth/models.py:158
|
||
msgid "user"
|
||
msgstr "Người dùng"
|
||
|
||
#: vibes_auth/models.py:159
|
||
msgid "users"
|
||
msgstr "Người dùng"
|
||
|
||
#: vibes_auth/models.py:179
|
||
msgid "group"
|
||
msgstr "Nhóm"
|
||
|
||
#: vibes_auth/models.py:196
|
||
msgid "outstanding token"
|
||
msgstr "Token xuất sắc"
|
||
|
||
#: vibes_auth/models.py:197
|
||
msgid "outstanding tokens"
|
||
msgstr "Token xuất sắc"
|
||
|
||
#: vibes_auth/models.py:215
|
||
msgid "blacklisted token"
|
||
msgstr "Token bị đưa vào danh sách đen"
|
||
|
||
#: vibes_auth/models.py:216
|
||
msgid "blacklisted tokens"
|
||
msgstr "Các token bị đưa vào danh sách đen"
|
||
|
||
#: vibes_auth/serializers.py:99
|
||
msgid "attributes must be a dictionary"
|
||
msgstr "`attributes` phải là một từ điển."
|
||
|
||
#: vibes_auth/serializers.py:101
|
||
msgid "business identificator is required when registering as a business"
|
||
msgstr "Mã định danh doanh nghiệp là bắt buộc khi đăng ký kinh doanh."
|
||
|
||
#: vibes_auth/serializers.py:121
|
||
#, python-brace-format
|
||
msgid "malformed email: {email}"
|
||
msgstr "Email không hợp lệ: {email}"
|
||
|
||
#: vibes_auth/serializers.py:142 vibes_auth/serializers.py:164
|
||
#: vibes_auth/serializers.py:186 vibes_auth/serializers.py:198
|
||
msgid "no active account"
|
||
msgstr "Không tìm thấy tài khoản hoạt động."
|
||
|
||
#: vibes_auth/serializers.py:174
|
||
msgid "must set token_class attribute on class."
|
||
msgstr "Phải đặt thuộc tính token_class cho lớp!"
|
||
|
||
#: vibes_auth/serializers.py:246
|
||
msgid "token_blacklisted"
|
||
msgstr "Token bị đưa vào danh sách đen"
|
||
|
||
#: vibes_auth/serializers.py:251
|
||
msgid "invalid token"
|
||
msgstr "Token không hợp lệ"
|
||
|
||
#: vibes_auth/serializers.py:257
|
||
msgid "no user uuid claim present in token"
|
||
msgstr "Không có yêu cầu UUID của người dùng trong token."
|
||
|
||
#: vibes_auth/serializers.py:259
|
||
msgid "user does not exist"
|
||
msgstr "Người dùng không tồn tại"
|
||
|
||
#: vibes_auth/templates/user_reset_password_email.html:7
|
||
msgid "reset your password"
|
||
msgstr "Đặt lại mật khẩu của bạn"
|
||
|
||
#: vibes_auth/templates/user_reset_password_email.html:85
|
||
#: vibes_auth/templates/user_verification_email.html:85
|
||
msgid "logo"
|
||
msgstr "Biểu trưng"
|
||
|
||
#: vibes_auth/templates/user_reset_password_email.html:90
|
||
msgid "password reset confirmation"
|
||
msgstr "Xác nhận đặt lại mật khẩu"
|
||
|
||
#: vibes_auth/templates/user_reset_password_email.html:91
|
||
#: vibes_auth/templates/user_verification_email.html:91
|
||
#, python-format
|
||
msgid "hello %(user_first_name)s,"
|
||
msgstr "Xin chào %(user_first_name)s,"
|
||
|
||
#: vibes_auth/templates/user_reset_password_email.html:92
|
||
msgid ""
|
||
"we have received a request to reset your password. please reset your "
|
||
"password\n"
|
||
" by clicking the button below:"
|
||
msgstr ""
|
||
"Chúng tôi đã nhận được yêu cầu đặt lại mật khẩu của bạn. Vui lòng đặt lại "
|
||
"mật khẩu bằng cách nhấp vào nút bên dưới:"
|
||
|
||
#: vibes_auth/templates/user_reset_password_email.html:95
|
||
msgid ""
|
||
"reset\n"
|
||
" password"
|
||
msgstr "Kích hoạt tài khoản"
|
||
|
||
#: vibes_auth/templates/user_reset_password_email.html:98
|
||
#: vibes_auth/templates/user_verification_email.html:99
|
||
msgid ""
|
||
"if the button above does not work, please copy and paste the following URL\n"
|
||
" into your web browser:"
|
||
msgstr ""
|
||
"Nếu nút ở trên không hoạt động, vui lòng sao chép và dán URL sau vào trình "
|
||
"duyệt web của bạn:"
|
||
|
||
#: vibes_auth/templates/user_reset_password_email.html:101
|
||
msgid ""
|
||
"if you did not send this request, please ignore this\n"
|
||
" email."
|
||
msgstr "Nếu bạn không gửi yêu cầu này, vui lòng bỏ qua email này."
|
||
|
||
#: vibes_auth/templates/user_reset_password_email.html:103
|
||
#, python-format
|
||
msgid "best regards,<br>The %(project_name)s team"
|
||
msgstr "Trân trọng,<br>Đội ngũ %(project_name)s"
|
||
|
||
#: vibes_auth/templates/user_reset_password_email.html:109
|
||
#: vibes_auth/templates/user_verification_email.html:108
|
||
msgid "all rights reserved"
|
||
msgstr "Tất cả các quyền được bảo lưu."
|
||
|
||
#: vibes_auth/templates/user_verification_email.html:7
|
||
#: vibes_auth/templates/user_verification_email.html:90
|
||
msgid "activate your account"
|
||
msgstr "Kích hoạt tài khoản của bạn"
|
||
|
||
#: vibes_auth/templates/user_verification_email.html:92
|
||
#, python-format
|
||
msgid ""
|
||
"thank you for signing up for %(project_name)s. please activate your account\n"
|
||
" by clicking the button below:"
|
||
msgstr ""
|
||
"Cảm ơn bạn đã đăng ký cho %(project_name)s. Vui lòng kích hoạt tài khoản của "
|
||
"bạn bằng cách nhấp vào nút bên dưới:"
|
||
|
||
#: vibes_auth/templates/user_verification_email.html:96
|
||
msgid ""
|
||
"activate\n"
|
||
" account"
|
||
msgstr "Kích hoạt tài khoản"
|
||
|
||
#: vibes_auth/templates/user_verification_email.html:102
|
||
#, python-format
|
||
msgid "best regards,<br>the %(project_name)s team"
|
||
msgstr "Trân trọng,<br>Đội ngũ %(project_name)s"
|
||
|
||
#: vibes_auth/utils/emailing.py:27
|
||
#, python-brace-format
|
||
msgid "{config.PROJECT_NAME} | Activate Account"
|
||
msgstr "{config.PROJECT_NAME} | Kích hoạt tài khoản"
|
||
|
||
#: vibes_auth/utils/emailing.py:69
|
||
#, python-brace-format
|
||
msgid "{config.PROJECT_NAME} | Reset Password"
|
||
msgstr "{config.PROJECT_NAME} | Đặt lại mật khẩu"
|
||
|
||
#: vibes_auth/validators.py:13
|
||
msgid ""
|
||
"invalid phone number format. the number must be entered in the format: "
|
||
"\"+999999999\". up to 15 digits allowed."
|
||
msgstr ""
|
||
"Định dạng số điện thoại không hợp lệ. Số điện thoại phải được nhập theo định "
|
||
"dạng: \"+999999999\". Cho phép tối đa 15 chữ số."
|
||
|
||
#: vibes_auth/views.py:117
|
||
msgid "the token is invalid"
|
||
msgstr "Token không hợp lệ"
|
||
|
||
#: vibes_auth/viewsets.py:130
|
||
msgid "password reset successfully"
|
||
msgstr "Mật khẩu đã được đặt lại thành công!"
|
||
|
||
#: vibes_auth/viewsets.py:163
|
||
msgid "account already activated!"
|
||
msgstr "Bạn đã kích hoạt tài khoản..."
|