shahin-io пре 1 година
родитељ
комит
c3d90c3f94

+ 6 - 6
web/html/xui/inbounds.html

@@ -452,22 +452,22 @@
         title: "ID",
         align: 'right',
         dataIndex: "id",
-        width: 40,
+        width: 30,
         responsive: ["xs"],
     }, {
         title: '{{ i18n "pages.inbounds.operate" }}',
         align: 'center',
-        width: 40,
+        width: 30,
         scopedSlots: { customRender: 'action' },
     }, {
         title: '{{ i18n "pages.inbounds.enable" }}',
         align: 'center',
-        width: 40,
+        width: 30,
         scopedSlots: { customRender: 'enable' },
     }, {
         title: '{{ i18n "pages.inbounds.remark" }}',
         align: 'center',
-        width: 80,
+        width: 60,
         dataIndex: "remark",
     }, {
         title: '{{ i18n "pages.inbounds.port" }}',
@@ -477,7 +477,7 @@
     }, {
         title: '{{ i18n "pages.inbounds.protocol" }}',
         align: 'left',
-        width: 90,
+        width: 70,
         scopedSlots: { customRender: 'protocol' },
     }, {
         title: '{{ i18n "clients" }}',
@@ -492,7 +492,7 @@
     }, {
         title: '{{ i18n "pages.inbounds.expireDate" }}',
         align: 'center',
-        width: 60,
+        width: 40,
         scopedSlots: { customRender: 'expiryTime' },
     }];
 

+ 4 - 0
web/html/xui/index.html

@@ -141,6 +141,7 @@
                         <a-card hoverable>
                             <a-row>
                                 <a-col :span="12">
+                                    <a-icon type="global"></a-icon>
                                     IPv4:
                                     <a-tooltip>
                                         <template slot="title">
@@ -150,6 +151,7 @@
                                     </a-tooltip>
                                 </a-col>
                                 <a-col :span="12">
+                                    <a-icon type="global"></a-icon>
                                     IPv6:
                                     <a-tooltip>
                                         <template slot="title">
@@ -165,6 +167,7 @@
                         <a-card hoverable>
                             <a-row>
                                 <a-col :span="12">
+                                    <a-icon type="swap"></a-icon>
                                     TCP:  [[ status.tcpCount ]]
                                     <a-tooltip>
                                         <template slot="title">
@@ -174,6 +177,7 @@
                                     </a-tooltip>
                                 </a-col>
                                 <a-col :span="12">
+                                    <a-icon type="swap"></a-icon>
                                     UDP:  [[ status.udpCount ]]
                                     <a-tooltip>
                                         <template slot="title">

+ 28 - 28
web/translation/translate.en_US.toml

@@ -62,7 +62,7 @@
 "link" = "Manage"
 
 [pages.login]
-"title" = "Login"
+"title" = "Welcome"
 "loginAgain" = "Your session has expired, please log in again"
 
 [pages.login.toasts]
@@ -85,23 +85,23 @@
 "operationHours" = "Uptime"
 "systemLoad" = "System Load"
 "systemLoadDesc" = "System load average for the past 1, 5, and 15 minutes"
-"connectionTcpCountDesc" = "Total TCP connections across all networks"
-"connectionUdpCountDesc" = "Total UDP connections across all networks"
+"connectionTcpCountDesc" = "Total TCP connections across the system"
+"connectionUdpCountDesc" = "Total UDP connections across the system"
 "connectionCount" = "Connection Stats"
-"upSpeed" = "Overall upload speed across all networks"
-"downSpeed" = "Overall download speed across all networks"
-"totalSent" = "Total sent data across all networks since OS startup"
-"totalReceive" = "Total received data across all networks since OS startup"
+"upSpeed" = "Overall upload speed across the system"
+"downSpeed" = "Overall download speed across the system"
+"totalSent" = "Total data sent across the system since OS startup"
+"totalReceive" = "Total data received across the system since OS startup"
 "xraySwitchVersionDialog" = "Change Xray Version"
 "xraySwitchVersionDialogDesc" = "Are you sure you want to change the Xray version to"
 "dontRefresh" = "Installation is in progress, please do not refresh this page"
 "logs" = "Logs"
 "config" = "Config"
 "backup" = "Backup & Restore"
-"backupTitle" = "Backup & Restore Database"
-"backupDescription" = "It is recommended to make a backup before importing a new database."
-"exportDatabase" = "Backup Database"
-"importDatabase" = "Restore Database"
+"backupTitle" = "Database Backup & Restore"
+"backupDescription" = "It is recommended to make a backup before restoring a database."
+"exportDatabase" = "Back Up"
+"importDatabase" = "Restore"
 
 [pages.inbounds]
 "title" = "Inbounds"
@@ -116,7 +116,7 @@
 "traffic" = "Traffic"
 "details" = "Details"
 "transportConfig" = "Transport"
-"expireDate" = "Expiry Date"
+"expireDate" = "Duration"
 "resetTraffic" = "Reset Traffic"
 "addInbound" = "Add Inbound"
 "generalActions" = "General Actions"
@@ -171,8 +171,8 @@
 "IPLimitlogDesc" = "The IPs history log. (to enable inbound after disabling, clear the log)"
 "IPLimitlogclear" = "Clear The Log"
 "setDefaultCert" = "Set Cert from Panel"
-"xtlsDesc" = "Xray needs to be v1.7.5"
-"realityDesc" = "Xray needs to be v1.8.0+"
+"xtlsDesc" = "Xray must be v1.7.5"
+"realityDesc" = "Xray must be v1.8.0+"
 "telegramDesc" = "Please provide Telegram or chat ID(s) without using the '@'. (get it here @userinfobot) or (use '/id' command in the bot)"
 "subscriptionDesc" = "To find your subscription URL, navigate to the 'Details'. Additionally, you can use the same name for several clients."
 "info" = "Info"
@@ -229,7 +229,7 @@
 "restartPanelDesc" = "Are you sure you want to restart the panel? If you cannot access the panel after restarting, please view the panel log info on the server."
 "actions" = "Actions"
 "resetDefaultConfig" = "Reset to Default"
-"panelSettings" = "Configurations"
+"panelSettings" = "General"
 "securitySettings" = "Authentication"
 "TGBotSettings" = "Telegram Bot"
 "panelListeningIP" = "Listen IP"
@@ -259,9 +259,9 @@
 "telegramToken" = "Telegram Token"
 "telegramTokenDesc" = "The Telegram bot token obtained from '@BotFather'."
 "telegramProxy" = "SOCKS Proxy"
-"telegramProxyDesc" = "Enables SOCKS5 proxy for connecting to Telegram. (Adjust settings as per guide)"
+"telegramProxyDesc" = "Enables SOCKS5 proxy for connecting to Telegram. (adjust settings as per guide)"
 "telegramChatId" = "Admin Chat ID"
-"telegramChatIdDesc" = "The Telegram Admin Chat ID(s). (comma-separated)(use @userinfobot) or (use '/id' command in the bot)"
+"telegramChatIdDesc" = "The Telegram Admin Chat ID(s). (comma-separated)(get it here @userinfobot) or (use '/id' command in the bot)"
 "telegramNotifyTime" = "Notification Time"
 "telegramNotifyTimeDesc" = "The Telegram bot notification time set for periodic reports. (use the crontab time format)"
 "tgNotifyBackup" = "Database Backup"
@@ -270,12 +270,12 @@
 "tgNotifyLoginDesc" = "Get notified about the username, IP address, and time whenever someone attempts to log into your web panel."
 "sessionMaxAge" = "Session Duration"
 "sessionMaxAgeDesc" = "The duration for which you can stay logged in. (unit: minute)"
-"expireTimeDiff" = "Expiration Date Threshold Notification"
+"expireTimeDiff" = "Expiration Date Notification"
 "expireTimeDiffDesc" = "Get notified about expiration date when reaching this threshold. (unit: day)"
-"trafficDiff" = "Traffic Exhaustion Threshold Notification"
-"trafficDiffDesc" = "Get notified about traffic exhaustion when reaching this threshold. (unit: GB)"
-"tgNotifyCpu" = "CPU Load Threshold Notification"
-"tgNotifyCpuDesc" = "Get notified if CPU usage exceeds this threshold. (unit: %)"
+"trafficDiff" = "Traffic Cap Notification"
+"trafficDiffDesc" = "Get notified about traffic cap when reaching this threshold. (unit: GB)"
+"tgNotifyCpu" = "CPU Load Notification"
+"tgNotifyCpuDesc" = "Get notified if CPU load exceeds this threshold. (unit: %)"
 "timeZone" = "Time Zone"
 "timeZoneDesc" = "Scheduled tasks will run based on this time zone."
 "subSettings" = "Subscription"
@@ -306,7 +306,7 @@
 "title" = "Xray Configs"
 "save" = "Save"
 "restart" = "Restart Xray"
-"basicTemplate" = "Basic"
+"basicTemplate" = "Basics"
 "advancedTemplate" = "Advanced"
 "generalConfigs" = "General Strategy"
 "generalConfigsDesc" = "These options will determine general strategy adjustments."
@@ -319,9 +319,9 @@
 "ipv4Configs" = "IPv4 Routing"
 "ipv4ConfigsDesc" = "These options will route traffic based on a specific destination via IPv4."
 "warpConfigs" = "WARP Routing"
-"warpConfigsDesc" = "These options will route traffic based on a specific destination via Cloudflare WARP. Caution: First, install WARP on SOCKS5 Proxy Mode by following the steps on the panel's GitHub."
+"warpConfigsDesc" = "These options will route traffic based on a specific destination via WARP. (follow the guide on the Panel’s GitHub)"
 "Template" = "Advanced Xray Configuration Template"
