mirror of
https://github.com/MHSanaei/3x-ui.git
synced 2026-08-12 14:21:01 +00:00
i18n(panel): migrate hardcoded panel strings to en-US and translate all locales
Surface ~400 hardcoded English labels, tooltips, placeholders, dt/divider text, modal okText/cancelText, and Spin loading from the panel pages (clients/groups/inbounds/nodes/settings/xray/sub/index) into web/translation/en-US.json under existing pages.<page>.* namespaces, with JSX swapped to t(...). Brand and protocol identifiers (TLS, MTU, SNI, NordVPN, Cloudflare WARP, etc.) stay literal. Sync all 12 non-English locales (ar-EG, es-ES, fa-IR, id-ID, ja-JP, pt-BR, ru-RU, tr-TR, uk-UA, vi-VN, zh-CN, zh-TW) to match en-US's structure and translate the 521 new key paths per locale. Every locale file now has 1539 lines, mirroring en-US ordering. Also remove a dead duplicate "info": "Info" key under pages.inbounds that collided with the new pages.inbounds.info.* object. Backend: bulk attach/detach errors in web/service/client.go now route through logger.Warningf (so they appear under /panel/api/server/logs/) instead of only living on the response payload.
This commit is contained in:
+459
-89
@@ -20,6 +20,10 @@
|
||||
"protocol": "پروتکل",
|
||||
"search": "جستجو",
|
||||
"filter": "فیلتر",
|
||||
"all": "همه",
|
||||
"from": "از",
|
||||
"to": "تا",
|
||||
"done": "انجام شد",
|
||||
"loading": "...در حال بارگذاری",
|
||||
"refresh": "تازهسازی",
|
||||
"clear": "پاک کردن",
|
||||
@@ -35,14 +39,14 @@
|
||||
"info": "اطلاعات بیشتر",
|
||||
"edit": "ویرایش",
|
||||
"delete": "حذف",
|
||||
"reset": "ریست",
|
||||
"reset": "بازنشانی",
|
||||
"noData": "دادهای وجود ندارد.",
|
||||
"copySuccess": "باموفقیت کپیشد",
|
||||
"sure": "مطمئن",
|
||||
"encryption": "رمزگذاری",
|
||||
"useIPv4ForHost": "از IPv4 برای میزبان استفاده کنید",
|
||||
"transmission": "راهاتصال",
|
||||
"host": "آدرس",
|
||||
"host": "میزبان",
|
||||
"path": "مسیر",
|
||||
"camouflage": "مبهمسازی",
|
||||
"status": "وضعیت",
|
||||
@@ -100,9 +104,10 @@
|
||||
"dashboard": "نمای کلی",
|
||||
"inbounds": "ورودیها",
|
||||
"clients": "کلاینتها",
|
||||
"groups": "گروهها",
|
||||
"nodes": "نودها",
|
||||
"settings": "تنظیمات پنل",
|
||||
"xray": "پیکربندی ایکسری",
|
||||
"xray": "پیکربندی Xray",
|
||||
"apiDocs": "مستندات API",
|
||||
"logout": "خروج",
|
||||
"link": "مدیریت",
|
||||
@@ -123,16 +128,16 @@
|
||||
},
|
||||
"index": {
|
||||
"title": "نمای کلی",
|
||||
"cpu": "پردازنده",
|
||||
"cpu": "CPU",
|
||||
"logicalProcessors": "پردازندههای منطقی",
|
||||
"frequency": "فرکانس",
|
||||
"swap": "سواپ",
|
||||
"swap": "Swap",
|
||||
"storage": "ذخیرهسازی",
|
||||
"memory": "حافظه رم",
|
||||
"threads": "رشتهها",
|
||||
"xrayStatus": "ایکسری",
|
||||
"memory": "RAM",
|
||||
"threads": "نخها",
|
||||
"xrayStatus": "Xray",
|
||||
"stopXray": "توقف",
|
||||
"restartXray": "شروعمجدد",
|
||||
"restartXray": "راهاندازی مجدد",
|
||||
"xraySwitch": "نسخه",
|
||||
"xrayUpdates": "بهروزرسانیهای Xray",
|
||||
"xraySwitchClick": "نسخه مورد نظر را انتخاب کنید",
|
||||
@@ -229,7 +234,7 @@
|
||||
"customGeoErrUpdateAllIncomplete": "بهروزرسانی یک یا چند منبع geo سفارشی ناموفق بود",
|
||||
"customGeoEmpty": "هنوز منبع geo سفارشیای ثبت نشده — برای ایجاد روی «افزودن» کلیک کنید",
|
||||
"dontRefresh": "در حال نصب، لطفا صفحه را رفرش نکنید",
|
||||
"logs": "گزارشها",
|
||||
"logs": "لاگها",
|
||||
"config": "پیکربندی",
|
||||
"backup": "پشتیبانگیری",
|
||||
"backupTitle": "پشتیبانگیری و بازیابی",
|
||||
@@ -244,18 +249,18 @@
|
||||
"getConfigError": "خطا در دریافت فایل پیکربندی"
|
||||
},
|
||||
"inbounds": {
|
||||
"title": "کاربران",
|
||||
"title": "ورودیها",
|
||||
"totalDownUp": "دریافت/ارسال کل",
|
||||
"totalUsage": "مصرف کل",
|
||||
"inboundCount": "کل ورودیها",
|
||||
"operate": "عملیات",
|
||||
"operate": "منو",
|
||||
"enable": "فعال",
|
||||
"remark": "نام",
|
||||
"node": "نود",
|
||||
"deployTo": "استقرار روی",
|
||||
"localPanel": "پنل لوکال",
|
||||
"fallbacks": {
|
||||
"title": "فالبکها",
|
||||
"title": "Fallbackها",
|
||||
"help": "وقتی اتصالی روی این اینباند با هیچ کلاینتی تطبیق پیدا نمیکند، به یک اینباند دیگر ارجاع داده میشود. یک فرزند انتخاب کنید، فیلدهای مسیریابی (SNI / ALPN / Path / xver) خودکار از روی transport آن پر میشود — برای بیشتر تنظیمات نیازی به ویرایش نیست. هر فرزند باید روی 127.0.0.1 با security=none گوش بدهد.",
|
||||
"empty": "هنوز فالبکی اضافه نشده",
|
||||
"add": "افزودن فالبک",
|
||||
@@ -273,14 +278,14 @@
|
||||
},
|
||||
"protocol": "پروتکل",
|
||||
"port": "پورت",
|
||||
"portMap": "پورتهای نظیر",
|
||||
"portMap": "نگاشت پورت",
|
||||
"traffic": "ترافیک",
|
||||
"details": "توضیحات",
|
||||
"transportConfig": "نحوه اتصال",
|
||||
"transportConfig": "انتقال",
|
||||
"expireDate": "مدت زمان",
|
||||
"createdAt": "ایجاد",
|
||||
"updatedAt": "بهروزرسانی",
|
||||
"resetTraffic": "ریست ترافیک",
|
||||
"resetTraffic": "بازنشانی ترافیک",
|
||||
"addInbound": "افزودن ورودی",
|
||||
"generalActions": "عملیات کلی",
|
||||
"modifyInbound": "ویرایش ورودی",
|
||||
@@ -295,29 +300,29 @@
|
||||
"delAllClients": "حذف همه کلاینتها",
|
||||
"delAllClientsConfirmTitle": "حذف هر {count} کلاینت اینباند «{remark}»؟",
|
||||
"delAllClientsConfirmContent": "تمام کلاینتهای این اینباند به همراه رکوردهای ترافیکشان حذف میشوند. خود اینباند باقی میماند. این عمل غیرقابل بازگشت است.",
|
||||
"attachClients": "اتصال کلاینتها به…",
|
||||
"addClientsToGroup": "افزودن کلاینتها به گروه…",
|
||||
"attachClientsTitle": "اتصال کلاینتهای «{remark}»",
|
||||
"attachClientsDesc": "همان {count} کلاینت (با همان UUID/پسورد و ترافیک مشترک) را به اینباند(های) انتخابشده هم متصل میکند. روی این اینباند هم باقی میمانند.",
|
||||
"attachClientsTargets": "اینباندهای مقصد",
|
||||
"attachClientsNoTargets": "اینباند سازگار دیگری برای اتصال وجود ندارد.",
|
||||
"attachClientsResult": "{attached} متصل شد، {skipped} رد شد.",
|
||||
"attachClientsResultMixed": "{attached} متصل شد، {skipped} رد شد، {errors} خطا.",
|
||||
"attachClientsSelectLabel": "کلاینتهای قابل اتصال",
|
||||
"attachClients": "الصاق کاربران به…",
|
||||
"addClientsToGroup": "افزودن کاربران به گروه…",
|
||||
"attachClientsTitle": "الصاق کاربران از «{remark}»",
|
||||
"attachClientsDesc": "همان {count} کاربر (با UUID/رمز یکسان و ترافیک مشترک) را به ورودی(های) انتخابی الصاق میکند. در این ورودی هم باقی میمانند.",
|
||||
"attachClientsTargets": "ورودیهای مقصد",
|
||||
"attachClientsNoTargets": "هیچ ورودی سازگار دیگری برای الصاق در دسترس نیست.",
|
||||
"attachClientsResult": "الصاق شد {attached}، نادیده {skipped}.",
|
||||
"attachClientsResultMixed": "الصاق شد {attached}، نادیده {skipped}، خطا {errors}.",
|
||||
"attachClientsSelectLabel": "کاربران برای الصاق",
|
||||
"attachClientsSearchPlaceholder": "جستجوی ایمیل یا توضیح",
|
||||
"attachClientsStatusDisabled": "غیرفعال",
|
||||
"attachClientsSelectedCount": "{selected} از {total} انتخابشده",
|
||||
"detachClients": "جداسازی کلاینتها",
|
||||
"detachClientsTitle": "جداسازی کلاینتهای «{remark}»",
|
||||
"detachClientsDesc": "کلاینتهای انتخابشده فقط از همین اینباند جدا میشوند. خود رکورد کلاینتها حفظ میشود (برای حذف کامل از Delete استفاده کنید). این اینباند مجموعاً {count} کلاینت دارد.",
|
||||
"detachClientsResult": "{detached} جدا شد، {skipped} رد شد.",
|
||||
"detachClientsResultMixed": "{detached} جدا شد، {skipped} رد شد، {errors} خطا.",
|
||||
"detachClientsSelectLabel": "کلاینتهای قابل جداسازی",
|
||||
"detachClients": "جداسازی کاربران",
|
||||
"detachClientsTitle": "جداسازی کاربران از «{remark}»",
|
||||
"detachClientsDesc": "کاربر(های) انتخابی را تنها از این ورودی حذف میکند. خود رکورد کاربر حفظ میشود (برای حذف کامل از Delete استفاده کنید). مبدا در مجموع {count} کاربر دارد.",
|
||||
"detachClientsResult": "جدا شد {detached}، نادیده {skipped}.",
|
||||
"detachClientsResultMixed": "جدا شد {detached}، نادیده {skipped}، خطا {errors}.",
|
||||
"detachClientsSelectLabel": "کاربران برای جداسازی",
|
||||
"exportLinksTitle": "خروجی لینکهای اینباند",
|
||||
"exportSubsTitle": "خروجی لینکهای ساب",
|
||||
"exportAllLinksTitle": "خروجی لینکهای همه اینباندها",
|
||||
"exportAllSubsTitle": "خروجی لینکهای ساب همه اینباندها",
|
||||
"inboundJsonTitle": "JSON اینباند",
|
||||
"inboundJsonTitle": "JSON ورودی",
|
||||
"deleteClient": "حذف کاربر",
|
||||
"deleteClientContent": "آیا مطمئن به حذف کاربر هستید؟",
|
||||
"resetTrafficContent": "آیا مطمئن به ریست ترافیک هستید؟",
|
||||
@@ -327,7 +332,7 @@
|
||||
"destinationPort": "پورت مقصد",
|
||||
"targetAddress": "آدرس مقصد",
|
||||
"monitorDesc": "بهطور پیشفرض خالیبگذارید",
|
||||
"meansNoLimit": "0 = واحد: گیگابایت) نامحدود)",
|
||||
"meansNoLimit": "= نامحدود. (واحد: GB)",
|
||||
"totalFlow": "ترافیک کل",
|
||||
"leaveBlankToNeverExpire": "برای منقضینشدن خالیبگذارید",
|
||||
"noRecommendKeepDefault": "توصیهمیشود بهطور پیشفرض حفظشود",
|
||||
@@ -362,9 +367,10 @@
|
||||
"IPLimitlogDesc": "گزارش تاریخچه آیپی. برای فعال کردن ورودی پس از غیرفعال شدن، گزارش را پاک کنید",
|
||||
"IPLimitlogclear": "پاک کردن گزارشها",
|
||||
"setDefaultCert": "استفاده از گواهی پنل",
|
||||
"streamTab": "استریم",
|
||||
"setDefaultCertEmpty": "هیچ گواهیای برای پنل پیکربندی نشده. ابتدا از تنظیمات یکی تعیین کنید.",
|
||||
"streamTab": "Stream",
|
||||
"securityTab": "امنیت",
|
||||
"sniffingTab": "اسنیفینگ",
|
||||
"sniffingTab": "Sniffing",
|
||||
"sniffingMetadataOnly": "فقط متادیتا",
|
||||
"sniffingRouteOnly": "فقط مسیریابی",
|
||||
"sniffingIpsExcluded": "IPهای مستثنا",
|
||||
@@ -382,15 +388,14 @@
|
||||
"allHelp": "شیء کامل اینباند با همه فیلدها در یک ویرایشگر.",
|
||||
"settings": "تنظیمات",
|
||||
"settingsHelp": "ساختار بلوک settings در Xray:",
|
||||
"sniffing": "اسنیفینگ",
|
||||
"sniffing": "Sniffing",
|
||||
"sniffingHelp": "ساختار بلوک sniffing در Xray:",
|
||||
"stream": "استریم",
|
||||
"stream": "Stream",
|
||||
"streamHelp": "ساختار بلوک stream در Xray:",
|
||||
"jsonErrorPrefix": "JSON پیشرفته"
|
||||
},
|
||||
"telegramDesc": "لطفا شناسه گفتگوی تلگرام را وارد کنید. (از دستور '/id' در ربات استفاده کنید) یا ({'@'}userinfobot)",
|
||||
"subscriptionDesc": "شما میتوانید لینک سابسکربپشن خودرا در 'جزئیات' پیدا کنید، همچنین میتوانید از همین نام برای چندین کاربر استفادهکنید",
|
||||
"info": "اطلاعات",
|
||||
"same": "همسان",
|
||||
"inboundData": "دادههای ورودی",
|
||||
"exportInbound": "استخراج ورودی",
|
||||
@@ -427,6 +432,139 @@
|
||||
"getNewmldsa65Error": "خطا در دریافت گواهی mldsa65.",
|
||||
"getNewVlessEncError": "خطا در دریافت گواهی VlessEnc."
|
||||
},
|
||||
"form": {
|
||||
"moveUp": "بالا",
|
||||
"moveDown": "پایین",
|
||||
"addAll": "افزودن همه",
|
||||
"addAllFallbackTooltip": "برای هر ورودی واجد شرایط که هنوز متصل نشده یک ردیف fallback اضافه میکند",
|
||||
"peers": "Peers",
|
||||
"addPeer": "افزودن peer",
|
||||
"keepAlive": "Keep-alive",
|
||||
"autoSystemRoutesTooltip": "فقط ویندوز. CIDRها بهصورت خودکار به جدول مسیریابی سیستم اضافه میشوند تا ترافیک مطابق از TUN عبور کند.",
|
||||
"autoOutboundsInterface": "رابط خروجی خودکار",
|
||||
"autoOutboundsInterfaceTooltip": "رابط فیزیکی برای ترافیک خروجی. از auto برای تشخیص استفاده کنید؛ زمانی که Auto system routes فعال باشد، بهصورت خودکار فعال میشود.",
|
||||
"rewriteAddress": "بازنویسی آدرس",
|
||||
"rewritePort": "بازنویسی پورت",
|
||||
"allowedNetwork": "شبکه مجاز",
|
||||
"followRedirect": "دنبالکردن Redirect",
|
||||
"accounts": "حسابها",
|
||||
"allowTransparent": "اجازه شفاف",
|
||||
"encryptionMethod": "روش رمزنگاری",
|
||||
"visionTestseed": "Vision testseed",
|
||||
"version": "نسخه",
|
||||
"udpIdleTimeout": "UDP idle timeout (s)",
|
||||
"masquerade": "استتار",
|
||||
"type": "نوع",
|
||||
"upstreamUrl": "آدرس Upstream",
|
||||
"rewriteHost": "بازنویسی Host",
|
||||
"skipTlsVerify": "رد تایید TLS",
|
||||
"directory": "دایرکتوری",
|
||||
"statusCode": "کد وضعیت",
|
||||
"body": "Body",
|
||||
"headers": "هدرها",
|
||||
"proxyProtocol": "Proxy Protocol",
|
||||
"requestVersion": "نسخه درخواست",
|
||||
"requestMethod": "متد درخواست",
|
||||
"requestPath": "مسیر درخواست",
|
||||
"requestHeaders": "هدرهای درخواست",
|
||||
"responseVersion": "نسخه پاسخ",
|
||||
"responseStatus": "وضعیت پاسخ",
|
||||
"responseReason": "دلیل پاسخ",
|
||||
"responseHeaders": "هدرهای پاسخ",
|
||||
"heartbeatPeriod": "دوره Heartbeat",
|
||||
"serviceName": "نام سرویس",
|
||||
"authority": "Authority",
|
||||
"multiMode": "حالت چندگانه",
|
||||
"maxBufferedUpload": "حداکثر آپلود بافرشده",
|
||||
"maxUploadSize": "حداکثر اندازه آپلود (بایت)",
|
||||
"streamUpServer": "سرور Stream-Up",
|
||||
"serverMaxHeaderBytes": "حداکثر بایت هدر سرور",
|
||||
"paddingBytes": "بایتهای Padding",
|
||||
"uplinkHttpMethod": "متد HTTP آپلینک",
|
||||
"paddingObfsMode": "حالت ابهام Padding",
|
||||
"paddingKey": "کلید Padding",
|
||||
"paddingHeader": "هدر Padding",
|
||||
"paddingPlacement": "محل Padding",
|
||||
"paddingMethod": "روش Padding",
|
||||
"sessionPlacement": "محل نشست",
|
||||
"sessionKey": "کلید نشست",
|
||||
"sequencePlacement": "محل Sequence",
|
||||
"sequenceKey": "Sequence Key",
|
||||
"uplinkDataPlacement": "محل داده Uplink",
|
||||
"uplinkDataKey": "کلید داده Uplink",
|
||||
"noSseHeader": "بدون هدر SSE",
|
||||
"ttiMs": "TTI (ms)",
|
||||
"uplinkMbps": "آپلود (MB/s)",
|
||||
"downlinkMbps": "دانلود (MB/s)",
|
||||
"cwndMultiplier": "ضریب CWND",
|
||||
"maxSendingWindow": "حداکثر پنجره ارسال",
|
||||
"externalProxy": "پراکسی خارجی",
|
||||
"sniPlaceholder": "SNI (پیشفرض همان host)",
|
||||
"fingerprint": "اثرانگشت",
|
||||
"defaultOption": "پیشفرض",
|
||||
"routeMark": "علامت مسیر",
|
||||
"tcpKeepAliveInterval": "بازه TCP Keep Alive",
|
||||
"tcpKeepAliveIdle": "TCP Keep Alive Idle",
|
||||
"tcpMaxSeg": "TCP Max Seg",
|
||||
"tcpUserTimeout": "TCP User Timeout",
|
||||
"tcpWindowClamp": "TCP Window Clamp",
|
||||
"tcpFastOpen": "TCP Fast Open",
|
||||
"multipathTcp": "Multipath TCP",
|
||||
"penetrate": "Penetrate",
|
||||
"v6Only": "فقط IPv6",
|
||||
"tcpCongestion": "تراکم TCP",
|
||||
"dialerProxy": "Dialer Proxy",
|
||||
"trustedXForwardedFor": "X-Forwarded-For مورد اعتماد",
|
||||
"addressPortStrategy": "استراتژی آدرس+پورت",
|
||||
"tryDelayMs": "تأخیر تلاش (ms)",
|
||||
"prioritizeIPv6": "اولویت IPv6",
|
||||
"interleave": "Interleave",
|
||||
"maxConcurrentTry": "حداکثر تلاش همزمان",
|
||||
"customSockopt": "Sockopt دلخواه",
|
||||
"addCustomOption": "افزودن گزینه دلخواه",
|
||||
"serverNameIndication": "SNI",
|
||||
"cipherSuites": "مجموعههای رمز",
|
||||
"autoOption": "خودکار",
|
||||
"minMaxVersion": "نسخه حداقل/حداکثر",
|
||||
"rejectUnknownSni": "رد SNI ناشناخته",
|
||||
"disableSystemRoot": "غیرفعالسازی System Root",
|
||||
"sessionResumption": "ازسرگیری نشست",
|
||||
"oneTimeLoading": "بارگذاری یکبار",
|
||||
"usageOption": "گزینه استفاده",
|
||||
"buildChain": "ساخت زنجیره",
|
||||
"echKey": "کلید ECH",
|
||||
"echConfig": "پیکربندی ECH",
|
||||
"getNewEchCert": "دریافت گواهی ECH جدید",
|
||||
"show": "نمایش",
|
||||
"xver": "Xver",
|
||||
"target": "هدف",
|
||||
"maxTimeDiff": "حداکثر اختلاف زمان (ms)",
|
||||
"minClientVer": "حداقل نسخه کلاینت",
|
||||
"maxClientVer": "حداکثر نسخه کلاینت",
|
||||
"shortIds": "Short IDها",
|
||||
"spiderX": "SpiderX",
|
||||
"getNewCert": "دریافت گواهی جدید",
|
||||
"mldsa65Seed": "mldsa65 Seed",
|
||||
"mldsa65Verify": "mldsa65 Verify",
|
||||
"getNewSeed": "دریافت Seed جدید"
|
||||
},
|
||||
"info": {
|
||||
"mode": "حالت",
|
||||
"grpcServiceName": "grpc serviceName",
|
||||
"grpcMultiMode": "grpc multiMode",
|
||||
"interfaceName": "نام رابط",
|
||||
"mtu": "MTU",
|
||||
"gateway": "Gateway",
|
||||
"dns": "DNS",
|
||||
"outboundsInterface": "رابط خروجی",
|
||||
"autoSystemRoutes": "مسیریابی خودکار سیستم",
|
||||
"followRedirect": "FollowRedirect",
|
||||
"auth": "احراز",
|
||||
"noKernelTun": "TUN غیرکرنل",
|
||||
"keepAlive": "Keep alive",
|
||||
"peerNumber": "Peer {n}",
|
||||
"peerNumberConfig": "پیکربندی Peer {n}"
|
||||
},
|
||||
"stream": {
|
||||
"general": {
|
||||
"request": "درخواست",
|
||||
@@ -477,6 +615,20 @@
|
||||
"days": "روز",
|
||||
"renew": "تمدید خودکار",
|
||||
"renewDesc": "تمدید خودکار پس از انقضا. (۰ = غیرفعال) (واحد: روز)",
|
||||
"searchPlaceholder": "جستجوی ایمیل، توضیح، Sub ID، UUID، رمز، احراز...",
|
||||
"filterTitle": "فیلتر کاربران",
|
||||
"clearAllFilters": "پاک کردن همه",
|
||||
"sortOldest": "قدیمیترین",
|
||||
"sortNewest": "جدیدترین",
|
||||
"sortRecentlyUpdated": "اخیراً بهروزشده",
|
||||
"sortRecentlyOnline": "اخیراً آنلاین",
|
||||
"sortEmailAZ": "ایمیل ا→ی",
|
||||
"sortEmailZA": "ایمیل ی→ا",
|
||||
"sortMostTraffic": "بیشترین ترافیک",
|
||||
"sortHighestRemaining": "بیشترین باقیمانده",
|
||||
"sortExpiringSoonest": "نزدیکترین انقضا",
|
||||
"has": "دارد",
|
||||
"hasNot": "ندارد",
|
||||
"title": "کلاینتها",
|
||||
"actions": "عملیات",
|
||||
"totalGB": "مجموع ارسال/دریافت (گیگابایت)",
|
||||
@@ -487,6 +639,9 @@
|
||||
"subId": "شناسه اشتراک",
|
||||
"online": "آنلاین",
|
||||
"email": "ایمیل",
|
||||
"group": "گروه",
|
||||
"groupDesc": "برچسبی منطقی برای دستهبندی کاربران مرتبط (مثل تیم، مشتری، منطقه). از نوار ابزار قابل فیلتر است.",
|
||||
"groupPlaceholder": "مثلاً customer-a",
|
||||
"comment": "توضیحات",
|
||||
"traffic": "ترافیک",
|
||||
"offline": "آفلاین",
|
||||
@@ -510,32 +665,45 @@
|
||||
"resetAllTraffics": "بازنشانی ترافیک همه کلاینتها",
|
||||
"resetAllTrafficsTitle": "بازنشانی ترافیک همه کلاینتها؟",
|
||||
"resetAllTrafficsContent": "شمارنده ارسال/دریافت همه کلاینتها به صفر میرسد. سهمیه و تاریخ انقضا تغییری نمیکند. این عمل غیرقابل بازگشت است.",
|
||||
"empty": "هنوز کلاینتی نیست — برای شروع یکی اضافه کنید.",
|
||||
"deleteConfirmTitle": "حذف کلاینت {email}؟",
|
||||
"deleteConfirmContent": "این کلاینت از تمام اینباندهای متصل حذف و سابقه ترافیک آن پاک میشود. این عمل غیرقابل بازگشت است.",
|
||||
"deleteSelected": "حذف ({count})",
|
||||
"adjustSelected": "تنظیم ({count})",
|
||||
"attach": "اتصال",
|
||||
"adjust": "تنظیم",
|
||||
"subLinks": "لینکهای ساب",
|
||||
"selectedCount": "{count} انتخابشده",
|
||||
"ungroup": "حذف گروه",
|
||||
"ungroupConfirmTitle": "{count} کلاینت از گروهشان حذف شود؟",
|
||||
"ungroupConfirmContent": "برچسب گروه از هر کلاینت انتخابشده پاک میشود. خود کلاینتها حفظ میشوند (برای حذف کامل، از Delete استفاده کنید).",
|
||||
"subLinksSelected": "لینکهای اشتراک ({count})",
|
||||
"addToGroupTitle": "افزودن {count} کاربر به یک گروه",
|
||||
"addToGroupTooltip": "یک گروه موجود را انتخاب کنید یا نام جدیدی تایپ کنید. برای حذف کاربران از گروه فعلی، از Ungroup استفاده کنید.",
|
||||
"addToGroupPlaceholder": "نام گروه",
|
||||
"addToGroupSuccessToast": "{count} کاربر به {group} اضافه شد",
|
||||
"ungroupSuccessToast": "گروه از {count} کاربر پاک شد",
|
||||
"ungroup": "خارج از گروه",
|
||||
"ungroupConfirmTitle": "حذف {count} کاربر از گروهشان؟",
|
||||
"ungroupConfirmContent": "برچسب گروه را روی هر کاربر انتخابی پاک میکند. کاربران حفظ میشوند (برای حذف کامل از Delete استفاده کنید).",
|
||||
"addToGroup": "افزودن به گروه",
|
||||
"attachSelected": "اتصال ({count})",
|
||||
"attachToInboundsTitle": "اتصال {count} کلاینت به اینباند(ها)",
|
||||
"attachToInboundsDesc": "{count} کلاینت انتخابشده (با همان UUID/پسورد و ترافیک مشترک) به اینباند(های) انتخابی متصل میشوند. روی اینباندهای فعلی هم باقی میمانند.",
|
||||
"attachToInboundsTargets": "اینباندهای مقصد",
|
||||
"attachToInboundsNoTargets": "اینباند سازگار برای اتصال وجود ندارد.",
|
||||
"attach": "الصاق",
|
||||
"adjust": "تنظیم",
|
||||
"subLinks": "لینکهای اشتراک",
|
||||
"selectedCount": "{count} انتخابشده",
|
||||
"attachSelected": "الصاق ({count})",
|
||||
"attachToInboundsTitle": "الصاق {count} کاربر به ورودی(ها)",
|
||||
"attachToInboundsDesc": "{count} کاربر انتخابشده (همان UUID/رمز و ترافیک مشترک) را به ورودیهای انتخابی الصاق میکند. الصاقهای قبلی حفظ میشوند.",
|
||||
"attachToInboundsTargets": "ورودیهای مقصد",
|
||||
"attachToInboundsNoTargets": "هیچ ورودی چندکاربرهای برای الصاق در دسترس نیست.",
|
||||
"detachSelected": "جداسازی ({count})",
|
||||
"detach": "جداسازی",
|
||||
"detachFromInboundsTitle": "جداسازی {count} کلاینت از اینباند(ها)",
|
||||
"detachFromInboundsDesc": "{count} کلاینت انتخابشده از اینباند(های) انتخابی جدا میشوند. زوجهایی که کلاینت در آنها متصل نیست بیصدا رد میشوند. خود رکورد کلاینتها حفظ میشود (برای حذف کامل از Delete استفاده کنید).",
|
||||
"detachFromInboundsTargets": "اینباندهای مبدأ",
|
||||
"detachFromInboundsNoTargets": "اینباند سازگار وجود ندارد.",
|
||||
"detachFromInboundsResult": "{detached} جدا شد، {skipped} رد شد.",
|
||||
"detachFromInboundsResultMixed": "{detached} جدا شد، {skipped} رد شد، {errors} خطا.",
|
||||
"detachFromInboundsTitle": "جداسازی {count} کاربر از ورودی(ها)",
|
||||
"detachFromInboundsDesc": "{count} کاربر انتخابشده را از ورودیهای انتخابی حذف میکند. در مواردی که کاربر الصاق نبوده، نادیده گرفته میشود. رکورد کاربر حفظ میشود (برای حذف کامل از Delete استفاده کنید).",
|
||||
"detachFromInboundsTargets": "ورودیهایی برای جداسازی",
|
||||
"detachFromInboundsNoTargets": "هیچ ورودی چندکاربرهای در دسترس نیست.",
|
||||
"detachFromInboundsResult": "جدا شد {detached}، نادیده گرفته شد {skipped}.",
|
||||
"detachFromInboundsResultMixed": "جدا شد {detached}، نادیده {skipped}، خطا {errors}.",
|
||||
"subLinksTitle": "لینکهای اشتراک ({count})",
|
||||
"subLinkColumn": "آدرس اشتراک",
|
||||
"subJsonLinkColumn": "آدرس JSON اشتراک",
|
||||
"subLinksCopyAll": "کپی همه",
|
||||
"subLinksCopiedAll": "{count} لینک کپی شد",
|
||||
"subLinksEmpty": "هیچکدام از کاربران انتخابی شناسه اشتراک ندارند.",
|
||||
"subLinksDisabled": "سرویس اشتراک غیرفعال است.",
|
||||
"subLinksDisabledHint": "برای ساخت لینک، اشتراک را در تنظیمات پنل ← اشتراک فعال کنید.",
|
||||
"bulkDeleteConfirmTitle": "حذف {count} کلاینت؟",
|
||||
"bulkDeleteConfirmContent": "هر کلاینت انتخابشده از تمام اینباندهای متصل حذف و سابقه ترافیک آن پاک میشود. این عمل غیرقابل بازگشت است.",
|
||||
"bulkAdjustTitle": "تنظیم {count} کلاینت",
|
||||
@@ -546,12 +714,12 @@
|
||||
"delDepleted": "حذف اتمامیافتهها",
|
||||
"delDepletedConfirmTitle": "حذف کلاینتهای اتمامیافته؟",
|
||||
"delDepletedConfirmContent": "هر کلاینتی که سهمیه ترافیکاش تمام شده یا تاریخ انقضایش گذشته است حذف میشود. این عمل غیرقابل بازگشت است.",
|
||||
"auth": "Auth",
|
||||
"hysteriaAuth": "Auth (هیستریا)",
|
||||
"auth": "احراز",
|
||||
"hysteriaAuth": "احراز Hysteria",
|
||||
"uuid": "UUID",
|
||||
"flow": "Flow",
|
||||
"vmessSecurity": "امنیت VMess",
|
||||
"reverseTag": "Reverse tag",
|
||||
"reverseTag": "تگ معکوس",
|
||||
"reverseTagPlaceholder": "Reverse tag اختیاری",
|
||||
"telegramId": "شناسه کاربر تلگرام",
|
||||
"telegramIdPlaceholder": "شناسه عددی کاربر تلگرام (۰ = هیچ)",
|
||||
@@ -571,6 +739,44 @@
|
||||
"delDepleted": "{count} کلاینت اتمامیافته حذف شد"
|
||||
}
|
||||
},
|
||||
"groups": {
|
||||
"title": "گروهها",
|
||||
"name": "نام",
|
||||
"clientCount": "کاربران در گروه",
|
||||
"totalGroups": "تعداد گروهها",
|
||||
"totalGroupedClients": "کاربران دارای گروه",
|
||||
"emptyGroups": "گروههای خالی",
|
||||
"addGroup": "افزودن گروه",
|
||||
"createSuccess": "گروه «{name}» ایجاد شد.",
|
||||
"rename": "تغییر نام",
|
||||
"renameTitle": "تغییر نام {name}",
|
||||
"renameCollision": "گروهی به نام «{name}» از قبل وجود دارد.",
|
||||
"renameSuccess": "گروه روی {count} کاربر تغییر نام داده شد.",
|
||||
"deleteConfirmTitle": "حذف گروه {name}؟",
|
||||
"deleteConfirmContent": "این عمل گروه را حذف میکند و برچسب آن را از {count} کاربر پاک میکند. خود کاربران حذف نمیشوند.",
|
||||
"deleteSuccess": "گروه از {count} کاربر پاک شد.",
|
||||
"resetTraffic": "بازنشانی ترافیک",
|
||||
"resetConfirmTitle": "بازنشانی ترافیک گروه {name}؟",
|
||||
"resetConfirmContent": "این عمل آپلود/دانلود تمام {count} کاربر این گروه را صفر میکند.",
|
||||
"resetSuccess": "ترافیک {count} کاربر بازنشانی شد.",
|
||||
"adjustSuccess": "{count} کاربر در {name} تنظیم شد.",
|
||||
"emptyForAction": "این گروه هنوز کاربری ندارد.",
|
||||
"deleteGroupOnly": "حذف گروه (نگه داشتن کاربران)",
|
||||
"deleteClients": "حذف کاربران گروه",
|
||||
"deleteClientsConfirmTitle": "حذف همه کاربران در {name}؟",
|
||||
"deleteClientsConfirmContent": "این عمل {count} کاربر را به همراه رکورد ترافیکشان برای همیشه حذف میکند. برچسب گروه نیز پاک میشود. این عمل قابل بازگشت نیست.",
|
||||
"deleteClientsSuccess": "{count} کاربر حذف شد.",
|
||||
"deleteClientsMixed": "{ok} حذف شد، {failed} نادیده گرفته شد",
|
||||
"addToGroup": "افزودن کاربران…",
|
||||
"addToGroupTitle": "افزودن کاربران به گروه «{name}»",
|
||||
"addToGroupDesc": "کاربرانی را برای افزودن به این گروه انتخاب کنید. الصاقهای ورودی فعلی حفظ میشود؛ تنها برچسب گروه تغییر میکند. کاربرانی که از قبل در این گروه هستند نشان داده نمیشوند.",
|
||||
"addToGroupEmpty": "کاربر دیگری برای افزودن در دسترس نیست.",
|
||||
"addToGroupResult": "{count} کاربر به {name} اضافه شد.",
|
||||
"removeFromGroup": "حذف کاربران…",
|
||||
"removeFromGroupTitle": "حذف کاربران از گروه «{name}»",
|
||||
"removeFromGroupDesc": "اعضایی را برای حذف از این گروه انتخاب کنید. خود کاربران حفظ میشوند (برای حذف کامل از «حذف کاربران گروه» استفاده کنید).",
|
||||
"removeFromGroupResult": "{count} کاربر از {name} حذف شد."
|
||||
},
|
||||
"nodes": {
|
||||
"title": "نودها",
|
||||
"addNode": "افزودن نود",
|
||||
@@ -596,9 +802,9 @@
|
||||
"allowPrivateAddressHint": "فقط برای نودهای روی شبکه خصوصی یا VPN فعال شود.",
|
||||
"enable": "فعال",
|
||||
"status": "وضعیت",
|
||||
"cpu": "پردازنده",
|
||||
"cpu": "CPU",
|
||||
"mem": "حافظه",
|
||||
"uptime": "زمان کارکرد",
|
||||
"uptime": "مدت فعالیت",
|
||||
"latency": "تاخیر",
|
||||
"lastHeartbeat": "آخرین ضربان",
|
||||
"xrayVersion": "نسخه Xray",
|
||||
@@ -633,7 +839,7 @@
|
||||
"title": "تنظیمات پنل",
|
||||
"save": "ذخیره",
|
||||
"infoDesc": "برای اعمال تغییرات در این بخش باید پس از ذخیره کردن، پنل را ریستارت کنید",
|
||||
"restartPanel": "ریستارت پنل",
|
||||
"restartPanel": "راهاندازی مجدد پنل",
|
||||
"restartPanelDesc": "آیا مطمئن به ریستارت پنل هستید؟ اگر پساز ریستارت نمیتوانید به پنل دسترسی پیدا کنید، لطفاً گزارشهای موجود در اسکریپت پنل را بررسی کنید",
|
||||
"restartPanelSuccess": "پنل با موفقیت راهاندازی مجدد شد",
|
||||
"actions": "عملیات ها",
|
||||
@@ -658,12 +864,12 @@
|
||||
"publicKeyPathDesc": "مسیر فایل کلیدعمومی برای وب پنل. با '/' شروعمیشود",
|
||||
"privateKeyPath": "مسیر کلید خصوصی",
|
||||
"privateKeyPathDesc": "مسیر فایل کلیدخصوصی برای وب پنل. با '/' شروعمیشود",
|
||||
"panelUrlPath": "URI مسیر",
|
||||
"panelUrlPath": "مسیر URI",
|
||||
"panelUrlPathDesc": "برای وب پنل. با '/' شروع و با '/' خاتمه مییابد URI مسیر",
|
||||
"pageSize": "اندازه صفحه بندی جدول",
|
||||
"pageSizeDesc": "(اندازه صفحه برای جدول ورودیها.(0 = غیرفعال",
|
||||
"panelProxy": "پراکسی شبکهی پنل",
|
||||
"panelProxyDesc": "درخواستهای خروجیِ خودِ پنل (آپدیت geo، چک نسخهی Xray و پنل، تلگرام) را از این پراکسی عبور میدهد تا فیلترینگ سروری گیتهاب/تلگرام دور زده شود. پشتیبانی از socks5:// و http(s)://، برای نمونه یک اینباند SOCKS لوکالِ Xray. برای اتصال مستقیم خالی بگذارید.",
|
||||
"panelProxy": "پراکسی شبکه پنل",
|
||||
"panelProxyDesc": "درخواستهای خروجی خود پنل (بهروزرسانی geo، بررسی نسخه Xray/پنل، تلگرام) را از این پراکسی عبور میدهد تا فیلترینگ GitHub/تلگرام در سرور دور زده شود. socks5:// یا http(s):// قابل قبول است، مثل ورودی SOCKS محلی Xray. برای اتصال مستقیم خالی بگذارید.",
|
||||
"remarkModel": "نامکانفیگ و جداکننده",
|
||||
"datepicker": "نوع تقویم",
|
||||
"datepickerPlaceholder": "انتخاب تاریخ",
|
||||
@@ -677,7 +883,7 @@
|
||||
"telegramBotEnableDesc": "ربات تلگرام را فعال میکند",
|
||||
"telegramToken": "توکن تلگرام",
|
||||
"telegramTokenDesc": "دریافت کنید {'@'}botfather توکن را میتوانید از",
|
||||
"telegramProxy": "SOCKS پراکسی",
|
||||
"telegramProxy": "پراکسی SOCKS",
|
||||
"telegramProxyDesc": "را برای اتصال به تلگرام فعال می کند SOCKS5 پراکسی",
|
||||
"telegramAPIServer": "سرور API تلگرام",
|
||||
"telegramAPIServerDesc": "API سرور تلگرام برای اتصال را تغییر میدهد. برای استفاده از سرور پیش فرض خالی بگذارید",
|
||||
@@ -703,6 +909,8 @@
|
||||
"subEnable": "فعالسازی سرویس سابسکریپشن",
|
||||
"subEnableDesc": "سرویس سابسکریپشن را فعالمیکند",
|
||||
"subJsonEnable": "فعال/غیرفعالسازی مستقل نقطه دسترسی سابسکریپشن JSON.",
|
||||
"subJsonEnableTitle": "اشتراک JSON",
|
||||
"subClashEnableTitle": "اشتراک Clash / Mihomo",
|
||||
"subTitle": "عنوان اشتراک",
|
||||
"subTitleDesc": "عنوان نمایش داده شده در کلاینت VPN",
|
||||
"subSupportUrl": "آدرس پشتیبانی",
|
||||
@@ -723,13 +931,13 @@
|
||||
"subCertPathDesc": "مسیر فایل کلیدعمومی برای سرویس سابیکریپشن. با '/' شروعمیشود",
|
||||
"subKeyPath": "مسیر کلید خصوصی",
|
||||
"subKeyPathDesc": "مسیر فایل کلیدخصوصی برای سرویس سابسکریپشن. با '/' شروعمیشود",
|
||||
"subPath": "URI مسیر",
|
||||
"subPath": "مسیر URI",
|
||||
"subPathDesc": "برای سرویس سابسکریپشن. با '/' شروع و با '/' خاتمه مییابد URI مسیر",
|
||||
"subDomain": "نام دامنه",
|
||||
"subDomainDesc": "آدرس دامنه برای سرویس سابسکریپشن. برای گوش دادن به تمام دامنهها و آیپیها خالیبگذارید",
|
||||
"subUpdates": "فاصله بروزرسانی سابسکریپشن",
|
||||
"subUpdatesDesc": "(فاصله مابین بروزرسانی در برنامههای کاربری. (واحد: ساعت",
|
||||
"subEncrypt": "کدگذاری",
|
||||
"subEncrypt": "انکود",
|
||||
"subEncryptDesc": "کدگذاری خواهدشد Base64 محتوای برگشتی سرویس سابسکریپشن برپایه",
|
||||
"subShowInfo": "نمایش اطلاعات مصرف",
|
||||
"subShowInfoDesc": "ترافیک و زمان باقیمانده را در برنامههای کاربری نمایش میدهد",
|
||||
@@ -738,7 +946,7 @@
|
||||
"subURI": "پروکسی معکوس URI مسیر",
|
||||
"subURIDesc": "سابسکریپشن را برای استفاده در پشت پراکسیها تغییر میدهد URI مسیر",
|
||||
"externalTrafficInformEnable": "اطلاع رسانی خارجی مصرف ترافیک",
|
||||
"externalTrafficInformEnableDesc": "مصرف ترافیک به سرویس خارجی ارسال می شود",
|
||||
"externalTrafficInformEnableDesc": "به API خارجی در هر بهروزرسانی ترافیک اطلاع بده.",
|
||||
"externalTrafficInformURI": "لینک اطلاع رسانی خارجی مصرف ترافیک",
|
||||
"externalTrafficInformURIDesc": "ترافیک های مصرفی به این لینک هم ارسال می شود",
|
||||
"restartXrayOnClientDisable": "ریاستارت Xray بعد از غیرفعالسازی خودکار",
|
||||
@@ -748,7 +956,55 @@
|
||||
"fragmentSett": "تنظیمات فرگمنت",
|
||||
"noisesDesc": "فعال کردن Noises.",
|
||||
"noisesSett": "تنظیمات Noises",
|
||||
"mux": "ماکس",
|
||||
"trustedProxyCidrs": "CIDRهای پراکسی مورد اعتماد",
|
||||
"trustedProxyCidrsDesc": "IPها/CIDRها (با کاما) که مجازند هدرهای host، proto و client IP فوروارد را تنظیم کنند.",
|
||||
"ldap": {
|
||||
"enable": "فعالسازی همگامسازی LDAP",
|
||||
"host": "میزبان LDAP",
|
||||
"port": "پورت LDAP",
|
||||
"useTls": "استفاده از TLS (LDAPS)",
|
||||
"bindDn": "Bind DN",
|
||||
"passwordConfigured": "تنظیمشده؛ برای حفظ رمز فعلی خالی بگذارید.",
|
||||
"passwordUnconfigured": "تنظیم نشده.",
|
||||
"passwordPlaceholder": "تنظیمشده – برای جایگزینی مقدار جدید وارد کنید",
|
||||
"baseDn": "Base DN",
|
||||
"userFilter": "فیلتر کاربر",
|
||||
"userAttr": "صفت کاربر (username/email)",
|
||||
"vlessField": "صفت پرچم VLESS",
|
||||
"flagField": "صفت پرچم عمومی (اختیاری)",
|
||||
"flagFieldDesc": "اگر تعیین شود، پرچم VLESS را override میکند — مثل shadowInactive.",
|
||||
"truthyValues": "مقادیر صحیح",
|
||||
"truthyValuesDesc": "با کاما جدا شده؛ پیشفرض: true,1,yes,on",
|
||||
"invertFlag": "وارونگی پرچم",
|
||||
"invertFlagDesc": "وقتی صفت به معنی «غیرفعال» است فعال کنید (مثل shadowInactive).",
|
||||
"syncSchedule": "زمانبندی همگامسازی",
|
||||
"syncScheduleDesc": "رشته شبیه cron، مثل @every 1m",
|
||||
"inboundTags": "تگهای ورودی",
|
||||
"inboundTagsDesc": "ورودیهایی که همگامسازی LDAP اجازه دارد روی آنها کاربر بسازد یا حذف کند.",
|
||||
"noInbounds": "هیچ ورودی یافت نشد. ابتدا از بخش ورودیها یکی بسازید.",
|
||||
"autoCreate": "ساخت خودکار کاربران",
|
||||
"autoDelete": "حذف خودکار کاربران",
|
||||
"defaultTotalGb": "حجم پیشفرض (GB)",
|
||||
"defaultExpiryDays": "انقضای پیشفرض (روز)",
|
||||
"defaultIpLimit": "محدودیت IP پیشفرض"
|
||||
},
|
||||
"subFormats": {
|
||||
"packets": "بستهها",
|
||||
"length": "طول",
|
||||
"interval": "بازه",
|
||||
"maxSplit": "حداکثر تقسیم",
|
||||
"noises": "نویزها",
|
||||
"noiseItem": "نویز №{n}",
|
||||
"type": "نوع",
|
||||
"packet": "بسته",
|
||||
"delayMs": "تأخیر (ms)",
|
||||
"applyTo": "اعمال بر",
|
||||
"addNoise": "+ نویز",
|
||||
"concurrency": "همزمانی",
|
||||
"xudpConcurrency": "همزمانی xudp",
|
||||
"xudpUdp443": "xudp UDP 443"
|
||||
},
|
||||
"mux": "Mux",
|
||||
"muxDesc": "چندین جریان داده مستقل را در یک جریان داده ثابت منتقل می کند",
|
||||
"muxSett": "تنظیمات ماکس",
|
||||
"direct": "اتصال مستقیم",
|
||||
@@ -801,8 +1057,11 @@
|
||||
"xray": {
|
||||
"title": "پیکربندی ایکسری",
|
||||
"save": "ذخیره",
|
||||
"restart": "ریستارت ایکسری",
|
||||
"restart": "راهاندازی مجدد Xray",
|
||||
"restartSuccess": "Xray با موفقیت راهاندازی مجدد شد",
|
||||
"restartOutputTitle": "خروجی راهاندازی مجدد Xray",
|
||||
"restartConfirmTitle": "راهاندازی مجدد xray؟",
|
||||
"restartConfirmContent": "سرویس xray با پیکربندی ذخیرهشده دوباره بارگذاری میشود.",
|
||||
"stopSuccess": "Xray با موفقیت متوقف شد",
|
||||
"restartError": "خطا در راهاندازی مجدد Xray.",
|
||||
"stopError": "خطا در توقف Xray.",
|
||||
@@ -810,7 +1069,7 @@
|
||||
"advancedTemplate": "پیشرفته",
|
||||
"generalConfigs": "استراتژی کلی",
|
||||
"generalConfigsDesc": "این گزینهها استراتژی کلی ترافیک را تعیین میکنند",
|
||||
"logConfigs": "گزارش",
|
||||
"logConfigs": "لاگ",
|
||||
"logConfigsDesc": "گزارشها ممکن است بر کارایی سرور شما تأثیر بگذارد. توصیه می شود فقط در صورت نیاز آن را عاقلانه فعال کنید",
|
||||
"blockConfigsDesc": "این گزینهها ترافیک را بر اساس پروتکلهای درخواستی خاص، و وب سایتها مسدود میکند",
|
||||
"basicRouting": "مسیریابی پایه",
|
||||
@@ -840,11 +1099,11 @@
|
||||
"Outbounds": "خروجیها",
|
||||
"Balancers": "بالانسرها",
|
||||
"balancerTagRequired": "تگ الزامی است",
|
||||
"balancerSelectorRequired": "حداقل یک outbound انتخاب کنید",
|
||||
"balancerSelectorRequired": "حداقل یک خروجی انتخاب کنید",
|
||||
"OutboundsDesc": "مسیر ترافیک خروجی را تنظیم کنید",
|
||||
"Routings": "قوانین مسیریابی",
|
||||
"RoutingsDesc": "اولویت هر قانون مهم است",
|
||||
"completeTemplate": "کامل",
|
||||
"completeTemplate": "همه",
|
||||
"logLevel": "سطح گزارش",
|
||||
"logLevelDesc": "سطح گزارش برای گزارش های خطا، نشان دهنده اطلاعاتی است که باید ثبت شوند.",
|
||||
"accessLog": "مسیر گزارش",
|
||||
@@ -879,6 +1138,73 @@
|
||||
"edit": "ویرایش قانون",
|
||||
"useComma": "موارد جدا شده با کاما"
|
||||
},
|
||||
"routing": {
|
||||
"dragToReorder": "برای تغییر ترتیب بکشید"
|
||||
},
|
||||
"ruleForm": {
|
||||
"sourceIps": "IPهای مبدا",
|
||||
"sourcePort": "پورت مبدا",
|
||||
"vlessRoute": "مسیر VLESS",
|
||||
"attributes": "صفتها",
|
||||
"value": "مقدار",
|
||||
"user": "کاربر",
|
||||
"inboundTags": "تگهای ورودی",
|
||||
"outboundTag": "تگ خروجی",
|
||||
"balancerTag": "تگ بالانسر",
|
||||
"balancerTagTooltip": "ترافیک را از یکی از بالانسرهای پیکربندیشده عبور میدهد"
|
||||
},
|
||||
"outboundForm": {
|
||||
"tagDuplicate": "این تگ توسط خروجی دیگری استفاده شده است",
|
||||
"tagRequired": "تگ الزامی است",
|
||||
"tagPlaceholder": "تگ-منحصربهفرد",
|
||||
"localIpPlaceholder": "IP محلی",
|
||||
"addressRequired": "آدرس الزامی است",
|
||||
"portRequired": "پورت الزامی است",
|
||||
"optional": "اختیاری",
|
||||
"udpOverTcp": "UDP over TCP",
|
||||
"uotVersion": "نسخه UoT",
|
||||
"inboundTag": "تگ ورودی",
|
||||
"inboundTagPlaceholder": "تگ ورودی استفادهشده در قوانین مسیریابی",
|
||||
"responseType": "نوع پاسخ",
|
||||
"rewriteNetwork": "بازنویسی شبکه",
|
||||
"unchanged": "(بدون تغییر)",
|
||||
"unchangedAddress": "(بدون تغییر) مثل 1.1.1.1",
|
||||
"rules": "قوانین",
|
||||
"ruleN": "قانون {n}",
|
||||
"action": "عمل",
|
||||
"redirect": "بازهدایت",
|
||||
"fragment": "Fragment",
|
||||
"finalRules": "قوانین نهایی",
|
||||
"overrideXrayPrivateIp": "override بلاک پیشفرض IP خصوصی Xray",
|
||||
"blockDelay": "تأخیر بلاک (ms)",
|
||||
"reverseSniffing": "Sniffing معکوس",
|
||||
"workers": "Workerها",
|
||||
"reserved": "رزرو شده",
|
||||
"minUploadInterval": "حداقل بازه آپلود (ms)",
|
||||
"maxUploadSizeBytes": "حداکثر اندازه آپلود (بایت)",
|
||||
"uplinkChunkSize": "اندازه قطعه آپلینک",
|
||||
"noGrpcHeader": "بدون هدر gRPC",
|
||||
"maxConcurrency": "حداکثر همزمانی",
|
||||
"maxConnections": "حداکثر اتصالها",
|
||||
"maxReuseTimes": "حداکثر استفاده مجدد",
|
||||
"maxRequestTimes": "حداکثر تعداد درخواست",
|
||||
"maxReusableSecs": "حداکثر ثانیه قابل استفاده مجدد",
|
||||
"keepAlivePeriod": "دوره Keep alive",
|
||||
"authPassword": "رمز احراز",
|
||||
"visionTestpre": "Vision testpre",
|
||||
"serverNamePlaceholder": "نام سرور",
|
||||
"verifyPeerName": "تایید نام Peer",
|
||||
"pinnedSha256": "SHA256 پینشده",
|
||||
"shortId": "Short ID",
|
||||
"sockopts": "Sockopts",
|
||||
"keepAliveInterval": "بازه Keep alive",
|
||||
"markFwmark": "علامت (fwmark)",
|
||||
"interface": "رابط",
|
||||
"ipv6Only": "فقط IPv6",
|
||||
"acceptProxyProtocol": "پذیرش Proxy Protocol",
|
||||
"tcpUserTimeoutMs": "TCP user timeout (ms)",
|
||||
"tcpKeepAliveIdleS": "TCP keep-alive idle (s)"
|
||||
},
|
||||
"outbound": {
|
||||
"addOutbound": "افزودن خروجی",
|
||||
"addReverse": "افزودن معکوس",
|
||||
@@ -887,7 +1213,7 @@
|
||||
"reverseTag": "تگ معکوس",
|
||||
"reverseTagDesc": "تگ خروجی پروکسی معکوس ساده VLESS. برای غیرفعال کردن خالی بگذارید. در صورت تنظیم، اتصالات این کلاینت میتوانند به عنوان تونل پروکسی معکوس استفاده شوند.",
|
||||
"reverseTagPlaceholder": "تگ خروجی (خالی = غیرفعال)",
|
||||
"tag": "برچسب",
|
||||
"tag": "تگ",
|
||||
"tagDesc": "برچسب یگانه",
|
||||
"address": "آدرس",
|
||||
"reverse": "معکوس",
|
||||
@@ -907,6 +1233,8 @@
|
||||
"testSuccess": "تست موفقیتآمیز",
|
||||
"testFailed": "تست ناموفق",
|
||||
"testError": "خطا در تست خروجی",
|
||||
"testModeTooltip": "TCP: فقط dial سریع. HTTP: درخواست کامل از طریق xray.",
|
||||
"testAll": "تست همه",
|
||||
"nordvpn": "NordVPN",
|
||||
"accessToken": "توکن دسترسی",
|
||||
"country": "کشور",
|
||||
@@ -921,8 +1249,18 @@
|
||||
"editBalancer": "ویرایش بالانسر",
|
||||
"balancerStrategy": "استراتژی",
|
||||
"balancerSelectors": "انتخابگرها",
|
||||
"tag": "برچسب",
|
||||
"tag": "تگ",
|
||||
"tagDesc": "برچسب یگانه",
|
||||
"tagDuplicate": "این تگ توسط بالانسر دیگری استفاده شده است",
|
||||
"tagPlaceholder": "تگ منحصربهفرد بالانسر",
|
||||
"selector": "انتخابگر",
|
||||
"fallback": "Fallback",
|
||||
"expected": "مورد انتظار",
|
||||
"expectedPlaceholder": "تعداد نود بهینه",
|
||||
"maxRtt": "حداکثر RTT",
|
||||
"tolerance": "تحمل",
|
||||
"baselines": "خطوط پایه",
|
||||
"costs": "هزینهها",
|
||||
"balancerDesc": "امکان استفاده همزمان balancerTag و outboundTag باهم وجود ندارد. درصورت استفاده همزمان فقط outboundTag عمل خواهد کرد."
|
||||
},
|
||||
"wireguard": {
|
||||
@@ -939,6 +1277,38 @@
|
||||
"userLevel": "سطح کاربر",
|
||||
"userLevelDesc": "تمام اتصالات انجامشده از طریق این ورودی از این سطح کاربری استفاده خواهند کرد. مقدار پیشفرض 0 است"
|
||||
},
|
||||
"nord": {
|
||||
"accessToken": "توکن دسترسی",
|
||||
"privateKey": "کلید خصوصی",
|
||||
"noServers": "سروری برای کشور انتخابی پیدا نشد",
|
||||
"noPublicKey": "سرور انتخابی کلید عمومی NordLynx اعلام نمیکند.",
|
||||
"outboundAdded": "خروجی NordVPN اضافه شد",
|
||||
"outboundUpdated": "خروجی NordVPN بهروزرسانی شد"
|
||||
},
|
||||
"warp": {
|
||||
"licenseError": "تنظیم لایسنس WARP ناموفق بود.",
|
||||
"fetchFirst": "ابتدا پیکربندی WARP را دریافت کنید.",
|
||||
"createAccount": "ایجاد حساب WARP",
|
||||
"accessToken": "توکن دسترسی",
|
||||
"deviceId": "شناسه دستگاه",
|
||||
"licenseKey": "کلید لایسنس",
|
||||
"privateKey": "کلید خصوصی",
|
||||
"deleteAccount": "حذف حساب",
|
||||
"settings": "تنظیمات",
|
||||
"licenseKeyLabel": "کلید لایسنس WARP / WARP+",
|
||||
"key": "کلید",
|
||||
"keyPlaceholder": "کلید ۲۶ کاراکتری WARP+",
|
||||
"accountInfo": "اطلاعات حساب",
|
||||
"deviceName": "نام دستگاه",
|
||||
"deviceModel": "مدل دستگاه",
|
||||
"deviceEnabled": "دستگاه فعال",
|
||||
"accountType": "نوع حساب",
|
||||
"role": "نقش",
|
||||
"warpPlusData": "داده WARP+",
|
||||
"quota": "سهمیه",
|
||||
"usage": "مصرف",
|
||||
"addOutbound": "افزودن خروجی"
|
||||
},
|
||||
"dns": {
|
||||
"enable": "فعال کردن حل دامنه",
|
||||
"enableDesc": "سرور حل دامنه داخلی را فعال کنید",
|
||||
@@ -1006,7 +1376,7 @@
|
||||
"hours": "ساعت",
|
||||
"minutes": "دقیقه",
|
||||
"unknown": "نامشخص",
|
||||
"inbounds": "ورودی ها",
|
||||
"inbounds": "ورودیها",
|
||||
"clients": "کاربران",
|
||||
"offline": "🔴 آفلاین",
|
||||
"online": "🟢 آنلاین",
|
||||
@@ -1039,24 +1409,24 @@
|
||||
"2faFailed": "خطای 2FA",
|
||||
"report": "🕰 گزارشاتزمانبندیشده: {{ .RunTime }}\r\n",
|
||||
"datetime": "⏰ تاریخوزمان: {{ .DateTime }}\r\n",
|
||||
"hostname": "💻 ناممیزبان: {{ .Hostname }}\r\n",
|
||||
"hostname": "💻 میزبان: {{ .Hostname }}\r\n",
|
||||
"version": "🚀 نسخهپنل: {{ .Version }}\r\n",
|
||||
"xrayVersion": "📡 نسخههسته: {{ .XrayVersion }}\r\n",
|
||||
"ipv6": "🌐 IPv6: {{ .IPv6 }}\r\n",
|
||||
"ipv4": "🌐 IPv4: {{ .IPv4 }}\r\n",
|
||||
"ip": "🌐 آدرسآیپی: {{ .IP }}\r\n",
|
||||
"ips": "🔢 آدرسهای آیپی:\r\n{{ .IPs }}\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": "📋 RAM: {{ .Current }}/{{ .Total }}\r\n",
|
||||
"tcpCount": "🔹 TCP: {{ .Count }}\r\n",
|
||||
"udpCount": "🔸 UDP: {{ .Count }}\r\n",
|
||||
"traffic": "🚦 ترافیک: {{ .Total }} (↑{{ .Upload }},↓{{ .Download }})\r\n",
|
||||
"xrayStatus": "ℹ️ وضعیتایکسری: {{ .State }}\r\n",
|
||||
"xrayStatus": "ℹ️ وضعیت: {{ .State }}\r\n",
|
||||
"username": "👤 نامکاربری: {{ .Username }}\r\n",
|
||||
"reason": "❗️ دلیل: {{ .Reason }}\r\n",
|
||||
"time": "⏰ زمان: {{ .Time }}\r\n",
|
||||
"inbound": "📍 نامورودی: {{ .Remark }}\r\n",
|
||||
"inbound": "📍 ورودی: {{ .Remark }}\r\n",
|
||||
"port": "🔌 پورت: {{ .Port }}\r\n",
|
||||
"expire": "📅 تاریخانقضا: {{ .Time }}\r\n\r\n",
|
||||
"expireIn": "📅 باقی مانده تا انقضا: {{ .Time }}\r\n\r\n",
|
||||
@@ -1065,9 +1435,9 @@
|
||||
"online": "🌐 وضعیت اتصال: {{ .Status }}\r\n",
|
||||
"lastOnline": "🔙 آخرین فعالیت: {{ .Time }}\r\n",
|
||||
"email": "📧 ایمیل: {{ .Email }}\r\n",
|
||||
"upload": "🔼 آپلود↑: {{ .Upload }}\r\n",
|
||||
"download": "🔽 دانلود↓: {{ .Download }}\r\n",
|
||||
"total": "🔄 کل: {{ .UpDown }} / {{ .Total }}\r\n",
|
||||
"upload": "🔼 آپلود: ↑{{ .Upload }}\r\n",
|
||||
"download": "🔽 دانلود: ↓{{ .Download }}\r\n",
|
||||
"total": "📊 کل: ↑↓{{ .UpDown }} / {{ .Total }}\r\n",
|
||||
"TGUser": "👤 کاربر تلگرام: {{ .TelegramID }}\r\n",
|
||||
"exhaustedMsg": "🚨 {{ .Type }} بهاتمامرسیدهاست:\r\n",
|
||||
"exhaustedCount": "🚨 تعداد {{ .Type }} بهاتمامرسیدهاست:\r\n",
|
||||
@@ -1134,11 +1504,11 @@
|
||||
"submitDisable": "ارسال به عنوان غیرفعال ☑️",
|
||||
"submitEnable": "ارسال به عنوان فعال ✅",
|
||||
"use_default": "🏷️ استفاده از پیشفرض",
|
||||
"change_id": "⚙️🔑 شناسه",
|
||||
"change_id": "⚙️🔑 ID",
|
||||
"change_password": "⚙️🔑 گذرواژه",
|
||||
"change_email": "⚙️📧 ایمیل",
|
||||
"change_comment": "⚙️💬 نظر",
|
||||
"change_flow": "⚙️🚦 جریان",
|
||||
"change_flow": "⚙️🚦 Flow",
|
||||
"ResetAllTraffics": "بازنشانی همه ترافیکها",
|
||||
"SortedTrafficUsageReport": "گزارش استفاده از ترافیک مرتبشده"
|
||||
},
|
||||
@@ -1166,4 +1536,4 @@
|
||||
"chooseInbound": "یک ورودی انتخاب کنید"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user