diff --git a/src/locales/en.json b/src/locales/en.json index 6824c06..220efac 100644 --- a/src/locales/en.json +++ b/src/locales/en.json @@ -1930,7 +1930,7 @@ }, "broadcasts": { "title": "Broadcasts", - "subtitle": "History and management", + "subtitle": "Mass sending of messages to users", "create": "Create Broadcast", "empty": "No broadcasts", "selectFilter": "Select audience", diff --git a/src/locales/fa.json b/src/locales/fa.json index 224e3ec..aecb63f 100644 --- a/src/locales/fa.json +++ b/src/locales/fa.json @@ -276,7 +276,7 @@ "traffic": "ترافیک", "devices": "دستگاه‌ها", "expiredDate": "منقضی شده", - "activeUntil": "منقضی شده — تا {{date}}" + "activeUntil": "فعال تا" }, "deviceLimitReached": "برای افزودن دستگاه جدید، دستگاه‌های فعلی را قطع کنید", "suspended": { @@ -287,9 +287,9 @@ "showAll": "نمایش همه", "subscriptions": "اشتراک‌ها", "connectDevice": "اتصال دستگاه", - "devicesConnectedUnlimited": "{{count}} دستگاه متصل", + "devicesConnectedUnlimited": "{{used}} دستگاه متصل · نامحدود", "devicesOfMax": "{{used}} از {{max}}", - "maxUsage": "حداکثر", + "maxUsage": "حداکثر {{amount}}", "remaining": "باقی‌مانده", "stats": { "balance": "موجودی", @@ -298,9 +298,9 @@ "tariff": "تعرفه", "trafficUsageTitle": "مصرف ترافیک", "trialOffer": { - "freeDesc": "{{days}} روز رایگان آزمایش کنید — بدون پرداخت", + "freeDesc": "وی‌پی‌ان ما را رایگان امتحان کنید: بدون هیچ تعهدی", "freeTitle": "دوره آزمایشی رایگان", - "paidDesc": "{{days}} روز آزمایشی فقط با {{price}}", + "paidDesc": "با یک اشتراک آزمایشی شروع کنید", "paidTitle": "دوره آزمایشی پرداختی" }, "unlimited": "نامحدود", @@ -458,7 +458,7 @@ "newDeviceLimit": "محدودیت جدید دستگاه", "reduce": "کاهش", "reduceDevices": "کاهش تعداد دستگاه‌ها", - "reduceDevicesDescription": "محدودیت دستگاه‌های خود را تنظیم کنید. در صورت لزوم ابتدا دستگاه‌های اضافه را قطع کنید", + "reduceDevicesDescription": "می‌توانید تعداد دستگاه‌ها را تا حداقل مجاز در تعرفه کاهش دهید", "reduceDevicesTitle": "کاهش تعداد دستگاه‌ها", "reduceUnavailable": "در حال حاضر کاهش تعداد دستگاه‌ها امکان‌پذیر نیست", "reducing": "در حال کاهش…" @@ -604,9 +604,9 @@ "confirmDelete": "اشتراک حذف شود؟", "cta": { "renewHint": "اشتراک منقضی شده — برای ادامه استفاده تمدید کنید", - "activeHint": "اشتراک فعال است — می‌توانید دستگاه‌ها را متصل کرده و از VPN استفاده کنید", - "expiredHint": "اشتراک منقضی شده — برای ادامه استفاده تمدید کنید", - "trialHint": "شما در دوره آزمایشی هستید — برای دسترسی به همه امکانات به تعرفه پرداختی ارتقا دهید" + "activeHint": "تمدید و تغییر تعرفه", + "expiredHint": "یک تعرفه انتخاب و پرداخت کنید", + "trialHint": "ترافیک و دستگاه بیشتر" }, "dailyAutoCharge": "برداشت خودکار روزانه", "defaultName": "اشتراک", @@ -626,16 +626,16 @@ "statusTrial": "آزمایشی", "daysShort": "روز", "expiredBanner": { - "selectTariff": "تعرفه را انتخاب کنید", + "selectTariff": "اشتراک شما منقضی شده است. برای بازیابی دسترسی به VPN، یک تعرفه را از پایین انتخاب کنید.", "title": "اشتراک منقضی شده است" }, "trialInfo": { - "description": "{{days}} روز سرویس ما را رایگان امتحان کنید", - "remaining": "{{count}} روز باقی‌مانده", + "description": "شما در حال استفاده از نسخهٔ آزمایشی سرویس هستید. برای دسترسی کامل، یک تعرفه را در پایین انتخاب کنید.", + "remaining": "باقی‌مانده", "title": "دوره آزمایشی" }, "trialUpgrade": { - "description": "برای دسترسی به همه امکانات و ادامه استفاده به اشتراک پرداختی ارتقا دهید", + "description": "دوره آزمایشی شما به‌زودی به پایان می‌رسد. برای ادامه استفاده از VPN بدون محدودیت، یک تعرفه مناسب انتخاب کنید.", "title": "ارتقای اشتراک" } }, @@ -1008,7 +1008,7 @@ "noSubscription": "برای چرخاندن گردونه نیاز به اشتراک فعال دارید. ابتدا اشتراک خود را فعال کنید.", "selectSubscription": "ابتدا یک اشتراک انتخاب کنید" }, - "payWithStars": "پرداخت {stars} Stars", + "payWithStars": "پرداخت Stars", "processingPayment": "در حال پردازش...", "starsPaymentSuccess": "پرداخت موفق! نتیجه به تلگرام ارسال شد.", "starsPaymentFailed": "پرداخت ناموفق. دوباره تلاش کنید.", @@ -1564,7 +1564,7 @@ }, "broadcasts": { "title": "نشریات", - "subtitle": "تاریخچه و مدیریت", + "subtitle": "ارسال گروهی پیام به کاربران", "create": "ایجاد پیام", "empty": "هیچ نشریه‌ای نیست", "selectFilter": "انتخاب مخاطبین", @@ -1652,46 +1652,46 @@ "telegramSection": "ارسال انبوه تلگرام" }, "pinnedMessages": { - "title": "Pinned Messages", - "subtitle": "Manage pinned messages for users", - "create": "Create", - "empty": "No pinned messages", - "content": "Message text", - "contentPlaceholder": "Enter pinned message text...", - "noContent": "No text", - "media": "Media file", - "addMedia": "Add media", - "uploading": "Uploading...", - "settings": "Settings", - "sendBeforeMenu": "Send before menu", - "sendOnEveryStart": "Send on every start", - "broadcast": "Broadcast", - "broadcastOnCreate": "Broadcast on create", - "broadcastConfirm": "Broadcast pinned message to all active users?", - "broadcastToAll": "Broadcast to all", - "activate": "Activate", - "deactivate": "Deactivate", - "unpin": "Unpin", - "unpinAll": "Unpin for everyone", - "unpinConfirm": "Unpin message for all users?", - "delete": "Delete", - "deleteConfirm": "Delete this pinned message?", - "active": "Active", - "inactive": "Inactive", - "prev": "Previous", - "next": "Next", - "createSuccess": "Pinned message created", - "updateSuccess": "Message updated", - "deleteSuccess": "Message deleted", - "activateSuccess": "Message activated", - "deactivateSuccess": "Message deactivated", - "broadcastSuccess": "Broadcast completed", - "unpinSuccess": "Messages unpinned", - "sentCount": "Sent", - "failedCount": "Failed", - "unpinnedCount": "Unpinned", - "editMessage": "Edit", - "cantDeleteActive": "Cannot delete active message" + "title": "پیام‌های سنجاق‌شده", + "subtitle": "مدیریت پیام‌های سنجاق‌شده برای کاربران", + "create": "ایجاد", + "empty": "هیچ پیام سنجاق‌شده‌ای وجود ندارد", + "content": "متن پیام", + "contentPlaceholder": "متن پیام سنجاق‌شده را وارد کنید...", + "noContent": "بدون متن", + "media": "فایل رسانه", + "addMedia": "افزودن رسانه", + "uploading": "در حال بارگذاری...", + "settings": "تنظیمات", + "sendBeforeMenu": "ارسال قبل از منو", + "sendOnEveryStart": "ارسال در هر بار شروع", + "broadcast": "ارسال همگانی", + "broadcastOnCreate": "ارسال همگانی هنگام ایجاد", + "broadcastConfirm": "پیام سنجاق‌شده برای همه کاربران فعال ارسال شود؟", + "broadcastToAll": "ارسال به همه", + "activate": "فعال‌سازی", + "deactivate": "غیرفعال‌سازی", + "unpin": "برداشتن سنجاق", + "unpinAll": "برداشتن سنجاق برای همه", + "unpinConfirm": "سنجاق پیام برای همه کاربران برداشته شود؟", + "delete": "حذف", + "deleteConfirm": "این پیام سنجاق‌شده حذف شود؟", + "active": "فعال", + "inactive": "غیرفعال", + "prev": "قبلی", + "next": "بعدی", + "createSuccess": "پیام سنجاق‌شده ایجاد شد", + "updateSuccess": "پیام به‌روزرسانی شد", + "deleteSuccess": "پیام حذف شد", + "activateSuccess": "پیام فعال شد", + "deactivateSuccess": "پیام غیرفعال شد", + "broadcastSuccess": "ارسال همگانی تکمیل شد", + "unpinSuccess": "سنجاق پیام‌ها برداشته شد", + "sentCount": "ارسال‌شده", + "failedCount": "ناموفق", + "unpinnedCount": "سنجاق‌برداشته", + "editMessage": "ویرایش", + "cantDeleteActive": "نمی‌توان پیام فعال را حذف کرد" }, "channelSubscriptions": { "title": "کانال‌های اجباری", @@ -2005,7 +2005,7 @@ "builtinButtons": "بخش‌های داخلی", "resetConfirm": "منو به تنظیمات پیش‌فرض بازنشانی شود؟ تمام تغییرات از بین می‌رود.", "buttonTextPlaceholder": "متن دکمه", - "customLabelsHint": "متن دکمه برای هر زبان ربات", + "customLabelsHint": "خالی = عنوان پیش‌فرض", "moveUp": "انتقال به بالا", "moveDown": "انتقال به پایین", "openIn": "باز کردن در", @@ -2625,10 +2625,10 @@ "programEnabled": "برنامه معرفی فعال است", "programEnabledDesc": "تمام عملکرد ارجاع را فعال می‌کند", "requisitesText": "متن اطلاعات حساب", - "requisitesTextDesc": "در فرم درخواست همکاری به کاربر نمایش داده می‌شود", + "requisitesTextDesc": "متن سفارشی برای توضیح به کاربران که هنگام برداشت چه اطلاعات پرداختی را وارد کنند", "requisitesTextPlaceholder": "اطلاعات حساب خود را وارد کنید...", "withdrawalEnabled": "برداشت مجاز است", - "withdrawalEnabledDesc": "به کاربران اجازه می‌دهد درخواست برداشت بدهند" + "withdrawalEnabledDesc": "اجازه دادن به همکاران برای درخواست برداشت موجودی معرفی" }, "settingsLoadError": "بارگذاری تنظیمات همکاری ناموفق بود", "settingsSection": { @@ -3398,7 +3398,7 @@ "usersOnlineCount": "{{count}} آنلاین" }, "overview": { - "bandwidth": "پهنای باند لحظه‌ای", + "bandwidth": "ترافیک ورودی‌ها", "connections": "اتصالات", "cpu": "هسته‌های CPU", "download": "دانلود", @@ -4940,33 +4940,33 @@ }, "activateButton": "فعال‌سازی", "activateCodePlaceholder": "کد هدیه را وارد کنید", - "activatedBy": "توسط {{name}} فعال شد", + "activatedBy": "توسط {{username}} فعال شد", "activateDescription": "برای فعال‌سازی اشتراک، کد هدیه دریافتی را وارد کنید", "activatedGiftsTitle": "هدایای فعال‌شده", "activateError": "فعال‌سازی هدیه ناموفق بود", "activateSelfError": "نمی‌توانید هدیه خودتان را فعال کنید", "activateSuccess": "هدیه فعال شد!", - "activateSuccessDesc": "اشتراک به حساب شما افزوده شد", + "activateSuccessDesc": "{{tariff}}: {{days}} روز به اشتراک شما اضافه شد", "activateTitle": "فعال‌سازی هدیه", "activeGiftsTitle": "هدایای فعال", "codeLabel": "کد هدیه", "codeReadyTitle": "کد هدیه شما آماده است", "copyMessage": "کپی پیام", "daysShort": "روز", - "deviceCount": "تعداد دستگاه‌ها", + "deviceCount": "{{count}} دستگاه", "devicesShort": "دستگاه", "gbShort": "گیگابایت", "myGiftsEmpty": "هنوز هدیه‌ای ندارید", - "myGiftsEmptyDesc": "هدایایی که ارسال یا دریافت می‌کنید اینجا نمایش داده می‌شوند", + "myGiftsEmptyDesc": "برای یک دوست هدیه بخرید یا کد دریافتی را فعال کنید", "pageTitle": "هدایا", "receivedGiftsTitle": "هدایای دریافت‌شده", "selectPeriod": "دوره را انتخاب کنید", "selectTariff": "تعرفه را انتخاب کنید", - "sentTo": "به {{name}} ارسال شد", + "sentTo": "به {{recipient}} ارسال شد", "shareGift": "به اشتراک گذاشتن هدیه", - "shareModalActivateVia": "از طریق فعال‌سازی", + "shareModalActivateVia": "فعال‌سازی از طریق ربات:", "shareModalActivateViaCabinet": "از طریق کابین", - "shareText": "برای شما هدیه‌ای از Bedolaga VPN دارم: {{code}}", + "shareText": "برای تو یک هدیهٔ Bedolaga VPN دارم، از همین‌جا فعالش کن:", "shareToastCopied": "لینک کپی شد", "statusActivated": "فعال شده", "statusAvailable": "قابل فعال‌سازی", diff --git a/src/locales/zh.json b/src/locales/zh.json index 7ebb9af..07c05de 100644 --- a/src/locales/zh.json +++ b/src/locales/zh.json @@ -20,7 +20,7 @@ "delete": "删除", "currency": "¥", "copy": "复制", - "all": "All", + "all": "全部", "add": "添加", "refresh": "刷新", "retry": "重试", @@ -276,7 +276,7 @@ "traffic": "流量", "devices": "设备", "expiredDate": "过期时间", - "activeUntil": "已过期 — 至 {{date}}" + "activeUntil": "有效期至" }, "deviceLimitReached": "断开设备以添加新设备", "suspended": { @@ -287,9 +287,9 @@ "showAll": "全部显示", "subscriptions": "订阅", "connectDevice": "连接设备", - "devicesConnectedUnlimited": "已连接 {{count}} 台设备", + "devicesConnectedUnlimited": "已连接 {{used}} 台设备 · 无限制", "devicesOfMax": "{{used}} / {{max}}", - "maxUsage": "最大", + "maxUsage": "最大 {{amount}}", "remaining": "剩余", "stats": { "balance": "余额", @@ -298,9 +298,9 @@ "tariff": "套餐", "trafficUsageTitle": "流量使用", "trialOffer": { - "freeDesc": "免费试用 {{days}} 天 — 无需付款", + "freeDesc": "免费试用我们的 VPN:无需任何承诺", "freeTitle": "免费试用", - "paidDesc": "{{days}} 天试用,仅需 {{price}}", + "paidDesc": "从试用订阅开始吧", "paidTitle": "付费试用" }, "unlimited": "无限", @@ -458,7 +458,7 @@ "newDeviceLimit": "新设备限制", "reduce": "减少", "reduceDevices": "减少设备数量", - "reduceDevicesDescription": "调整您的设备限制。如有需要,请先断开多余设备的连接", + "reduceDevicesDescription": "您可以将设备数量减少至套餐的最低限制", "reduceDevicesTitle": "减少设备数量", "reduceUnavailable": "当前无法减少设备数量", "reducing": "正在减少…" @@ -604,9 +604,9 @@ "confirmDelete": "删除订阅?", "cta": { "renewHint": "订阅已过期 — 续订以继续使用", - "activeHint": "订阅有效 — 您可以连接设备并使用 VPN", - "expiredHint": "订阅已过期 — 续订以继续使用", - "trialHint": "您正在试用中 — 升级到付费套餐以解锁所有功能" + "activeHint": "续费和更换套餐", + "expiredHint": "选择套餐并付款", + "trialHint": "更多流量和设备" }, "dailyAutoCharge": "每日自动扣费", "defaultName": "订阅", @@ -626,16 +626,16 @@ "statusTrial": "试用", "daysShort": "天", "expiredBanner": { - "selectTariff": "选择套餐", + "selectTariff": "您的订阅已到期。请在下方选择套餐,以恢复 VPN 访问。", "title": "订阅已过期" }, "trialInfo": { - "description": "免费试用我们的服务 {{days}} 天", - "remaining": "剩余 {{count}} 天", + "description": "您正在使用服务的试用版。请在下方选择套餐以获得完整访问权限。", + "remaining": "剩余", "title": "试用期" }, "trialUpgrade": { - "description": "升级到付费订阅以解锁所有功能并继续使用", + "description": "您的试用期即将结束。请选择合适的套餐,以继续无限制使用 VPN。", "title": "升级订阅" } }, @@ -1012,7 +1012,7 @@ "noSubscription": "需要有效订阅才能转动轮盘。请先激活订阅。", "selectSubscription": "请先选择订阅" }, - "payWithStars": "支付 {stars} Stars", + "payWithStars": "支付 Stars", "processingPayment": "处理中...", "starsPaymentSuccess": "支付成功!抽奖结果已发送到Telegram。", "starsPaymentFailed": "支付失败。请重试。", @@ -1667,7 +1667,7 @@ }, "broadcasts": { "title": "广播", - "subtitle": "历史和管理", + "subtitle": "向用户群发消息", "create": "创建群发", "empty": "没有广播", "selectFilter": "选择受众", @@ -2072,7 +2072,7 @@ "builtinButtons": "内置栏目", "resetConfirm": "将菜单重置为默认设置?所有更改将丢失。", "buttonTextPlaceholder": "按钮文本", - "customLabelsHint": "每种语言的按钮文本", + "customLabelsHint": "留空 = 默认名称", "moveUp": "上移", "moveDown": "下移", "openIn": "打开方式", @@ -2624,10 +2624,10 @@ "programEnabled": "推荐计划已启用", "programEnabledDesc": "启用整个推荐人功能", "requisitesText": "收款信息文本", - "requisitesTextDesc": "将在合作申请表单中向用户显示", + "requisitesTextDesc": "自定义提示,告知用户提现时需填写的收款信息", "requisitesTextPlaceholder": "请输入您的收款信息...", "withdrawalEnabled": "允许提款", - "withdrawalEnabledDesc": "允许用户请求提款" + "withdrawalEnabledDesc": "允许合作伙伴申请提现推荐余额" }, "settingsLoadError": "加载推荐设置失败", "settingsSection": { @@ -3406,7 +3406,7 @@ "usersOnlineCount": "{{count}} 在线" }, "overview": { - "bandwidth": "实时带宽", + "bandwidth": "各 inbound 流量", "connections": "连接数", "cpu": "CPU核心", "download": "下载", @@ -4939,33 +4939,33 @@ }, "activateButton": "激活", "activateCodePlaceholder": "输入礼物代码", - "activatedBy": "由 {{name}} 激活", + "activatedBy": "由 {{username}} 激活", "activateDescription": "输入您收到的礼物代码以激活订阅", "activatedGiftsTitle": "已激活的礼物", "activateError": "激活礼物失败", "activateSelfError": "您不能激活自己的礼物", "activateSuccess": "礼物已激活!", - "activateSuccessDesc": "订阅已添加到您的账户", + "activateSuccessDesc": "{{tariff}}:已为您的订阅添加 {{days}} 天", "activateTitle": "激活礼物", "activeGiftsTitle": "活跃的礼物", "codeLabel": "礼物代码", "codeReadyTitle": "您的礼物代码已就绪", "copyMessage": "复制消息", "daysShort": "天", - "deviceCount": "设备数", + "deviceCount": "{{count}} 台设备", "devicesShort": "台", "gbShort": "GB", "myGiftsEmpty": "暂无礼物", - "myGiftsEmptyDesc": "您发送或收到的礼物将显示在这里", + "myGiftsEmptyDesc": "为好友购买礼物,或激活已收到的兑换码", "pageTitle": "礼物", "receivedGiftsTitle": "已收到的礼物", "selectPeriod": "选择时长", "selectTariff": "选择套餐", - "sentTo": "已发送给 {{name}}", + "sentTo": "已发送给 {{recipient}}", "shareGift": "分享礼物", - "shareModalActivateVia": "通过以下方式激活", + "shareModalActivateVia": "通过机器人激活:", "shareModalActivateViaCabinet": "通过个人中心", - "shareText": "我为您准备了一份 Bedolaga VPN 礼物:{{code}}", + "shareText": "我给你准备了一份 Bedolaga VPN 礼物,在这里激活它:", "shareToastCopied": "链接已复制", "statusActivated": "已激活", "statusAvailable": "可激活",