-"TemplateDesc" = "The final Xray configuration file will be generated based on this template."
+"TemplateDesc" = "The final Xray config file will be generated based on this template."
 "FreedomStrategy" = "Freedom Protocol Strategy"
 "FreedomStrategyDesc" = "Set the output strategy for the network in the Freedom Protocol."
 "RoutingStrategy" = "Overall Routing Strategy"
@@ -334,7 +334,7 @@
 "AdsDesc" = "Blocks advertising websites."
 "Family" = "Family Protection"
 "FamilyDesc" = "Blocks adult content, and malware websites."
-"Security" = "Security Protection"
+"Security" = "Security Shield"
 "SecurityDesc" = "Blocks malware, phishing, and cryptominers websites."
 "Speedtest" = "Block Speedtest"
 "SpeedtestDesc" = "Blocks establishing connectins to speedtest websites."
@@ -432,7 +432,7 @@
 [pages.settings.security]
 "admin" = "Admin"
 "secret" = "Secret Token"
-"loginSecurity" = "Login Security"
+"loginSecurity" = "Secure Login"
 "loginSecurityDesc" = "Adds an additional layer of authentication to provide more security."
 "secretToken" = "Secret Token"
 "secretTokenDesc" = "Please securely store this token in a safe place. This token is required for login and cannot be recovered."
@@ -440,7 +440,7 @@
 [pages.settings.toasts]
 "modifySettings" = "Modify Settings"
 "getSettings" = "Get Settings"
-"modifyUser" = "Modify User"
+"modifyUser" = "Modify Admin"
 "originalUserPassIncorrect" = "The Current username or password is invalid"
 "userPassMustBeNotEmpty" = "The new username and password is empty"
 

+ 3 - 3
web/translation/translate.es_ES.toml

@@ -62,7 +62,7 @@
 "link" = "Otro"
 
 [pages.login]
-"title" = "Iniciar Sesión"
+"title" = "Grata"
 "loginAgain" = "El límite de tiempo de inicio de sesión ha expirado. Por favor, inicia sesión nuevamente."
 
 [pages.login.toasts]
@@ -195,10 +195,10 @@
 "prefix" = "Prefijo"
 "postfix" = "Sufijo"
 "delayedStart" = "Iniciar después del primer uso"
-"expireDays" = "Días de Expiración"
+"expireDays" = "Duratio"
 "days" = "día(s)"
 "renew" = "Renovación automática"
-"renewDesc" = "Renovación automática días después del vencimiento. 0 = deshabilitar"
+"renewDesc" = "Auto-renovatio post tutelam receptam. (0 = disable) (unitas: dies)"
 
 [pages.inbounds.toasts]
 "obtain" = "Recibir"

+ 292 - 291
web/translation/translate.fa_IR.toml

@@ -1,5 +1,5 @@
-"username" = "نام کاربری"
-"password" = "رمز عبور"
+"username" = "نامکاربری"
+"password" = "رمزعبور"
 "login" = "ورود"
 "confirm" = "تایید"
 "cancel" = "انصراف"
@@ -12,7 +12,7 @@
 "protocol" = "پروتکل"
 "search" = "جستجو"
 "filter" = "فیلتر"
-"loading" = "در حال بروزرسانی..."
+"loading" = "...در حال بارگذاری"
 "second" = "ثانیه"
 "minute" = "دقیقه"
 "hour" = "ساعت"
@@ -21,94 +21,94 @@
 "indefinite" = "نامحدود"
 "unlimited" = "نامحدود"
 "none" = "هیچ"
-"qrCode" = "QR کد"
+"qrCode" = "QRکد"
 "info" = "اطلاعات بیشتر"
 "edit" = "ویرایش"
 "delete" = "حذف"
 "reset" = "ریست"
-"copySuccess" = "با موفقیت کپی شد"
+"copySuccess" = "باموفقیت کپی‌شد"
 "sure" = "مطمئن"
 "encryption" = "رمزگذاری"
-"transmission" = "راه اتصال"
+"transmission" = "راهاتصال"
 "host" = "آدرس"
 "path" = "مسیر"
-"camouflage" = "استتار"
+"camouflage" = "مبهم‌سازی"
 "status" = "وضعیت"
 "enabled" = "فعال"
 "disabled" = "غیرفعال"
 "depleted" = "منقضی"
-"depletingSoon" = "در حال انقضا"
+"depletingSoon" = "در‌حال‌انقضا"
 "offline" = "آفلاین"
 "online" = "آنلاین"
 "domainName" = "آدرس دامنه"
-"monitor" = "آی پی اتصال"
-"certificate" = "گواهی دیجیتال"
-"fail" = "خطا"
+"monitor" = "آیپی اتصال"
+"certificate" = "گواهی"
+"fail" = "ناموفق"
 "success" = " موفق"
-"getVersion" = "دریافت ورژن"
+"getVersion" = "دریافت نسخه"
 "install" = "نصب"
 "clients" = "کاربران"
 "usage" = "استفاده"
 "secretToken" = "توکن امنیتی"
-"remained" = "باقیمانده"
+"remained" = "باقیمانده"
 "security" = "امنیت"
 
 [menu]
-"dashboard" = "وضعیت سیستم"
-"inbounds" = "سرویس ها"
+"dashboard" = "نمای کلی"
+"inbounds" = "ورودی‌ها"
 "settings" = "تنظیمات پنل"
-"xray" = "الگوی ایکس‌ری"
+"xray" = "پیکربندی ایکس‌ری"
 "logout" = "خروج"
 "link" = "مدیریت"
 
 [pages.login]
-"title" = "ورود به سیستم"
-"loginAgain" = "مدت زمان استفاده به اتمام رسیده ، لطفا دوباره وارد شوید"
+"title" = "خوش‌آمدید"
+"loginAgain" = "مدت زمان استفاده به‌اتمام‌رسیده، لطفا دوباره وارد شوید"
 
 [pages.login.toasts]
-"invalidFormData" = "اطلاعات وارد شده به صورت درست وارد نشده است"
-"emptyUsername" = "نام کاربری خالی میباشد"
-"emptyPassword" = "رمز عبور خالی میباشد"
-"wrongUsernameOrPassword" = "نام کاربری و رمز عبور اشتباه میباشد"
-"successLogin" = "خوش آمدید"
+"invalidFormData" = "اطلاعات به‌درستی وارد نشده‌است"
+"emptyUsername" = "لطفا یک نام‌کاربری وارد کنید‌"
+"emptyPassword" = "لطفا یک رمزعبور وارد کنید"
+"wrongUsernameOrPassword" = "نام‌کاربری یا رمزعبور‌اشتباه‌است"
+"successLogin" = "ورود"
 
 [pages.index]
-"title" = "وضعیت سیستم"
-"memory" = "حافظه رم"
-"hard" = "حافظه دیسک"
-"xrayStatus" = "وضعیت"
+"title" = "نمای کلی"
+"memory" = "RAM"
+"hard" = "Disk"
+"xrayStatus" = "وضعیت‌ایکس‌ری"
 "stopXray" = "توقف"
-"restartXray" = "شروع مجدد"
-"xraySwitch" = "ورژن"
-"xraySwitchClick" = "ورژن مورد نظر را انتخاب کنید"
-"xraySwitchClickDesk" = "لطفا با دقت انتخاب کنید ، در صورت انتخاب اشتباه امکان قطعی سیستم وجود دارد "
-"operationHours" = "آپ تایم سیستم"
-"systemLoad" = "بار سیستم"
+"restartXray" = "شروعمجدد"
+"xraySwitch" = "‌نسخه"
+"xraySwitchClick" = "نسخه مورد نظر را انتخاب کنید"
+"xraySwitchClickDesk" = "لطفا بادقت انتخاب کنید. درصورت انتخاب نسخه قدیمی‌تر، امکان ناهماهنگی با پیکربندی فعلی وجود دارد"
+"operationHours" = "مدت‌کارکرد"
+"systemLoad" = "بارسیستم"
 "systemLoadDesc" = "میانگین بار سیستم برای 1، 5 و 15 دقیقه گذشته"
-"connectionTcpCountDesc" = "مجموع اتصالات TCP در تمام کارت های شبکه"
-"connectionUdpCountDesc" = "مجموع اتصالات UDP در تمام کارت های شبکه"
+"connectionTcpCountDesc" = "در تمام‌شبکه‌ها TCP مجموع‌اتصالات"
+"connectionUdpCountDesc" = "در تمام‌شبکه‌ها UDP مجموع‌اتصالات"
 "connectionCount" = "تعداد کانکشن ها"
-"upSpeed" = "سرعت آپلود در حال حاضر سیستم"
-"downSpeed" = "سرعت دانلود در حال حاضر سیستم"
-"totalSent" = "جمع کل ترافیک آپلود مصرفی"
-"totalReceive" = "جمع کل ترافیک دانلود مصرفی"
-"xraySwitchVersionDialog" = "تغییر ورژن"
-"xraySwitchVersionDialogDesc" = "آیا از تغییر ورژن مطمئن هستین"
-"dontRefresh" = "در حال نصب ، لطفا رفرش نکنید "
-"logs" = "گزارش ها"
-"config" = "تنظیمات"
-"backup" = "پشتیبان گیری و بازیابی"
-"backupTitle" = "پشتیبان گیری و بازیابی دیتابیس"
-"backupDescription" = "به یاد داشته باشید که قبل از وارد کردن یک دیتابیس جدید، نسخه پشتیبان تهیه کنید"
-"exportDatabase" = "دانلود دیتابیس"
-"importDatabase" = "آپلود دیتابیس"
+"upSpeed" = "سرعت کلی آپلود در تمام‌شبکه‌ها"
+"downSpeed" = "‌سرعت کلی دانلود در تمام‌شبکه‌ها"
+"totalSent" = "مجموع ترافیک ارسال‌‌شده پس‌از شروع‌به‌کار سیستم‌عامل"
+"totalReceive" = "مجموع ترافیک دریافت‌شده پس‌از شروع‌به‌کار سیستم‌عامل"
+"xraySwitchVersionDialog" = "تغییر نسخه ایکس‌ری"
+"xraySwitchVersionDialogDesc" = "آیا از تغییر نسخه‌ مطمئن هستید؟"
+"dontRefresh" = "در حال نصب، لطفا صفحه را رفرش نکنید"
+"logs" = "گزارشها"
+"config" = "پیکربندی"
+"backup" = "پشتیبان‌گیری"
+"backupTitle" = "پشتیبان‌گیری دیتابیس"
+"backupDescription" = "توصیه‌می‌شود قبل‌از واردکردن یک دیتابیس جدید، نسخه پشتیبان تهیه کنید"
+"exportDatabase" = " پشتیبان‌گیری"
+"importDatabase" = "بازگرداندن"
 
 [pages.inbounds]
 "title" = "کاربران"
-"totalDownUp" = "جمع آپلود/دانلود"
-"totalUsage" = "جمع کل"
-"inboundCount" = "تعداد سرویس ها"
-"operate" = "فهرست"
+"totalDownUp" = "دریافت/ارسال کل"
+"totalUsage" = "‌‌‌مصرف کل"
+"inboundCount" = "کل ورودی‌ها"
+"operate" = "عملیات"
 "enable" = "فعال"
 "remark" = "نام"
 "protocol" = "پروتکل"
@@ -116,71 +116,71 @@
 "traffic" = "ترافیک"
 "details" = "توضیحات"
 "transportConfig" = "نحوه اتصال"
-"expireDate" = "تاریخ انقضا"
+"expireDate" = "مدت زمان"
 "resetTraffic" = "ریست ترافیک"
-"addInbound" = "اضافه کردن سرویس"
+"addInbound" = "افزودن ورودی"
 "generalActions" = "عملیات کلی"
-"create" = "اضافه کردن"
+"create" = "افزودن"
 "update" = "ویرایش"
-"modifyInbound" = "ویرایش سرویس"
-"deleteInbound" = "حذف سرویس"
-"deleteInboundContent" = "آیا مطمئن به حذف سرویس هستید ؟"
+"modifyInbound" = "ویرایش ورودی"
+"deleteInbound" = "حذف ورودی"
+"deleteInboundContent" = "آیا مطمئن به حذف ورودی هستید؟"
 "deleteClient" = "حذف کاربر"
-"deleteClientContent" = "آیا مطمئن به حذف کاربر هستید ؟"
-"resetTrafficContent" = "آیا مطمئن به ریست ترافیک هستید ؟"
+"deleteClientContent" = "آیا مطمئن به حذف کاربر هستید؟"
+"resetTrafficContent" = "آیا مطمئن به ریست ترافیک هستید؟"
 "copyLink" = "کپی لینک"
 "address" = "آدرس"
 "network" = "شبکه"
 "destinationPort" = "پورت مقصد"
 "targetAddress" = "آدرس مقصد"
-"monitorDesc" = "به طور پیش فرض خالی بگذارید"
+"monitorDesc" = "به‌طور پیش‌فرض خالی‌بگذارید"
 "meansNoLimit" = " =‎ واحد: گیگابایت) نامحدود)"
-"totalFlow" = "کل ترافیک"
-"leaveBlankToNeverExpire" = "خالی بگذارید تا هرگز منقضی نشود"
-"noRecommendKeepDefault" = "توصیه می شود به عنوان پیش فرض حفظ شود"
-"certificatePath" = "مسیر فایل گواهی"
-"certificateContent" = "محتوای فایل گواهی"
+"totalFlow" = "ترافیک کل"
+"leaveBlankToNeverExpire" = "برای منقضی‌نشدن خالی‌بگذارید"
+"noRecommendKeepDefault" = "توصیه‌می‌شود به‌طور پیش‌فرض حفظ‌شود"
+"certificatePath" = "مسیر فایل"
+"certificateContent" = "محتوای فایل"
 "publicKeyPath" = "مسیر کلید عمومی"
 "publicKeyContent" = "محتوای کلید عمومی"
 "keyPath" = "مسیر کلید خصوصی"
 "keyContent" = "محتوای کلید خصوصی"
-"clickOnQRcode" = "برای کپی بر روی کد تصویری کلیک کنید"
+"clickOnQRcode" = "برای کپی بر روی کدتصویری کلیک کنید"
 "client" = "کاربر"
-"export" = "استخراج لینکها"
-"clone" = "شبیه سازی"
-"cloneInbound" = "ایجاد"
-"cloneInboundContent" = "همه موارد این ورودی بجز پورت ، ای پی و کلاینت ها شبیه سازی خواهند شد"
+"export" = "استخراج لینکها"
+"clone" = "شبیهسازی"
+"cloneInbound" = "شبیه‌سازی ورودی"
+"cloneInboundContent" = "همه موارد این ورودی بجز پورت، آی‌پی و کاربر‌ها شبیه‌سازی خواهند شد"
 "cloneInboundOk" = "ساختن شبیه ساز"
-"resetAllTraffic" = "ریست ترافیک کل سرویس ها"
-"resetAllTrafficTitle" = "ریست ترافیک کل سرویس ها"
-"resetAllTrafficContent" = "آیا مطمئن هستید که میخواهید تمام ترافیک سرویس ها را ریست کنید؟"
+"resetAllTraffic" = "ریست ترافیک کل ورودی‌ها"
+"resetAllTrafficTitle" = "ریست ترافیک کل ورودی‌ها"
+"resetAllTrafficContent" = "آیا مطمئن به ریست ترافیک تمام ورودی‌ها هستید؟"
 "resetInboundClientTraffics" = "ریست ترافیک کاربران"
-"resetInboundClientTrafficTitle" = "ریست ترافیک کل کاربران"
-"resetInboundClientTrafficContent" = "آیا مطمئن هستید که میخواهید تمام ترافیک کاربران این سرویس را ریست کنید؟"
-"resetAllClientTraffics" = "ریست ترافیک کاربران"
+"resetInboundClientTrafficTitle" = "ریست ترافیک کاربران"
+"resetInboundClientTrafficContent" = "آیا مطمئن به ریست ترافیک تمام کاربران این‌ ورودی هستید؟"
+"resetAllClientTraffics" = "ریست ترافیک کل کاربران"
 "resetAllClientTrafficTitle" = "ریست ترافیک کل کاربران"
-"resetAllClientTrafficContent" = "آیا مطمئن هستید که میخواهید تمام ترافیک کاربران را ریست کنید؟"
+"resetAllClientTrafficContent" = "آیا مطمئن به ریست ترافیک تمام کاربران هستید؟"
 "delDepletedClients" = "حذف کاربران منقضی"
 "delDepletedClientsTitle" = "حذف کاربران منقضی"
-"delDepletedClientsContent" = "آیا مطمئن هستید مه میخواهید تمامی کاربران منقضی شده را حذف کنید؟"
+"delDepletedClientsContent" = "آیا مطمئن به حذف تمام کاربران منقضی‌شده ‌هستید؟"
 "email" = "ایمیل"
-"emailDesc" = "ایمیل باید کاملا منحصر به فرد باشد"
-"IPLimit" = "محدودیت ای پی"
-"IPLimitDesc" = "غیرفعال کردن ورودی در صورت بیش از تعداد وارد شده (0 برای غیرفعال کردن محدودیت ای پی )"
-"IPLimitlog" = "گزارش ها"
-"IPLimitlogDesc" = "گزارش سابقه ای پی (قبل از فعال کردن ورودی پس از غیرفعال شدن توسط محدودیت ای پی، باید گزارش را پاک کنید)"
-"IPLimitlogclear" = "پاک کردن گزارش ها"
+"emailDesc" = "باید یک ایمیل یکتا باشد"
+"IPLimit" = "محدودیت آی‌پی"
+"IPLimitDesc" = "(اگر تعداد از مقدار تنظیم شده بیشتر شود، ورودی را غیرفعال می کند. (0 = غیرفعال"
+"IPLimitlog" = "گزارشها"
+"IPLimitlogDesc" = "گزارش تاریخچه آی‌پی. برای فعال کردن ورودی پس از غیرفعال شدن، گزارش را پاک کنید"
+"IPLimitlogclear" = "پاک کردن گزارشها"
 "setDefaultCert" = "استفاده از گواهی پنل"
-"xtlsDesc" = "هسته Xray باید 1.7.5 باشد"
-"realityDesc" = "هسته Xray باید 1.8.0 و بالاتر باشد"
-"telegramDesc" = "فقط از شناسه چت استفاده کنید (می توانید آن را از اینجا دریافت کنید @userinfobot یا در ربات دستور '/id' را وارد کنید)"
-"subscriptionDesc" = "می توانید ساب لینک خود را در جزئیات پیدا کنید، همچنین می توانید از همین نام برای چندین کانفیگ استفاده کنید"
+"xtlsDesc" = "ایکس‌ری باید 1.7.5 باشد"
+"realityDesc" = "ایکس‌ری باید +1.8.0 باشد"
+"telegramDesc" = "دریافت کنید ('/id'یا (دستور (@userinfobot) آی‌دی(های) چت تلگرام مدیر، از"
+"subscriptionDesc" = "شما می‌توانید لینک سابسکربپشن خودرا در 'جزئیات' پیدا کنید، همچنین می‌توانید از همین نام برای چندین کاربر استفاده‌کنید"
 "info" = "اطلاعات"
 "same" = "همسان"
-"inboundData" = "داده‌های سرویس"
+"inboundData" = "داده‌های ورودی"
 "copyToClipboard" = "کپی در حافظه"
-"import" = "وارد کردن"
-"importInbound" = "وارد کردن یک سرویس"
+"import" = "افزودن"
+"importInbound" = "افزودن یک ورودی"
 
 [pages.client]
 "add" = "کاربر جدید"
@@ -188,20 +188,20 @@
 "submitAdd" = "اضافه کردن"
 "submitEdit" = "ذخیره تغییرات"
 "clientCount" = "تعداد کاربران"
-"bulk" = "انبوه سازی"
+"bulk" = "انبوهسازی"
 "method" = "روش"
 "first" = "از"
 "last" = "تا"
 "prefix" = "پیشوند"
 "postfix" = "پسوند"
-"delayedStart" = "شروع بعد از اولین استفاده"
-"expireDays" = "روزهای اعتبار"
+"delayedStart" = "شروع‌پس‌از‌اولین‌استفاده"
+"expireDays" = "مدت زمان"
 "days" = "(روز)"
 "renew" = "تمدید خودکار"
-"renewDesc" = "روزهای تمدید خودکار پس از انقضا. 0 = غیرفعال"
+"renewDesc" = "(تمدید خودکار پس‌از ‌انقضا. (0 = غیرفعال)(واحد: روز"
 
 [pages.inbounds.toasts]
-"obtain" = "Obtain"
+"obtain" = "فراهم‌سازی"
 
 [pages.inbounds.stream.general]
 "request" = "درخواست"
@@ -222,174 +222,174 @@
 "encryption" = "رمزنگاری"
 
 [pages.settings]
-"title" = "تنظیمات"
+"title" = "تنظیمات پنل"
 "save" = "ذخیره"
 "infoDesc" = "برای اعمال تغییرات در این بخش باید پس از ذخیره کردن، پنل را ریستارت کنید"
 "restartPanel" = "ریستارت پنل"
-"restartPanelDesc" = "آیا مطمئن هستید که می خواهید پنل را دوباره راه اندازی کنید؟ برای راه اندازی مجدد روی OK کلیک کنید. اگر بعد از 3 ثانیه نمی توانید به پنل دسترسی پیدا کنید، لطفاً برای مشاهده اطلاعات گزارش پانل به سرور برگردید"
+"restartPanelDesc" = "آیا مطمئن به ریستارت پنل هستید؟ اگر پس‌از ریستارت نمی‌توانید به پنل دسترسی پیدا کنید، لطفاً گزارش‌های موجود در اسکریپت پنل را بررسی کنید"
 "actions" = "عملیات ها"
-"resetDefaultConfig" = "برگشت به تنظیمات پیشفرض"
-"panelSettings" = "تنظیمات پنل"
-"securitySettings" = "تنظیمات امنیتی"
-"TGBotSettings" = "تنظیمات ربات تلگرام"
-"panelListeningIP" = "محدودیت آی پی پنل"
-"panelListeningIPDesc" = "برای استفاده از تمام آی‌پیها به طور پیش فرض خالی بگذارید"
-"panelListeningDomain" = "محدودیت دامین پنل"
-"panelListeningDomainDesc" = "برای استفاده از تمام دامنه‌ها و آی‌پی‌ها به طور پیش فرض خالی بگذارید"
-"panelPort" = "پورت پنل"
-"panelPortDesc" = "پورت مورد استفاده برای نمایش این پنل"
-"publicKeyPath" = "مسیر فایل گواهی کلید عمومی پنل"
-"publicKeyPathDesc" = "باید یک مسیر مطلق باشد که با / شروع می شود "
-"privateKeyPath" = "مسیر فایل گواهی کلید خصوصی پنل"
-"privateKeyPathDesc" = "باید یک مسیر مطلق باشد که با / شروع می شود "
-"panelUrlPath" = "آدرس روت پنل"
-"panelUrlPathDesc" = "باید با '/' شروع شود و با '/' تمام شود"
+"resetDefaultConfig" = "برگشت به پیشفرض"
+"panelSettings" = "پیکربندی"
+"securitySettings" = "احرازهویت"
+"TGBotSettings" = "ربات تلگرام"
+"panelListeningIP" = "آدرس آی‌پی"
+"panelListeningIPDesc" = "آدرس آی‌پی برای وب پنل. برای گوش‌دادن به‌تمام آی‌پی‌ها خالی‌بگذارید"
+"panelListeningDomain" = "نام دامنه"
+"panelListeningDomainDesc" = "آدرس دامنه برای وب پنل. برای گوش دادن به‌تمام دامنه‌ها و آی‌پی‌ها خالی‌بگذارید"
+"panelPort" = "پورت"
+"panelPortDesc" = "شماره پورت برای وب پنل. باید پورت استفاده نشده‌باشد"
+"publicKeyPath" = "مسیر کلید عمومی"
+"publicKeyPathDesc" = "مسیر فایل کلیدعمومی برای وب پنل. با '/' شروع‌می‌شود"
+"privateKeyPath" = "مسیر کلید خصوصی"
+"privateKeyPathDesc" = "مسیر فایل کلیدخصوصی برای وب پنل. با '/' شروع‌می‌شود"
+"panelUrlPath" = "URI مسیر"
+"panelUrlPathDesc" = "برای وب پنل. با '/' شروع‌ و با '/' خاتمه‌ می‌یابد URI مسیر"
 "pageSize" = "اندازه صفحه بندی جدول"
-"pageSizeDesc" = "اندازه صفحه را برای جدول سرویس ها تعریف کنید. 0: غیرفعال"
-"remarkModel" = "نام کانفیگ و جداکننده"
-"datepicker" = "انتخاب کننده تاریخ"
-"datepickerDescription" = "نوع تقویم انتخاب کننده تاریخ انقضا را مشخص میکند "
-"sampleRemark" = "نمونه نام"
-"oldUsername" = "نام کاربری فعلی"
-"currentPassword" = "رمز عبور فعلی"
-"newUsername" = "نام کاربری جدید"
-"newPassword" = "رمز عبور جدید"
-"telegramBotEnable" = "فعالسازی ربات تلگرام"
-"telegramBotEnableDesc" = "از طریق بات تلگرام به امکانات این پنل متصل شوید"
+"pageSizeDesc" = "(اندازه صفحه برای جدول ورودی‌ها.(0 = غیرفعال"
+"remarkModel" = "نامکانفیگ و جداکننده"
+"datepicker" = "نوع تقویم"
+"datepickerDescription" = "وظایف برنامه ریزی شده بر اساس این تقویم اجرا می‌شود"
+"sampleRemark" = "نمونهنام"
+"oldUsername" = "نامکاربری فعلی"
+"currentPassword" = "رمزعبور فعلی"
+"newUsername" = "نامکاربری جدید"
+"newPassword" = "رمزعبور جدید"
+"telegramBotEnable" = "فعالسازی ربات تلگرام"
+"telegramBotEnableDesc" = "ربات تلگرام را فعال می‌کند"
 "telegramToken" = "توکن تلگرام"
-"telegramTokenDesc" = "توکن را باید از مدیر بات های تلگرام دریافت کنید @botfather"
-"telegramProxy" = "پروکسی Socks5"
-"telegramProxyDesc" = "اگر برای اتصال به تلگرام به پروکسی Socks5 نیاز دارید. تنظیمات خود را طبق راهنما تنظیم کنید."
-"telegramChatId" = "آی دی تلگرام مدیریت"
-"telegramChatIdDesc" = "از @userinfobot یا دستور '/id' در ربات برای دریافت شناسه های چت خود استفاده کنید. با استفاده از کاما میتونید چند آی دی را از هم جدا کنید. "
-"telegramNotifyTime" = "مدت زمان نوتیفیکیشن ربات تلگرام"
-"telegramNotifyTimeDesc" = "از فرمت زمان بندی لینوکس استفاده کنید "
-"tgNotifyBackup" = "پشتیبان گیری از پایگاه داده"
-"tgNotifyBackupDesc" = "ارسال کپی فایل پایگاه داده به همراه گزارش دوره ای"
+"telegramTokenDesc" = "دریافت کنید @botfather توکن را می‌توانید از"
+"telegramProxy" = "SOCKS پراکسی"
+"telegramProxyDesc" = "را برای اتصال به تلگرام فعال می کند SOCKS5 پراکسی"
+"telegramChatId" = "آی‌دی چت مدیر"
+"telegramChatIdDesc" = "دریافت ‌کنید ('/id'یا (دستور (@userinfobot) آی‌دی(های) چت تلگرام مدیر، از"
+"telegramNotifyTime" = "زمان نوتیفیکیشن"
+"telegramNotifyTimeDesc" = "زمان‌اطلاع‌رسانی ربات تلگرام برای گزارش های دوره‌ای. از فرمت زمانبندی لینوکس استفاده‌کنید‌"
+"tgNotifyBackup" = "پشتیبان‌گیری از دیتابیس"
+"tgNotifyBackupDesc" = "فایل پشتیبان‌دیتابیس را به‌همراه گزارش ارسال می‌کند"
 "tgNotifyLogin" = "اعلان ورود"
-"tgNotifyLoginDesc" = "نام کاربری، آدرس ای پی، و زمان وقتی که فردی سعی می‌کند به پنل شما وارد شود نمایش میدهد"
+"tgNotifyLoginDesc" = "نام‌کاربری، آدرس آی‌پی، و زمان ورود، فردی که سعی می‌کند وارد پنل شود را نمایش می‌دهد"
 "sessionMaxAge" = "بیشینه زمان جلسه وب"
-"sessionMaxAgeDesc" = "بیشینه زمانی که میتوانید لاگین بمانید (واحد: دقیقه)"
+"sessionMaxAgeDesc" = "(بیشینه زمانی که میتوانید لاگین بمانید. (واحد: دقیقه"
 "expireTimeDiff" = "آستانه زمان باقی مانده"
-"expireTimeDiffDesc" = "فاصله زمانی هشدار تا رسیدن به زمان انقضا (واحد: روز)"
+"expireTimeDiffDesc" = "(فاصله زمانی هشدار تا رسیدن به زمان انقضا. (واحد: روز"
 "trafficDiff" = "آستانه ترافیک باقی مانده"
-"trafficDiffDesc" = "فاصله زمانی هشدار تا رسیدن به اتمام ترافیک (واحد: گیگابایت)"
-"tgNotifyCpu" = "آستانه هشدار درصد پردازنده"
-"tgNotifyCpuDesc" = "این ربات تلگرام در صورت استفاده پردازنده بیشتر از این درصد برای شما پیام ارسال می کند.(واحد: درصد)"
-"timeZone" = "منظقه زمانی"
-"timeZoneDesc" = "وظایف برنامه ریزی شده بر اساس این منطقه زمانی اجرا می شوند. پنل را مجدداً راه اندازی می کند تا اعمال شود"
+"trafficDiffDesc" = "(فاصله زمانی هشدار تا رسیدن به اتمام ترافیک. (واحد: گیگابایت"
+"tgNotifyCpu" = "آستانه هشدار بار پردازنده"
+"tgNotifyCpuDesc" = "(اگر بار روی پردازنده ازاین آستانه فراتر رفت، برای شما پیام ارسال می‌شود. (واحد: درصد"
+"timeZone" = "منطقه زمانی"
+"timeZoneDesc" = "وظایف برنامه ریزی شده بر اساس این منطقه‌زمانی اجرا می‌شود"
 "subSettings" = "سابسکریپشن"
-"subEnable" = "فعال کردن سرویس"
-"subEnableDesc" = "ویژگی سابسکریپشن با پیکربندی جداگانه"
-"subListen" = "محدودیت آی‌پی"
-"subListenDesc" = "برای استفاده از همه آی‌پی ها به طور پیش فرض خالی بگذارید"
-"subPort" = "پورت سرویس"
-"subPortDesc" = "شماره پورت برای ارائه خدمات سابسکریپشن باید خالی باشد"
-"subCertPath" = "مسیر فایل کلید عمومی گواهی سابسکریپشن"
-"subCertPathDesc" = "یک مسیر مطلق که با '/' شروع می شود را پر کنید."
-"subKeyPath" = "مسیر فایل کلید خصوصی گواهی سابسکریپشن"
-"subKeyPathDesc" = "یک مسیر مطلق که با '/' شروع می شود را پر کنید."
-"subPath" = "مسیر ریشه سابسکریپشن"
-"subPathDesc" = "باید با '/' شروع شود و با '/' ختم شود."
-"subDomain" = "دامنه مخصوص سابسکریپشن"
-"subDomainDesc" = "برای نظارت بر همه دامنه ها و آی‌پی ها به طور پیش فرض خالی بگذارید"
-"subUpdates" = "فاصله به روز رسانی های سابسکریپشن"
-"subUpdatesDesc" = "ساعت های فاصله بین به روز رسانی در برنامه کاربر"
-"subEncrypt" = "رمزگذاری کانفیگ ها"
-"subEncryptDesc" = "رمزگذاری کانفیگ های بازگشتی سابسکریپشن"
+"subEnable" = "فعال‌سازی سرویس سابسکریپشن"
+"subEnableDesc" = " سرویس سابسکریپشن‌ را فعال‌می‌کند"
+"subListen" = "آدرس آی‌پی"
+"subListenDesc" = "آدرس آی‌پی برای سرویس سابسکریپشن. برای گوش دادن به‌تمام آی‌پی‌ها خالی‌بگذارید"
+"subPort" = "پورت"
+"subPortDesc" = "شماره پورت برای سرویس سابسکریپشن. باید پورت استفاده نشده‌باشد"
+"subCertPath" = "مسیر کلید عمومی"
+"subCertPathDesc" = "مسیر فایل کلیدعمومی برای سرویس سابیکریپشن. با '/' شروع‌می‌شود"
+"subKeyPath" = "مسیر کلید خصوصی"
+"subKeyPathDesc" = "مسیر فایل کلیدخصوصی برای سرویس سابسکریپشن. با '/' شروع‌می‌شود"
+"subPath" = "URI مسیر"
+"subPathDesc" = "برای سرویس سابسکریپشن. با '/' شروع‌ و با '/' خاتمه‌ می‌یابد URI مسیر"
+"subDomain" = "نام دامنه"
+"subDomainDesc" = "آدرس دامنه برای سرویس سابسکریپشن. برای گوش دادن به تمام دامنه‌ها و آی‌پی‌ها خالی‌بگذارید‌"
+"subUpdates" = "فاصله بروزرسانی‌ سابسکریپشن"
+"subUpdatesDesc" = "(فاصله مابین بروزرسانی در برنامه‌های کاربری. (واحد: ساعت"
+"subEncrypt" = "کدگذاری"
+"subEncryptDesc" = "کدگذاری خواهدشد Base64 محتوای برگشتی سرویس سابسکریپشن برپایه"
 "subShowInfo" = "نمایش اطلاعات مصرف"
-"subShowInfoDesc" = "ترافیک و زمان باقیمانده را در هر کانفیگ نمایش میدهد"
-"subURI" = "آدرس پایه پروکسی معکوس"
-"subURIDesc" = "آدرس پایه سابسکریپشن را برای استفاده در پشت پراکسی ها تغییر میدهد"
+"subShowInfoDesc" = "ترافیک و زمان باقی‌مانده را در برنامه‌های کاربری نمایش می‌دهد"
+"subURI" = "پروکسی معکوس URI مسیر"
+"subURIDesc" = "سابسکریپشن را برای استفاده در پشت پراکسی‌ها تغییر می‌دهد URI مسیر"
 
 [pages.xray]
-"title" = "الگوها"
-"save" = "ذخیره تنظیمات"
+"title" = "پیکربندی ایکس‌ری"
+"save" = "ذخیره"
 "restart" = "ریستارت ایکس‌ری"
-"basicTemplate" = "بخش الگو پایه"
-"advancedTemplate" = "بخش الگو پیشرفته"
-"generalConfigs" = "تنظیمات عمومی"
-"generalConfigsDesc" = "این تنظیمات میتواند ترافیک کلی سرویس را متاثر کند"
-"blockConfigs" = "مسدود سازی"
-"blockConfigsDesc" = "این گزینه ها از اتصال کاربران به پروتکل ها و وب سایت های خاص جلوگیری می کند"
-"blockCountryConfigs" = "تنظیمات برای مسدودسازی کشورها"
-"blockCountryConfigsDesc" = "این گزینه اتصال کاربران به دامنه های کشوری خاص را مسدود می کند"
-"directCountryConfigs" = "تنظیمات برای اتصال مستقیم کشورها"
-"directCountryConfigsDesc" = "این گزینه کاربران را به دامنه های کشوری خاص را به طور مستقیم، متصل می کند"
-"ipv4Configs" = "تنظیمات برای IPv4"
-"ipv4ConfigsDesc" = "این گزینه فقط از طریق آیپی ورژن ۴ به دامنه های هدف هدایت می شود"
-"warpConfigs" = "تنظیمات برای WARP"
-"warpConfigsDesc" = "هشدار: قبل از استفاده از این گزینه، WARP را در حالت پراکسی socks5 با دنبال کردن مراحل در GitHub پنل روی سرور خود نصب کنید. WARP ترافیک را از طریق سرورهای Cloudflare به وب سایت ها هدایت می کند"
-"Template" = "تنظیمات الگو ایکس ری"
-"TemplateDesc" = "فایل پیکربندی ایکس ری نهایی بر اساس این الگو ایجاد میشود. لطفاً این را تغییر ندهید مگر اینکه دقیقاً بدانید که چه کاری انجام می دهید!"
-"FreedomStrategy" = "روش استفاده از شبکه خروجی مستقیم"
-"FreedomStrategyDesc" = "تعیین روش استفاده از خروجی برای پرتکل مستقیم"
-"RoutingStrategy" = "پیکربندی استراتژی حل دامنه در مسیریابی"
-"RoutingStrategyDesc" = "تعیین استراتژی مسیریابی کلی برای پیدا کردن دامنه"
-"Torrent" = "فیلتر کردن بیت تورنت"
-"TorrentDesc" = "الگوی تنظیمات را برای فیلتر کردن پروتکل بیت تورنت برای کاربران تغییر میدهد"
-"PrivateIp" = "جلوگیری از اتصال آیپی های خصوصی یا محلی"
-"PrivateIpDesc" = "الگوی تنظیمات را برای فیلتر کردن اتصال آیپی های خصوصی یا محلی و بسته های سرگردان تغییر میدهد"
-"Ads" = "مسدود کردن تبلیغات"
-"AdsDesc" = "الگوی تنظیمات را برای مسدود کردن تبلیغات تغییر میدهد"
-"Family" = "فعال کردن حالت خانواده"
-"FamilyDesc" = "مسدود کردن محتوای بزرگسالان به کمک دی ان اس کلودفلر برای حالت خانواده "
-"Security" = "مسدود کردن وب‌سایت‌های بدافزار، فیشینگ و کریپتومینرها"
-"SecurityDesc" = "الگوی پیکربندی را برای حفاظت از امنیت تغییر دهید"
-"Speedtest" = "جلوگیری از اتصال به سایت های تست سرعت"
-"SpeedtestDesc" = "الگوی تنظیمات را برای فیلتر کردن اتصال به سایت های تست سرعت تغییر میدهد"
-"IRIp" = "جلوگیری از اتصال آیپی های ایران"
-"IRIpDesc" = "الگوی تنظیمات را برای فیلتر کردن اتصال آیپی های ایران تغییر میدهد"
-"IRDomain" = "جلوگیری از اتصال دامنه های ایران"
-"IRDomainDesc" = "الگوی تنظیمات را برای فیلتر کردن اتصال دامنه های ایران تغییر میدهد"
-"ChinaIp" = "جلوگیری از اتصال آیپی های چین"
-"ChinaIpDesc" = "الگوی تنظیمات را برای فیلتر کردن اتصال آیپی های چین تغییر میدهد"
-"ChinaDomain" = "جلوگیری از اتصال دامنه های چین"
-"ChinaDomainDesc" = "الگوی تنظیمات را برای فیلتر کردن اتصال دامنه های چین تغییر میدهد"
-"RussiaIp" = "جلوگیری از اتصال آیپی های روسیه"
-"RussiaIpDesc" = "الگوی تنظیمات را برای فیلتر کردن اتصال آیپی های روسیه تغییر میدهد"
-"RussiaDomain" = "جلوگیری از اتصال دامنه های روسیه"
-"RussiaDomainDesc" = "الگوی تنظیمات را برای فیلتر کردن اتصال دامنه های روسیه تغییر میدهد"
-"VNIp" = "جلوگیری از اتصال آیپی های ویتنام"
-"VNIpDesc" = "الگوی تنظیمات را برای فیلتر کردن اتصال آیپی های ویتنام تغییر میدهد"
-"VNDomain" = "جلوگیری از اتصال دامنه های ویتنام"
-"VNDomainDesc" = "الگوی تنظیمات را برای فیلتر کردن اتصال دامنه های ویتنام تغییر میدهد"
-"DirectIRIp" = "ارتباط مستقیم به آیپی های ایران"
-"DirectIRIpDesc" = "الگوی تنظیمات را برای ارتباط مستقیم به آیپی های ایران تغییر میدهد"
-"DirectIRDomain" = "ارتباط مستقیم به دامنه های ایران"
-"DirectIRDomainDesc" = "الگوی تنظیمات را برای ارتباط مستقیم به دامنه های ایران تغییر میدهد"
-"DirectChinaIp" = "ارتباط مستقیم به آیپی های چین"
-"DirectChinaIpDesc" = "الگوی تنظیمات را برای ارتباط مستقیم به آیپی های چین تغییر میدهد"
-"DirectChinaDomain" = "ارتباط مستقیم به دامنه های چین"
-"DirectChinaDomainDesc" = "الگوی تنظیمات را برای ارتباط مستقیم به دامنه های چین تغییر میدهد"
-"DirectRussiaIp" = "ارتباط مستقیم به آیپی های روسیه"
-"DirectRussiaIpDesc" = "الگوی تنظیمات را برای ارتباط مستقیم به آیپی های روسیه تغییر میدهد"
-"DirectRussiaDomain" = "ارتباط مستقیم به دامنه های روسیه"
-"DirectRussiaDomainDesc" = "الگوی تنظیمات را برای ارتباط مستقیم به دامنه های روسیه تغییر میدهد"
-"DirectVNIp" = "اتصال مستقیم به ای پی های ویتنام"
-"DirectVNIpDesc" = "الگوی پیکربندی را برای اتصال مستقیم به محدوده آی پی های ویتنام تغییر میدهد"
-"DirectVNDomain" = "اتصال مستقیم به دامنه های ویتنام"
-"DirectVNDomainDesc" = "الگوی پیکربندی را برای اتصال مستقیم به دامنه های ویتنام تغییر میدهد"
-"GoogleIPv4" = "استفاده از آیپی ورژن 4 برای اتصال به گوگل"
-"GoogleIPv4Desc" = "مسیردهی جدید برای اتصال به گوگل با آیپی ورژن 4 اضافه میکند"
-"NetflixIPv4" = "استفاده از آیپی ورژن 4 برای اتصال به نتفلیکس"
-"NetflixIPv4Desc" = "مسیردهی جدید برای اتصال به نتفلیکس با آیپی ورژن 4 اضافه میکند"
-"GoogleWARP" = "مسیردهی گوگل به WARP"
-"GoogleWARPDesc" = "مسیردهی جدید برای اتصال به گوگل به WARP اضافه میکند"
-"OpenAIWARP" = "مسیردهی OpenAI (ChatGPT) به WARP"
-"OpenAIWARPDesc" = "مسیردهی جدید برای اتصال به OpenAI (ChatGPT) به WARP اضافه میکند"
-"NetflixWARP" = "مسیردهی نتفلیکس به WARP"
-"NetflixWARPDesc" = "مسیردهی جدید برای اتصال به نتفلیکس به WARP اضافه میکند"
-"SpotifyWARP" = "مسیردهی اسپاتیفای به WARP"
-"SpotifyWARPDesc" = "مسیردهی جدید برای اتصال به اسپاتیفای به WARP اضافه میکند"
-"IRWARP" = "مسیردهی دامنه های ایران به WARP"
-"IRWARPDesc" = "مسیردهی جدید برای اتصال به دامنه های ایران به WARP اضافه میکند"
+"basicTemplate" = "پایه"
+"advancedTemplate" = "پیشرفته"
+"generalConfigs" = "استراتژی‌ کلی"
+"generalConfigsDesc" = "این گزینه‌ها استراتژی کلی ترافیک را تعیین می‌کنند"
+"blockConfigs" = "سپر محافظ"
+"blockConfigsDesc" = "این گزینه‌ها ترافیک را بر اساس پروتکل‌های درخواستی خاص، و وب سایت‌ها مسدود می‌کند"
+"blockCountryConfigs" = "مسدودسازی کشور"
+"blockCountryConfigsDesc" = "این گزینه‌ها ترافیک را بر اساس کشور درخواستی خاص مسدود می‌کند"
+"directCountryConfigs" = "اتصال مستقیم کشور"
+"directCountryConfigsDesc" = "این گزینه‌ها ترافیک را بر اساس کشور درخواستی خاص بصورت مستقیم ارسال می‌کند"
+"ipv4Configs" = "IPv4 مسیریابی"
+"ipv4ConfigsDesc" = "این گزینه‌ها ترافیک‌ را از طریق آی‌پی‌نسخه4 به مقصد هدایت می‌کند"
+"warpConfigs" = "WARP مسیریابی"
+"warpConfigsDesc" = "طبق راهنما نصب کنید SOCKS5 این گزینه‌ها ترافیک‌ را از طریق وارپ کلادفلر به مقصد هدایت می‌کند. ابتدا، وارپ را در حالت پراکسی"
+"Template" = "‌پیکربندی پیشرفته الگو ایکس‌ری"
+"TemplateDesc" = "فایل پیکربندی نهایی ایکس‌ری بر اساس این الگو ایجاد میشود"
+"FreedomStrategy" = "Freedom استراتژی پروتکل"
+"FreedomStrategyDesc" = "تعیین می‌کند Freedom استراتژی خروجی شبکه را برای پروتکل"
+"RoutingStrategy" = "استراتژی کلی مسیریابی"
+"RoutingStrategyDesc" = "استراتژی کلی مسیریابی برای حل تمام درخواست‌ها را تعیین می‌کند"
+"Torrent" = "مسدودسازی پروتکل بیت‌تورنت"
+"TorrentDesc" = "پروتکل بیت تورنت را مسدود می‌کند"
+"PrivateIp" = "مسدودسازی اتصال آی‌پی‌های خصوصی"
+"PrivateIpDesc" = "اتصال به آی‌پی‌های رنج خصوصی را مسدود می‌کند"
+"Ads" = "مسدودسازی تبلیغات"
+"AdsDesc" = "وب‌سایت‌های تبلیغاتی را مسدود می‌کند"
+"Family" = "محافظت خانواده"
+"FamilyDesc" = "محتوای مخصوص بزرگسالان، و وب‌سایت‌های ناامن را مسدود می‌کند"
+"Security" = "محافظت امنیتی"
+"SecurityDesc" = "وب‌سایت‌های ناامن، بدافزار، فیشینگ، و کریپتوماینرها را مسدود می‌کند"
+"Speedtest" = "مسدودسازی اسپیدتست"
+"SpeedtestDesc" = "اتصال به وب‌سایت‌های تست سرعت را مسدود می‌کند"
+"IRIp" = "مسدودسازی اتصال به آی‌پی‌های ایران"
+"IRIpDesc" = "اتصال به آی‌پی‌های کشور ایران را مسدود می‌کند"
+"IRDomain" = "مسدودسازی اتصال به دامنه‌های‌ ایران"
+"IRDomainDesc" = "اتصال به دامنه‌های کشور ایران را مسدود می‌کند"
+"ChinaIp" = "مسدودسازی اتصال به آی‌‌پی‌های چین"
+"ChinaIpDesc" = "اتصال به آی‌پی‌های کشور چین را مسدود می‌کند"
+"ChinaDomain" = "مسدودسازی اتصال به دامنه‌های چین"
+"ChinaDomainDesc" = "اتصال به دامنه‌های کشور چین را مسدود می‌کند"
+"RussiaIp" = "مسدودسازی اتصال به آی‌پی‌های روسیه"
+"RussiaIpDesc" = "اتصال به آی‌پی‌های کشور روسیه را مسدود می‌کند"
+"RussiaDomain" = "مسدودسازی اتصال به دامنه‌های روسیه"
+"RussiaDomainDesc" = "اتصال به دامنه‌های کشور روسیه را مسدود می‌کند"
+"VNIp" = "مسدودسازی اتصال به آی‌پی‌های ویتنام"
+"VNIpDesc" = "اتصال به آی‌پی‌های کشور ویتنام را مسدود می‌کند"
+"VNDomain" = "مسدودسازی اتصال به دامنه های ویتنام"
+"VNDomainDesc" = "اتصال به دامنه‌های کشور ویتنام را مسدود می‌کند"
+"DirectIRIp" = "اتصال مستقیم آی‌پی‌های ایران"
+"DirectIRIpDesc" = "اتصال مستقیم به آی‌پی‌های کشور ایران"
+"DirectIRDomain" = "اتصال مستقیم دامنه‌های ایران"
+"DirectIRDomainDesc" = "اتصال مستقیم به دامنه‌های کشور ایران"
+"DirectChinaIp" = "اتصال مستقیم آی‌پی‌های چین"
+"DirectChinaIpDesc" = "اتصال مستقیم به آی‌پی‌های کشور چین"
+"DirectChinaDomain" = "اتصال مستقیم دامنه‌های چین"
+"DirectChinaDomainDesc" = "اتصال مستقیم به دامنه‌های کشور چین"
+"DirectRussiaIp" = "اتصال مستقیم آی‌پی‌های روسیه"
+"DirectRussiaIpDesc" = "اتصال مستقیم به آی‌پی‌های کشور روسیه"
+"DirectRussiaDomain" = "اتصال مستقیم دامنه‌های روسیه"
+"DirectRussiaDomainDesc" = "اتصال مستقیم به دامنه‌های کشور روسیه"
+"DirectVNIp" = "اتصال مستقیم آی‌پی‌های ویتنام"
+"DirectVNIpDesc" = "اتصال مستقیم به آی‌پی‌های کشور ویتنام"
+"DirectVNDomain" = "اتصال مستقیم دامنه‌های ویتنام"
+"DirectVNDomainDesc" = "اتصال مستقیم به دامنه‌های کشور ویتنام"
+"GoogleIPv4" = "گوگل"
+"GoogleIPv4Desc" = "ترافیک را از طریق آی‌پی‌نسخه4 به گوگل هدایت می‌کند"
+"NetflixIPv4" = "نتفلیکس"
+"NetflixIPv4Desc" = "ترافیک را از طریق آی‌پی‌نسخه4 به نتفلیکس هدایت می‌کند"
+"GoogleWARP" = "گوگل"
+"GoogleWARPDesc" = "ترافیک را از طریق وارپ به گوگل هدایت می‌کند"
+"OpenAIWARP" = "چت جی‌پی‌تی"
+"OpenAIWARPDesc" = "ترافیک را از طریق وارپ به چت جی‌پی‌تی هدایت می‌کند"
+"NetflixWARP" = "نتفلیکس"
+"NetflixWARPDesc" = "ترافیک را از طریق وارپ به نتفلیکس هدایت می‌کند"
+"SpotifyWARP" = "اسپاتیفای"
+"SpotifyWARPDesc" = " ترافیک را از طریق وارپ به اسپاتیفای هدایت می‌کند"
+"IRWARP" = "دامنه‌های ایران"
+"IRWARPDesc" = "ترافیک را از طریق وارپ به دامنه‌های کشور ایران هدایت می‌کند"
 "Inbounds" = "ورودی‌ها"
-"InboundsDesc" = "میتوانید الگوی تنظیمات را برای ورودی های خاص تنظیم نمایید"
+"InboundsDesc" = "پذیرش کلاینت خاص"
 "Outbounds" = "خروجی‌ها"
-"OutboundsDesc" = "میتوانید الگوی تنظیمات را برای خروجی اینترنت تنظیم نمایید"
+"OutboundsDesc" = "مسیر ترافیک خروجی را تنظیم کنید"
 "Routings" = "قوانین مسیریابی"
-"RoutingsDesc" = "اولویت هر قانون مهم است!"
+"RoutingsDesc" = "اولویت هر قانون مهم است"
 "completeTemplate" = "کامل"
 
 [pages.xray.rules]
@@ -418,7 +418,7 @@
 "domain" = "دامنه"
 "type" = "نوع"
 "bridge" = "پل"
-"portal" = "پرتال"
+"portal" = "پورتال"
 "intercon" = "اتصال میانی"
 
 [pages.xray.wireguard]
@@ -431,18 +431,18 @@
 
 [pages.settings.security]
 "admin" = "مدیر"
-"secret" = "توکن امنیتی"
-"loginSecurity" = "لاگین ایمن"
-"loginSecurityDesc" = "افزودن یک مرحله دیگر به فرآیند لاگین"
-"secretToken" = "توکن امنیتی"
-"secretTokenDesc" = "این کد امنیتی را نزد خود در این جای امن نگه دارید، بدون این کد امکان ورود به پنل را نخواهید داشت. امکان بازیابی آن وجود ندارد!"
+"secret" = "توکن مخفی"
+"loginSecurity" = "ورود ایمن"
+"loginSecurityDesc" = "یک لایه اضافی از احراز هویت برای ایجاد امنیت بیشتر اضافه می کند"
+"secretToken" = "توکن مخفی"
+"secretTokenDesc" = "لطفاً این توکن را در مکانی امن ذخیره کنید. این توکن برای ورود به سیستم مورد نیاز است و قابل بازیابی نیست"
 
 [pages.settings.toasts]
 "modifySettings" = "ویرایش تنظیمات"
 "getSettings" = "دریافت تنظیمات"
-"modifyUser" = "ویرایش کاربر"
-"originalUserPassIncorrect" = "نام کاربری و رمز عبور فعلی اشتباه می باشد "
-"userPassMustBeNotEmpty" = "نام کاربری و رمز عبور جدید نمیتواند خالی باشد "
+"modifyUser" = "ویرایش مدیر"
+"originalUserPassIncorrect" = "نام‌کاربری یا رمزعبور فعلی اشتباه‌است"
+"userPassMustBeNotEmpty" = "نام‌کاربری یا رمزعبور جدید خالی‌است"
 
 [tgbot]
 "keyboardClosed" = "❌ کیبورد سفارشی بسته شد!"
@@ -457,12 +457,12 @@
 "months" = "ماه‌ها"
 "day" = "روز"
 "days" = "روزها"
-"hours" = "ساعت ها"
+"hours" = "ساعتها"
 "unknown" = "نامشخص"
 "inbounds" = "ورودی‌ها"
 "clients" = "کلاینت‌ها"
 "offline" = "🔴 آفلاین"
-"online" = "🟢 برخط"
+"online" = "🟢 آنلاین"
 
 [tgbot.commands]
 "unknown" = "❗ دستور ناشناخته"
@@ -477,66 +477,67 @@
 "helpClientCommands" = "برای جستجوی آمار، فقط از دستور زیر استفاده کنید:\r\n\r\n<code>/usage [Email]</code>"
 
 [tgbot.messages]
-"cpuThreshold" = "🔴 میزان استفاده از CPU {{ .Percent }}% بیشتر از آستانه {{ .Threshold }}% است."
+"cpuThreshold" = "🔴 بار ‌پردازنده {{ .Percent }}% بیشتر از آستانه است {{ .Threshold }}%"
 "selectUserFailed" = "❌ خطا در انتخاب کاربر!"
 "userSaved" = "✅ کاربر تلگرام ذخیره شد."
 "loginSuccess" = "✅ با موفقیت به پنل وارد شدید.\r\n"
-"loginFailed" = "❗️ ورود به پنل ناموفق بود.\r\n"
-"report" = "🕰 گزارشات زمان‌بندی شده: {{ .RunTime }}\r\n"
-"datetime" = "⏰ تاریخ-زمان: {{ .DateTime }}\r\n"
-"hostname" = "💻 نام میزبان: {{ .Hostname }}\r\n"
-"version" = "🚀 نسخه X-UI: {{ .Version }}\r\n"
+"loginFailed" = "❗️ ورود به پنل ناموفق‌بود \r\n"
+"report" = "🕰 گزارشات‌زمان‌بندی‌شده: {{ .RunTime }}\r\n"
+"datetime" = "⏰ تاریخ‌وزمان: {{ .DateTime }}\r\n"
+"hostname" = "💻 ناممیزبان: {{ .Hostname }}\r\n"
+"version" = "🚀 نسخه‌پنل: {{ .Version }}\r\n"
 "ipv6" = "🌐 IPv6: {{ .IPv6 }}\r\n"
 "ipv4" = "🌐 IPv4: {{ .IPv4 }}\r\n"
-"ip" = "🌐 آدرس IP: {{ .IP }}\r\n"
-"ips" = "🔢 آدرس‌های IP:\r\n{{ .IPs }}\r\n"
-"serverUpTime" = "⏳ زمان کارکرد سرور: {{ .UpTime }} {{ .Unit }}\r\n"
-"serverLoad" = "📈 بار سرور: {{ .Load1 }}, {{ .Load2 }}, {{ .Load3 }}\r\n"
-"serverMemory" = "📋 حافظه سرور: {{ .Current }}/{{ .Total }}\r\n"
-"tcpCount" = "🔹 تعداد ترافیک TCP: {{ .Count }}\r\n"
-"udpCount" = "🔸 تعداد ترافیک UDP: {{ .Count }}\r\n"
+"ip" = "🌐 آدرس‌آی‌پی: {{ .IP }}\r\n"
+"ips" = "🔢 آدرس‌های آی‌پی:\r\n{{ .IPs }}\r\n"
+"serverUpTime" = "⏳ مدت‌کارکردسیستم: {{ .UpTime }} {{ .Unit }}\r\n"
+"serverLoad" = "📈 بارسیستم: {{ .Load1 }}, {{ .Load2 }}, {{ .Load3 }}\r\n"
+"serverMemory" = "📋 RAM: {{ .Current }}/{{ .Total }}\r\n"
+"tcpCount" = "🔹 TCP: {{ .Count }}\r\n"
+"udpCount" = "🔸 UDP: {{ .Count }}\r\n"
 "traffic" = "🚦 ترافیک: {{ .Total }} (↑{{ .Upload }},↓{{ .Download }})\r\n"
-"xrayStatus" = "ℹ️ وضعیت Xray: {{ .State }}\r\n"
-"username" = "👤 نام کاربری: {{ .Username }}\r\n"
+"xrayStatus" = "ℹ️ وضعیت‌ایکس‌ری: {{ .State }}\r\n"
+"username" = "👤 نامکاربری: {{ .Username }}\r\n"
 "time" = "⏰ زمان: {{ .Time }}\r\n"
-"inbound" = "📍 ورودی: {{ .Remark }}\r\n"
+"inbound" = "📍 نام‌ورودی: {{ .Remark }}\r\n"
 "port" = "🔌 پورت: {{ .Port }}\r\n"
-"expire" = "📅 تاریخ انقضا: {{ .Time }}\r\n"
-"expireIn" = "📅 باقیمانده از انقضا: {{ .Time }}\r\n"
+"expire" = "📅 تاریخ‌انقضا: {{ .DateTime }}\r\n \r\n"
+"expireIn" = "📅 باقی‌مانده‌تاانقضا: {{ .Time }}\r\n \r\n"
 "active" = "💡 فعال: {{ .Enable }}\r\n"
-"enabled" = "🚨 مشمول: {{ .Enable }}\r\n"
+"enabled" = "🚨 وضعیت: {{ .Enable }}\r\n"
 "online" = "🌐 وضعیت اتصال: {{ .Status }}\r\n"
 "email" = "📧 ایمیل: {{ .Email }}\r\n"
 "upload" = "🔼 آپلود↑: {{ .Upload }}\r\n"
 "download" = "🔽 دانلود↓: {{ .Download }}\r\n"
-"total" = "📊 کل: {{ .UpDown }} / {{ .Total }}\r\n"
+"total" = "🔄 کل: {{ .UpDown }} / {{ .Total }}\r\n"
 "TGUser" = "👤 کاربر تلگرام: {{ .TelegramID }}\r\n"
-"exhaustedMsg" = "🚨 {{ .Type }} به اتمام رسیده است:\r\n"
-"exhaustedCount" = "🚨 تعداد {{ .Type }} به اتمام رسیده:\r\n"
-"onlinesCount" = "🌐 مشتریان آنلاین: {{ .Count }}\r\n"
+"exhaustedMsg" = "🚨 {{ .Type }} به‌اتمام‌رسیده‌است:\r\n"
+"exhaustedCount" = "🚨 تعداد {{ .Type }} به‌اتمام‌رسیده‌است:\r\n"
+"onlinesCount" = "🌐 کاربران‌آنلاین: {{ .Count }}\r\n"
 "disabled" = "🛑 غیرفعال: {{ .Disabled }}\r\n"
-"depleteSoon" = "🔜 به زودی به پایان خواهد رسید: {{ .Deplete }}\r\n\r\n"
-"backupTime" = "🗄 زمان پشتیبان‌گیری: {{ .Time }}\r\n"
+"depleteSoon" = "🔜 به‌زودی‌به‌پایان‌خواهدرسید: {{ .Deplete }}\r\n \r\n"
+"backupTime" = "🗄 زمانپشتیبان‌گیری: {{ .Time }}\r\n"
 "refreshedOn" = "\r\n📋🔄 تازه‌سازی شده در: {{ .Time }}\r\n\r\n"
 "yes" = "✅ بله"
-"no" = "❌ نه"
+"no" = "❌ خیر"
 
 [tgbot.buttons]
 "closeKeyboard" = "❌ بستن کیبورد"
 "cancel" = "❌ لغو"
 "cancelReset" = "❌ لغو تنظیم مجدد"
-"cancelIpLimit" = "❌ لغو محدودیت IP"
+"cancelIpLimit" = "❌ لغو محدودیت آی‌پی"
 "confirmResetTraffic" = "✅ تأیید تنظیم مجدد ترافیک؟"
-"confirmClearIps" = "✅ تأیید پاک‌سازی آدرس‌های IP؟"
+"confirmClearIps" = "✅ تأیید پاک‌سازی آدرس‌های آی‌پی؟"
 "confirmRemoveTGUser" = "✅ تأیید حذف کاربر تلگرام؟"
 "confirmToggle" = "✅ تایید فعال/غیرفعال کردن کاربر؟"
-"dbBackup" = "دریافت پشتیبان پایگاه داده"
-"serverUsage" = "استفاده از سرور"
+"dbBackup" = "دریافت پشتیبان"
+"serverUsage" = "استفاده از سیستم"
 "getInbounds" = "دریافت ورودی‌ها"
-"depleteSoon" = "به زودی به پایان خواهد رسید"
+"depleteSoon" = "بهزودی به پایان خواهد رسید"
 "clientUsage" = "دریافت آمار کاربر"
-"onlines" = "مشتریان آنلاین"
+"onlines" = "کاربران آنلاین"
 "commands" = "دستورات"
+
 "refresh" = "🔄 تازه‌سازی"
 "clearIPs" = "❌ پاک‌سازی آدرس‌ها"
 "removeTGUser" = "❌ حذف کاربر تلگرام"

+ 3 - 3
web/translation/translate.ru_RU.toml

@@ -62,7 +62,7 @@
 "link" = "менеджмент"
 
 [pages.login]
-"title" = "Логин"
+"title" = "Добро пожаловать"
 "loginAgain" = "Время пребывания в сети вышло. Пожалуйста, войдите в систему снова"
 
 [pages.login.toasts]
@@ -195,10 +195,10 @@
 "prefix" = "Префикс"
 "postfix" = "Постфикс"
 "delayedStart" = "Начать с момента первого подключения"
-"expireDays" = "Срок действия"
+"expireDays" = "Длительность"
 "days" = "дней"
 "renew" = "Автопродление"
-"renewDesc" = "Автоматическое продление через несколько дней после истечения срока действия. 0 = отключить"
+"renewDesc" = "Автопродление после истечения срока действия. (0 = отключить)(единица: день)"
 
 [pages.inbounds.toasts]
 "obtain" = "Получить"

+ 3 - 3
web/translation/translate.vi_VN.toml

@@ -62,7 +62,7 @@
 "link" = "sự quản lý"
 
 [pages.login]
-"title" = "Đăng nhập"
+"title" = "Chào mừng"
 "loginAgain" = "Thời hạn đăng nhập đã hết. Vui lòng đăng nhập lại."
 
 [pages.login.toasts]
@@ -195,10 +195,10 @@
 "prefix" = "Tiền tố"
 "postfix" = "Hậu tố"
 "delayedStart" = "Bắt đầu sau khi sử dụng lần đầu"
-"expireDays" = "Số ngày hết hạn"
+"expireDays" = "Khoảng thời gian"
 "days" = "ngày"
 "renew" = "Tự động gia hạn"
-"renewDesc" = "Tự động gia hạn những ngày sau khi hết hạn. 0 = tắt"
+"renewDesc" = "Tự động gia hạn sau khi hết hạn. (0 = tắt)(đơn vị: ngày)"
 
 [pages.inbounds.toasts]
 "obtain" = "Nhận"

+ 3 - 3
web/translation/translate.zh_Hans.toml

@@ -62,7 +62,7 @@
 "link" = "管理"
 
 [pages.login]
-"title" = "登录"
+"title" = "欢迎"
 "loginAgain" = "登录时效已过,请重新登录"
 
 [pages.login.toasts]
@@ -195,10 +195,10 @@
 "prefix" = "前缀"
 "postfix" = "后缀"
 "delayedStart" = "首次使用后开始"
-"expireDays" = "过期天数"
+"expireDays" = "期间"
 "days" = "天"
 "renew" = "自动续订"
-"renewDesc" = "过期后自动续订。0 = 禁用"
+"renewDesc" = "到期后自动续订。(0 = 禁用)(单元: 天)"
 
 [pages.inbounds.toasts]
 "obtain" = "获取"