2026-05-08 12:54:07 +00:00
{
"username" : "Username" ,
"password" : "Password" ,
"login" : "Log In" ,
"confirm" : "Confirm" ,
"cancel" : "Cancel" ,
"close" : "Close" ,
"save" : "Save" ,
"logout" : "Log Out" ,
"create" : "Create" ,
"update" : "Update" ,
"copy" : "Copy" ,
"copied" : "Copied" ,
"download" : "Download" ,
"remark" : "Remark" ,
"enable" : "Enabled" ,
"protocol" : "Protocol" ,
"search" : "Search" ,
"filter" : "Filter" ,
"loading" : "Loading..." ,
"second" : "Second" ,
"minute" : "Minute" ,
"hour" : "Hour" ,
"day" : "Day" ,
"check" : "Check" ,
"indefinite" : "Indefinite" ,
"unlimited" : "Unlimited" ,
"none" : "None" ,
"qrCode" : "QR Code" ,
"info" : "More Information" ,
"edit" : "Edit" ,
"delete" : "Delete" ,
"reset" : "Reset" ,
"noData" : "No data." ,
"copySuccess" : "Copied Successful" ,
"sure" : "Sure" ,
"encryption" : "Encryption" ,
"useIPv4ForHost" : "Use IPv4 for host" ,
"transmission" : "Transmission" ,
"host" : "Host" ,
"path" : "Path" ,
"camouflage" : "Obfuscation" ,
"status" : "Status" ,
"enabled" : "Enabled" ,
"disabled" : "Disabled" ,
"depleted" : "Ended" ,
"depletingSoon" : "Depleting" ,
"offline" : "Offline" ,
"online" : "Online" ,
"domainName" : "Domain Name" ,
"monitor" : "Listen IP" ,
"certificate" : "Digital Certificate" ,
"fail" : "Failed" ,
"comment" : "Comment" ,
"success" : "Successfully" ,
"lastOnline" : "Last Online" ,
"getVersion" : "Get Version" ,
"install" : "Install" ,
"clients" : "Clients" ,
"usage" : "Usage" ,
"twoFactorCode" : "Code" ,
"remained" : "Remained" ,
"security" : "Security" ,
"secAlertTitle" : "Security Alert" ,
"secAlertSsl" : "This connection is not secure. Please avoid entering sensitive information until TLS is activated for data protection." ,
"secAlertConf" : "Certain settings are vulnerable to attacks. It is recommended to reinforce security protocols to prevent potential breaches." ,
"secAlertSSL" : "Panel lacks secure connection. Please install TLS certificate for data protection." ,
"secAlertPanelPort" : "Panel default port is vulnerable. Please configure a random or specific port." ,
"secAlertPanelURI" : "Panel default URI path is insecure. Please configure a complex URI path." ,
"secAlertSubURI" : "Subscription default URI path is insecure. Please configure a complex URI path." ,
"secAlertSubJsonURI" : "Subscription JSON default URI path is insecure. Please configure a complex URI path." ,
"emptyDnsDesc" : "No added DNS servers." ,
"emptyFakeDnsDesc" : "No added Fake DNS servers." ,
"emptyBalancersDesc" : "No added balancers." ,
"emptyReverseDesc" : "No added reverse proxies." ,
"somethingWentWrong" : "Something went wrong" ,
"subscription" : {
"title" : "Subscription info" ,
"subId" : "Subscription ID" ,
"status" : "Status" ,
"downloaded" : "Downloaded" ,
"uploaded" : "Uploaded" ,
"expiry" : "Expiry" ,
"totalQuota" : "Total quota" ,
"individualLinks" : "Individual links" ,
"active" : "Active" ,
"inactive" : "Inactive" ,
"unlimited" : "Unlimited" ,
"noExpiry" : "No expiry"
} ,
"menu" : {
"theme" : "Theme" ,
"dark" : "Dark" ,
"ultraDark" : "Ultra Dark" ,
"dashboard" : "Overview" ,
"inbounds" : "Inbounds" ,
2026-05-09 13:25:29 +00:00
"nodes" : "Nodes" ,
2026-05-08 12:54:07 +00:00
"settings" : "Panel Settings" ,
"xray" : "Xray Configs" ,
"logout" : "Log Out" ,
"link" : "Manage"
} ,
"pages" : {
"login" : {
"hello" : "Hello" ,
"title" : "Welcome" ,
"loginAgain" : "Your session has expired, please log in again" ,
"toasts" : {
"invalidFormData" : "The Input data format is invalid." ,
"emptyUsername" : "Username is required" ,
"emptyPassword" : "Password is required" ,
"wrongUsernameOrPassword" : "Invalid username or password or two-factor code." ,
"successLogin" : " You have successfully logged into your account."
}
} ,
"index" : {
"title" : "Overview" ,
"cpu" : "CPU" ,
"logicalProcessors" : "Logical Processors" ,
"frequency" : "Frequency" ,
"swap" : "Swap" ,
"storage" : "Storage" ,
"memory" : "RAM" ,
"threads" : "Threads" ,
"xrayStatus" : "Xray" ,
"stopXray" : "Stop" ,
"restartXray" : "Restart" ,
"xraySwitch" : "Version" ,
"xrayUpdates" : "Xray Updates" ,
"xraySwitchClick" : "Choose the version you want to switch to." ,
"xraySwitchClickDesk" : "Choose carefully, as older versions may not be compatible with current configurations." ,
"updatePanel" : "Update Panel" ,
"panelUpdateDesc" : "This will update 3X-UI itself to the latest release and restart the panel service." ,
"currentPanelVersion" : "Current panel version" ,
"latestPanelVersion" : "Latest panel version" ,
"panelUpToDate" : "Panel is up to date" ,
"upToDate" : "Up to date" ,
"xrayStatusUnknown" : "Unknown" ,
"xrayStatusRunning" : "Running" ,
"xrayStatusStop" : "Stop" ,
"xrayStatusError" : "Error" ,
"xrayErrorPopoverTitle" : "An error occurred while running Xray" ,
"operationHours" : "Uptime" ,
"systemLoad" : "System Load" ,
"systemLoadDesc" : "System load average for the past 1, 5, and 15 minutes" ,
"connectionCount" : "Connection Stats" ,
"ipAddresses" : "IP Addresses" ,
"toggleIpVisibility" : "Toggle visibility of the IP" ,
"overallSpeed" : "Overall Speed" ,
"upload" : "Upload" ,
"download" : "Download" ,
"totalData" : "Total Data" ,
"sent" : "Sent" ,
"received" : "Received" ,
"documentation" : "Documentation" ,
"xraySwitchVersionDialog" : "Do you really want to change the Xray version?" ,
"xraySwitchVersionDialogDesc" : "This will change the Xray version to #version#." ,
"xraySwitchVersionPopover" : "Xray updated successfully" ,
"panelUpdateDialog" : "Do you really want to update the panel?" ,
"panelUpdateDialogDesc" : "This will update 3X-UI to #version# and restart the panel service." ,
"panelUpdateCheckPopover" : "Panel update check failed" ,
"panelUpdateStartedPopover" : "Panel update started" ,
"geofileUpdateDialog" : "Do you really want to update the geofile?" ,
"geofileUpdateDialogDesc" : "This will update the #filename# file." ,
"geofilesUpdateDialogDesc" : "This will update all geofiles." ,
"geofilesUpdateAll" : "Update all" ,
"geofileUpdatePopover" : "Geofile updated successfully" ,
"customGeoTitle" : "Custom GeoSite / GeoIP" ,
"customGeoAdd" : "Add" ,
"customGeoType" : "Type" ,
"customGeoAlias" : "Alias" ,
"customGeoUrl" : "URL" ,
"customGeoEnabled" : "Enabled" ,
"customGeoLastUpdated" : "Last updated" ,
"customGeoExtColumn" : "Routing (ext:…)" ,
"customGeoToastUpdateAll" : "All custom geo sources updated" ,
"customGeoActions" : "Actions" ,
"customGeoEdit" : "Edit" ,
"customGeoDelete" : "Delete" ,
"customGeoDownload" : "Update now" ,
"customGeoModalAdd" : "Add custom geo" ,
"customGeoModalEdit" : "Edit custom geo" ,
"customGeoModalSave" : "Save" ,
"customGeoDeleteConfirm" : "Delete this custom geo source?" ,
"customGeoRoutingHint" : "In routing rules use the value column as ext:file.dat:tag (replace tag)." ,
"customGeoInvalidId" : "Invalid resource id" ,
"customGeoAliasesError" : "Failed to load custom geo aliases" ,
"customGeoValidationAlias" : "Alias may only contain lowercase letters, digits, - and _" ,
"customGeoValidationUrl" : "URL must start with http:// or https://" ,
"customGeoAliasPlaceholder" : "a-z 0-9 _ -" ,
"customGeoAliasLabelSuffix" : " (custom)" ,
"customGeoToastList" : "Custom geo list" ,
"customGeoToastAdd" : "Add custom geo" ,
"customGeoToastUpdate" : "Update custom geo" ,
"customGeoToastDelete" : "Custom geo file “{{ .fileName }}” deleted" ,
"customGeoToastDownload" : "Geofile “{{ .fileName }}” updated" ,
"customGeoErrInvalidType" : "Type must be geosite or geoip" ,
"customGeoErrAliasRequired" : "Alias is required" ,
"customGeoErrAliasPattern" : "Alias must match allowed characters" ,
"customGeoErrAliasReserved" : "This alias is reserved" ,
"customGeoErrUrlRequired" : "URL is required" ,
"customGeoErrInvalidUrl" : "URL is invalid" ,
"customGeoErrUrlScheme" : "URL must use http or https" ,
"customGeoErrUrlHost" : "URL host is invalid" ,
"customGeoErrDuplicateAlias" : "This alias is already used for this type" ,
"customGeoErrNotFound" : "Custom geo source not found" ,
"customGeoErrDownload" : "Download failed" ,
"customGeoErrUpdateAllIncomplete" : "One or more custom geo sources failed to update" ,
"customGeoEmpty" : "No custom geo sources yet — click Add to create one" ,
"dontRefresh" : "Installation is in progress, please do not refresh this page" ,
"logs" : "Logs" ,
"config" : "Config" ,
"backup" : "Backup" ,
2026-05-08 15:53:45 +00:00
"backupTitle" : "Backup & Restore" ,
2026-05-08 12:54:07 +00:00
"exportDatabase" : "Back Up" ,
"exportDatabaseDesc" : "Click to download a .db file containing a backup of your current database to your device." ,
"importDatabase" : "Restore" ,
"importDatabaseDesc" : "Click to select and upload a .db file from your device to restore your database from a backup." ,
"importDatabaseSuccess" : "The database has been successfully imported." ,
"importDatabaseError" : "An error occurred while importing the database." ,
"readDatabaseError" : "An error occurred while reading the database." ,
"getDatabaseError" : "An error occurred while retrieving the database." ,
"getConfigError" : "An error occurred while retrieving the config file."
} ,
"inbounds" : {
"allTimeTraffic" : "All-time Traffic" ,
"allTimeTrafficUsage" : "All Time Total Usage" ,
"title" : "Inbounds" ,
"totalDownUp" : "Total Sent/Received" ,
"totalUsage" : "Total Usage" ,
"inboundCount" : "Total Inbounds" ,
"operate" : "Menu" ,
"enable" : "Enabled" ,
"remark" : "Remark" ,
2026-05-09 13:25:29 +00:00
"node" : "Node" ,
"deployTo" : "Deploy to" ,
"localPanel" : "Local panel" ,
2026-05-08 12:54:07 +00:00
"protocol" : "Protocol" ,
"port" : "Port" ,
"portMap" : "Port Mapping" ,
"traffic" : "Traffic" ,
"details" : "Details" ,
"transportConfig" : "Transport" ,
"expireDate" : "Duration" ,
"createdAt" : "Created" ,
"updatedAt" : "Updated" ,
"resetTraffic" : "Reset Traffic" ,
"addInbound" : "Add Inbound" ,
"generalActions" : "General Actions" ,
"autoRefresh" : "Auto-refresh" ,
"autoRefreshInterval" : "Interval" ,
"modifyInbound" : "Modify Inbound" ,
"deleteInbound" : "Delete Inbound" ,
"deleteInboundContent" : "Are you sure you want to delete inbound?" ,
"deleteClient" : "Delete Client" ,
"deleteClientContent" : "Are you sure you want to delete client?" ,
"resetTrafficContent" : "Are you sure you want to reset traffic?" ,
"copyLink" : "Copy URL" ,
"address" : "Address" ,
"network" : "Network" ,
"destinationPort" : "Destination Port" ,
"targetAddress" : "Target Address" ,
"monitorDesc" : "Leave blank to listen on all IPs" ,
"meansNoLimit" : "= Unlimited. (unit: GB)" ,
"totalFlow" : "Total Flow" ,
"leaveBlankToNeverExpire" : "Leave blank to never expire" ,
"noRecommendKeepDefault" : "It is recommended to keep the default" ,
"certificatePath" : "File Path" ,
"certificateContent" : "File Content" ,
"publicKey" : "Public Key" ,
"privatekey" : "Private Key" ,
"clickOnQRcode" : "Click on QR Code to Copy" ,
"client" : "Client" ,
"export" : "Export All URLs" ,
"clone" : "Clone" ,
"cloneInbound" : "Clone" ,
"cloneInboundContent" : "All settings of this inbound, except Port, Listening IP, and Clients, will be applied to the clone." ,
"cloneInboundOk" : "Clone" ,
"resetAllTraffic" : "Reset All Inbounds Traffic" ,
"resetAllTrafficTitle" : "Reset All Inbounds Traffic" ,
"resetAllTrafficContent" : "Are you sure you want to reset the traffic of all inbounds?" ,
"resetInboundClientTraffics" : "Reset Clients Traffic" ,
"resetInboundClientTrafficTitle" : "Reset Clients Traffic" ,
"resetInboundClientTrafficContent" : "Are you sure you want to reset the traffic of this inbound's clients?" ,
"resetAllClientTraffics" : "Reset All Clients Traffic" ,
"resetAllClientTrafficTitle" : "Reset All Clients Traffic" ,
"resetAllClientTrafficContent" : "Are you sure you want to reset the traffic of all clients?" ,
"delDepletedClients" : "Delete Depleted Clients" ,
"delDepletedClientsTitle" : "Delete Depleted Clients" ,
"delDepletedClientsContent" : "Are you sure you want to delete all the depleted clients?" ,
"email" : "Email" ,
"emailDesc" : "Please provide a unique email address." ,
"IPLimit" : "IP Limit" ,
"IPLimitDesc" : "Disables inbound if the count exceeds the set value. (0 = disable)" ,
"IPLimitlog" : "IP Log" ,
"IPLimitlogDesc" : "The IPs history log. (to enable inbound after disabling, clear the log)" ,
"IPLimitlogclear" : "Clear The Log" ,
"setDefaultCert" : "Set Cert from Panel" ,
2026-05-08 15:20:30 +00:00
"telegramDesc" : "Please provide Telegram Chat ID. (use '/id' command in the bot) or ({'@'}userinfobot)" ,
2026-05-08 12:54:07 +00:00
"subscriptionDesc" : "To find your subscription URL, navigate to the 'Details'. Additionally, you can use the same name for several clients." ,
"info" : "Info" ,
"same" : "Same" ,
"inboundData" : "Inbound's Data" ,
"exportInbound" : "Export Inbound" ,
"import" : "Import" ,
"importInbound" : "Import an Inbound" ,
"periodicTrafficResetTitle" : "Traffic Reset" ,
"periodicTrafficResetDesc" : "Automatically reset traffic counter at specified intervals" ,
"lastReset" : "Last Reset" ,
"periodicTrafficReset" : {
"never" : "Never" ,
"daily" : "Daily" ,
"weekly" : "Weekly" ,
"monthly" : "Monthly" ,
"hourly" : "Hourly"
} ,
"toasts" : {
"obtain" : "Obtain" ,
"updateSuccess" : "The update was successful." ,
"logCleanSuccess" : "The log has been cleared." ,
"inboundsUpdateSuccess" : "Inbounds have been successfully updated." ,
"inboundUpdateSuccess" : "Inbound has been successfully updated." ,
"inboundCreateSuccess" : "Inbound has been successfully created." ,
"inboundDeleteSuccess" : "Inbound has been successfully deleted." ,
"inboundClientAddSuccess" : "Inbound client(s) have been added." ,
"inboundClientDeleteSuccess" : "Inbound client has been deleted." ,
"inboundClientUpdateSuccess" : "Inbound client has been updated." ,
"delDepletedClientsSuccess" : "All depleted clients are deleted." ,
"resetAllClientTrafficSuccess" : "All traffic from the client has been reset." ,
"resetAllTrafficSuccess" : "All traffic has been reset." ,
"resetInboundClientTrafficSuccess" : "Traffic has been reset." ,
"trafficGetError" : "Error getting traffics." ,
"getNewX25519CertError" : "Error while obtaining the X25519 certificate." ,
"getNewmldsa65Error" : "Error while obtaining mldsa65." ,
"getNewVlessEncError" : "Error while obtaining VlessEnc."
} ,
"stream" : {
"general" : {
"request" : "Request" ,
"response" : "Response" ,
"name" : "Name" ,
"value" : "Value"
} ,
"tcp" : {
"version" : "Version" ,
"method" : "Method" ,
"path" : "Path" ,
"status" : "Status" ,
"statusDescription" : "Status Desc" ,
"requestHeader" : "Request Header" ,
"responseHeader" : "Response Header"
}
}
} ,
"client" : {
"add" : "Add Client" ,
"edit" : "Edit Client" ,
"submitAdd" : "Add Client" ,
"submitEdit" : "Save Changes" ,
"clientCount" : "Number of Clients" ,
"bulk" : "Add Bulk" ,
"copyFromInbound" : "Copy Clients from Inbound" ,
"copyToInbound" : "Copy clients to" ,
"copySelected" : "Copy Selected" ,
"copySource" : "Source" ,
"copyEmailPreview" : "Resulting email preview" ,
"copySelectSourceFirst" : "Please select a source inbound first." ,
"copyResult" : "Copy result" ,
"copyResultSuccess" : "Copied successfully" ,
"copyResultNone" : "Nothing to copy: no clients selected or source is empty" ,
"copyResultErrors" : "Copy errors" ,
"copyFlowLabel" : "Flow for new clients (VLESS)" ,
"copyFlowHint" : "Applied to all copied clients. Leave empty to skip." ,
"selectAll" : "Select all" ,
"clearAll" : "Clear all" ,
"method" : "Method" ,
"first" : "First" ,
"last" : "Last" ,
"prefix" : "Prefix" ,
"postfix" : "Postfix" ,
"delayedStart" : "Start After First Use" ,
"expireDays" : "Duration" ,
"days" : "Day(s)" ,
"renew" : "Auto Renew" ,
"renewDesc" : "Auto-renewal after expiration. (0 = disable)(unit: day)"
} ,
2026-05-09 13:25:29 +00:00
"nodes" : {
"title" : "Nodes" ,
"addNode" : "Add Node" ,
"editNode" : "Edit Node" ,
"totalNodes" : "Total Nodes" ,
"onlineNodes" : "Online" ,
"offlineNodes" : "Offline" ,
"avgLatency" : "Avg Latency" ,
"name" : "Name" ,
"namePlaceholder" : "e.g. de-frankfurt-1" ,
"addressPlaceholder" : "panel.example.com or 1.2.3.4" ,
"remark" : "Remark" ,
"scheme" : "Scheme" ,
"address" : "Address" ,
"port" : "Port" ,
"basePath" : "Base Path" ,
"apiToken" : "API Token" ,
"apiTokenPlaceholder" : "Token from the remote panel's Settings page" ,
"apiTokenHint" : "The remote panel exposes its API token under Settings → API Token." ,
"regenerate" : "Regenerate Token" ,
"regenerateConfirm" : "Regenerating invalidates the current token. Any central panel using it will lose access until updated. Continue?" ,
"enable" : "Enabled" ,
"status" : "Status" ,
"cpu" : "CPU" ,
"mem" : "Memory" ,
"uptime" : "Uptime" ,
"latency" : "Latency" ,
"lastHeartbeat" : "Last Heartbeat" ,
"xrayVersion" : "Xray Version" ,
"actions" : "Actions" ,
"refresh" : "Refresh" ,
"probe" : "Probe Now" ,
"testConnection" : "Test Connection" ,
"connectionOk" : "Connection OK ({ms} ms)" ,
"connectionFailed" : "Connection failed" ,
"never" : "never" ,
"justNow" : "just now" ,
"deleteConfirmTitle" : "Delete node \"{name}\"?" ,
"deleteConfirmContent" : "This stops monitoring the node. The remote panel itself is unaffected." ,
"statusValues" : {
"online" : "Online" ,
"offline" : "Offline" ,
"unknown" : "Unknown"
} ,
"toasts" : {
"list" : "Failed to load nodes" ,
"obtain" : "Failed to load node" ,
"add" : "Add node" ,
"update" : "Update node" ,
"delete" : "Delete node" ,
"deleted" : "Node deleted" ,
"test" : "Test connection" ,
"fillRequired" : "Name, address, port and API token are required" ,
"probeFailed" : "Probe failed"
}
} ,
2026-05-08 12:54:07 +00:00
"settings" : {
"title" : "Panel Settings" ,
"save" : "Save" ,
"infoDesc" : "Every change made here needs to be saved. Please restart the panel to apply changes." ,
"restartPanel" : "Restart Panel" ,
"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." ,
"restartPanelSuccess" : "The panel was successfully restarted." ,
"actions" : "Actions" ,
"resetDefaultConfig" : "Reset to Default" ,
"panelSettings" : "General" ,
"securitySettings" : "Authentication" ,
"TGBotSettings" : "Telegram Bot" ,
"panelListeningIP" : "Listen IP" ,
"panelListeningIPDesc" : "The IP address for the web panel. (leave blank to listen on all IPs)" ,
"panelListeningDomain" : "Listen Domain" ,
"panelListeningDomainDesc" : "The domain name for the web panel. (leave blank to listen on all domains and IPs)" ,
"panelPort" : "Listen Port" ,
"panelPortDesc" : "The port number for the web panel. (must be an unused port)" ,
"publicKeyPath" : "Public Key Path" ,
"publicKeyPathDesc" : "The public key file path for the web panel. (begins with ‘ /‘ )" ,
"privateKeyPath" : "Private Key Path" ,
"privateKeyPathDesc" : "The private key file path for the web panel. (begins with ‘ /‘ )" ,
"panelUrlPath" : "URI Path" ,
"panelUrlPathDesc" : "The URI path for the web panel. (begins with ‘ /‘ and concludes with ‘ /‘ )" ,
"pageSize" : "Pagination Size" ,
"pageSizeDesc" : "Define page size for inbounds table. (0 = disable)" ,
"remarkModel" : "Remark Model & Separation Character" ,
"datepicker" : "Calendar Type" ,
"datepickerPlaceholder" : "Select date" ,
"datepickerDescription" : "Scheduled tasks will run based on this calendar." ,
"sampleRemark" : "Sample Remark" ,
"oldUsername" : "Current Username" ,
"currentPassword" : "Current Password" ,
"newUsername" : "New Username" ,
"newPassword" : "New Password" ,
"telegramBotEnable" : "Enable Telegram Bot" ,
"telegramBotEnableDesc" : "Enables the Telegram bot." ,
"telegramToken" : "Telegram Token" ,
2026-05-08 15:20:30 +00:00
"telegramTokenDesc" : "The Telegram bot token obtained from '{'@'}BotFather'." ,
2026-05-08 12:54:07 +00:00
"telegramProxy" : "SOCKS Proxy" ,
"telegramProxyDesc" : "Enables SOCKS5 proxy for connecting to Telegram. (adjust settings as per guide)" ,
"telegramAPIServer" : "Telegram API Server" ,
"telegramAPIServerDesc" : "The Telegram API server to use. Leave blank to use the default server." ,
"telegramChatId" : "Admin Chat ID" ,
2026-05-08 15:20:30 +00:00
"telegramChatIdDesc" : "The Telegram Admin Chat ID(s). (comma-separated)(get it here {'@'}userinfobot) or (use '/id' command in the bot)" ,
2026-05-08 12:54:07 +00:00
"telegramNotifyTime" : "Notification Time" ,
"telegramNotifyTimeDesc" : "The Telegram bot notification time set for periodic reports. (use the crontab time format)" ,
"tgNotifyBackup" : "Database Backup" ,
"tgNotifyBackupDesc" : "Send a database backup file with a report." ,
"tgNotifyLogin" : "Login Notification" ,
"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 Notification" ,
"expireTimeDiffDesc" : "Get notified about expiration date when reaching this threshold. (unit: day)" ,
"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" ,
"subEnable" : "Subscription Service" ,
"subEnableDesc" : "Enable/Disable the subscription service." ,
"subJsonEnable" : "Enable/Disable the JSON subscription endpoint independently." ,
"subTitle" : "Subscription Title" ,
"subTitleDesc" : "Title shown in VPN client" ,
"subSupportUrl" : "Support URL" ,
"subSupportUrlDesc" : "Technical support link shown in the VPN client" ,
"subProfileUrl" : "Profile URL" ,
"subProfileUrlDesc" : "A link to your website displayed in the VPN client" ,
"subAnnounce" : "Announce" ,
"subAnnounceDesc" : "The text of the announce displayed in the VPN client" ,
"subEnableRouting" : "Enable routing" ,
"subEnableRoutingDesc" : "Global setting to enable routing in the VPN client. (Only for Happ)" ,
"subRoutingRules" : "Routing rules" ,
"subRoutingRulesDesc" : "Global routing rules for the VPN client. (Only for Happ)" ,
"subListen" : "Listen IP" ,
"subListenDesc" : "The IP address for the subscription service. (leave blank to listen on all IPs)" ,
"subPort" : "Listen Port" ,
"subPortDesc" : "The port number for the subscription service. (must be an unused port)" ,
"subCertPath" : "Public Key Path" ,
"subCertPathDesc" : "The public key file path for the subscription service. (begins with ‘ /‘ )" ,
"subKeyPath" : "Private Key Path" ,
"subKeyPathDesc" : "The private key file path for the subscription service. (begins with ‘ /‘ )" ,
"subPath" : "URI Path" ,
"subPathDesc" : "The URI path for the subscription service. (begins with ‘ /‘ and concludes with ‘ /‘ )" ,
"subDomain" : "Listen Domain" ,
"subDomainDesc" : "The domain name for the subscription service. (leave blank to listen on all domains and IPs)" ,
"subUpdates" : "Update Intervals" ,
"subUpdatesDesc" : "The update intervals of the subscription URL in the client apps. (unit: hour)" ,
"subEncrypt" : "Encode" ,
"subEncryptDesc" : "The returned content of subscription service will be Base64 encoded." ,
"subShowInfo" : "Show Usage Info" ,
"subShowInfoDesc" : "The remaining traffic and date will be displayed in the client apps." ,
"subURI" : "Reverse Proxy URI" ,
"subURIDesc" : "The URI path of the subscription URL for use behind proxies." ,
"externalTrafficInformEnable" : "External Traffic Inform" ,
"externalTrafficInformEnableDesc" : "Inform external API on every traffic update." ,
"externalTrafficInformURI" : "External Traffic Inform URI" ,
"externalTrafficInformURIDesc" : "Traffic updates are sent to this URI." ,
"restartXrayOnClientDisable" : "Restart Xray After Auto Disable" ,
"restartXrayOnClientDisableDesc" : "When a client is automatically disabled due to expiration or traffic limit, restart Xray." ,
"fragment" : "Fragmentation" ,
"fragmentDesc" : "Enable fragmentation for TLS hello packet." ,
"fragmentSett" : "Fragmentation Settings" ,
"noisesDesc" : "Enable Noises." ,
"noisesSett" : "Noises Settings" ,
"mux" : "Mux" ,
"muxDesc" : "Transmit multiple independent data streams within an established data stream." ,
"muxSett" : "Mux Settings" ,
"direct" : "Direct Connection" ,
"directDesc" : "Directly establishes connections with domains or IP ranges of a specific country." ,
"notifications" : "Notifications" ,
"certs" : "Certificaties" ,
"externalTraffic" : "External Traffic" ,
"dateAndTime" : "Date and Time" ,
"proxyAndServer" : "Proxy and Server" ,
"intervals" : "Intervals" ,
"information" : "Information" ,
"language" : "Language" ,
"telegramBotLanguage" : "Telegram Bot Language" ,
"security" : {
"admin" : "Admin credentials" ,
"twoFactor" : "Two-factor authentication" ,
"twoFactorEnable" : "Enable 2FA" ,
"twoFactorEnableDesc" : "Adds an additional layer of authentication to provide more security." ,
"twoFactorModalSetTitle" : "Enable two-factor authentication" ,
"twoFactorModalDeleteTitle" : "Disable two-factor authentication" ,
"twoFactorModalSteps" : "To set up two-factor authentication, perform a few steps:" ,
"twoFactorModalFirstStep" : "1. Scan this QR code in the app for authentication or copy the token near the QR code and paste it into the app" ,
"twoFactorModalSecondStep" : "2. Enter the code from the app" ,
"twoFactorModalRemoveStep" : "Enter the code from the application to remove two-factor authentication." ,
"twoFactorModalChangeCredentialsTitle" : "Change credentials" ,
"twoFactorModalChangeCredentialsStep" : "Enter the code from the application to change administrator credentials." ,
"twoFactorModalSetSuccess" : "Two-factor authentication has been successfully established" ,
"twoFactorModalDeleteSuccess" : "Two-factor authentication has been successfully deleted" ,
"twoFactorModalError" : "Wrong code"
} ,
"toasts" : {
"modifySettings" : "The parameters have been changed." ,
"getSettings" : "An error occurred while retrieving parameters." ,
"modifyUserError" : "An error occurred while changing administrator credentials." ,
"modifyUser" : "You have successfully changed the credentials of the administrator." ,
"originalUserPassIncorrect" : "The с urrent username or password is invalid" ,
"userPassMustBeNotEmpty" : "The new username and password is empty" ,
"getOutboundTrafficError" : "Error getting traffics" ,
"resetOutboundTrafficError" : "Error in reset outbound traffics"
}
} ,
"xray" : {
"title" : "Xray Configs" ,
"save" : "Save" ,
"restart" : "Restart Xray" ,
"restartSuccess" : "Xray has been successfully relaunched." ,
"stopSuccess" : "Xray has been successfully stopped." ,
"restartError" : "There was an error when rebooting the Xray." ,
"stopError" : "There was an error when stopping the Xray." ,
"basicTemplate" : "Basics" ,
"advancedTemplate" : "Advanced" ,
"generalConfigs" : "General" ,
"generalConfigsDesc" : "These options will determine general adjustments." ,
"logConfigs" : "Log" ,
"logConfigsDesc" : "Logs may affect your server's efficiency. It is recommended to enable it wisely only in case of your needs" ,
"blockConfigsDesc" : "These options will block traffic based on specific requested protocols and websites." ,
"basicRouting" : "Basic Routing" ,
"blockConnectionsConfigsDesc" : "These options will block traffic based on the specific requested country." ,
"directConnectionsConfigsDesc" : "A direct connection ensures that specific traffic is not routed through another server." ,
"blockips" : "Block IPs" ,
"blockdomains" : "Block Domains" ,
"directips" : "Direct IPs" ,
"directdomains" : "Direct Domains" ,
"ipv4Routing" : "IPv4 Routing" ,
"ipv4RoutingDesc" : "These options will route traffic based on a specific destination via IPv4." ,
"warpRouting" : "WARP Routing" ,
"warpRoutingDesc" : "These options will route traffic based on a specific destination via WARP." ,
"nordRouting" : "NordVPN Routing" ,
"nordRoutingDesc" : "These options will route traffic based on a specific destination via NordVPN." ,
"Template" : "Advanced Xray Configuration 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" ,
"RoutingStrategyDesc" : "Set the overall traffic routing strategy for resolving all requests." ,
"outboundTestUrl" : "Outbound Test URL" ,
"outboundTestUrlDesc" : "URL used when testing outbound connectivity." ,
"Torrent" : "Block BitTorrent Protocol" ,
"Inbounds" : "Inbounds" ,
"InboundsDesc" : "Accepting the specific clients." ,
"Outbounds" : "Outbounds" ,
"Balancers" : "Balancers" ,
"OutboundsDesc" : "Set the outgoing traffic pathway." ,
"Routings" : "Routing Rules" ,
"RoutingsDesc" : "The priority of each rule is important!" ,
"completeTemplate" : "All" ,
"logLevel" : "Log Level" ,
"logLevelDesc" : "The log level for error logs, indicating the information that needs to be recorded." ,
"accessLog" : "Access Log" ,
"accessLogDesc" : "The file path for the access log. The special value 'none' disabled access logs" ,
"errorLog" : "Error Log" ,
"errorLogDesc" : "The file path for the error log. The special value 'none' disabled error logs" ,
"dnsLog" : "DNS Log" ,
"dnsLogDesc" : "Whether to enable DNS query logs" ,
"maskAddress" : "Mask Address" ,
"maskAddressDesc" : "IP address mask, when enabled, will automatically replace the IP address that appears in the log." ,
"statistics" : "Statistics" ,
"statsInboundUplink" : "Inbound Upload Statistics" ,
"statsInboundUplinkDesc" : "Enables the statistics collection for upstream traffic of all inbound proxies." ,
"statsInboundDownlink" : "Inbound Download Statistics" ,
"statsInboundDownlinkDesc" : "Enables the statistics collection for downstream traffic of all inbound proxies." ,
"statsOutboundUplink" : "Outbound Upload Statistics" ,
"statsOutboundUplinkDesc" : "Enables the statistics collection for upstream traffic of all outbound proxies." ,
"statsOutboundDownlink" : "Outbound Download Statistics" ,
"statsOutboundDownlinkDesc" : "Enables the statistics collection for downstream traffic of all outbound proxies." ,
"rules" : {
"first" : "First" ,
"last" : "Last" ,
"up" : "Up" ,
"down" : "Down" ,
"source" : "Source" ,
"dest" : "Destination" ,
"inbound" : "Inbound" ,
"outbound" : "Outbound" ,
"balancer" : "Balancer" ,
"info" : "Info" ,
"add" : "Add Rule" ,
"edit" : "Edit Rule" ,
"useComma" : "Comma-separated items"
} ,
"outbound" : {
"addOutbound" : "Add Outbound" ,
"addReverse" : "Add Reverse" ,
"editOutbound" : "Edit Outbound" ,
"editReverse" : "Edit Reverse" ,
"reverseTag" : "Reverse Tag" ,
"reverseTagDesc" : "VLESS simple reverse proxy tag. Leave empty to disable." ,
"reverseTagPlaceholder" : "reverse tag (leave empty to disable)" ,
"tag" : "Tag" ,
"tagDesc" : "Unique Tag" ,
"address" : "Address" ,
"reverse" : "Reverse" ,
"domain" : "Domain" ,
"type" : "Type" ,
"bridge" : "Bridge" ,
"portal" : "Portal" ,
"link" : "Link" ,
"intercon" : "Interconnection" ,
"settings" : "Settings" ,
"accountInfo" : "Account Information" ,
"outboundStatus" : "Outbound Status" ,
"sendThrough" : "Send Through" ,
"test" : "Test" ,
"testResult" : "Test Result" ,
"testing" : "Testing connection..." ,
"testSuccess" : "Test successful" ,
"testFailed" : "Test failed" ,
"testError" : "Failed to test outbound" ,
"nordvpn" : "NordVPN" ,
"accessToken" : "Access Token" ,
"country" : "Country" ,
"server" : "Server" ,
"city" : "City" ,
"allCities" : "All Cities" ,
"privateKey" : "Private Key" ,
"load" : "Load"
} ,
"balancer" : {
"addBalancer" : "Add Balancer" ,
"editBalancer" : "Edit Balancer" ,
"balancerStrategy" : "Strategy" ,
"balancerSelectors" : "Selectors" ,
"tag" : "Tag" ,
"tagDesc" : "Unique Tag" ,
"balancerDesc" : "It is not possible to use balancerTag and outboundTag at the same time. If used at the same time, only outboundTag will work."
} ,
"wireguard" : {
"secretKey" : "Secret Key" ,
"publicKey" : "Public Key" ,
"allowedIPs" : "Allowed IPs" ,
"endpoint" : "Endpoint" ,
"psk" : "PreShared Key" ,
"domainStrategy" : "Domain Strategy"
} ,
"tun" : {
"nameDesc" : "The name of the TUN interface. Default is 'xray0'" ,
"mtuDesc" : "Maximum Transmission Unit. The maximum size of data packets. Default is 1500" ,
"userLevel" : "User Level" ,
"userLevelDesc" : "All connections made through this inbound will use this user level. Default is 0"
} ,
"dns" : {
"enable" : "Enable DNS" ,
"enableDesc" : "Enable built-in DNS server" ,
"tag" : "DNS Inbound Tag" ,
"tagDesc" : "This tag will be available as an Inbound tag in routing rules." ,
"clientIp" : "Client IP" ,
"clientIpDesc" : "Used to notify the server of the specified IP location during DNS queries" ,
"disableCache" : "Disable cache" ,
"disableCacheDesc" : "Disables DNS caching" ,
"disableFallback" : "Disable Fallback" ,
"disableFallbackDesc" : "Disables fallback DNS queries" ,
"disableFallbackIfMatch" : "Disable Fallback If Match" ,
"disableFallbackIfMatchDesc" : "Disables fallback DNS queries when the matching domain list of the DNS server is hit" ,
"enableParallelQuery" : "Enable Parallel Query" ,
"enableParallelQueryDesc" : "Enable parallel DNS queries to multiple servers for faster resolution" ,
"strategy" : "Query Strategy" ,
"strategyDesc" : "Overall strategy to resolve domain names" ,
"add" : "Add Server" ,
"edit" : "Edit Server" ,
"domains" : "Domains" ,
"expectIPs" : "Expect IPs" ,
"unexpectIPs" : "Unexpect IPs" ,
"useSystemHosts" : "Use System Hosts" ,
"useSystemHostsDesc" : "Use the hosts file from an installed system" ,
"usePreset" : "Use Preset" ,
"dnsPresetTitle" : "DNS Presets" ,
"dnsPresetFamily" : "Family"
} ,
"fakedns" : {
"add" : "Add Fake DNS" ,
"edit" : "Edit Fake DNS" ,
"ipPool" : "IP Pool Subnet" ,
"poolSize" : "Pool Size"
}
}
} ,
"tgbot" : {
"keyboardClosed" : "❌ Custom keyboard closed!" ,
"noResult" : "❗ No result!" ,
"noQuery" : "❌ Query not found! Please use the command again!" ,
"wentWrong" : "❌ Something went wrong!" ,
"noIpRecord" : "❗ No IP Record!" ,
"noInbounds" : "❗ No inbound found!" ,
"unlimited" : "♾ Unlimited(Reset)" ,
"add" : "Add" ,
"month" : "Month" ,
"months" : "Months" ,
"day" : "Day" ,
"days" : "Days" ,
"hours" : "Hours" ,
"minutes" : "Minutes" ,
"unknown" : "Unknown" ,
"inbounds" : "Inbounds" ,
"clients" : "Clients" ,
"offline" : "🔴 Offline" ,
"online" : "🟢 Online" ,
"commands" : {
"unknown" : "❗ Unknown command." ,
"pleaseChoose" : "👇 Please choose:\r\n" ,
"help" : "🤖 Welcome to this bot! It's designed to offer specific data from the web panel and allows you to make modifications as needed.\r\n\r\n" ,
"start" : "👋 Hello <i>{{ .Firstname }}</i>.\r\n" ,
"welcome" : "🤖 Welcome to <b>{{ .Hostname }}</b> management bot.\r\n" ,
"status" : "✅ Bot is OK!" ,
"usage" : "❗ Please provide a text to search!" ,
"getID" : "🆔 Your ID: <code>{{ .ID }}</code>" ,
"helpAdminCommands" : "To restart Xray Core:\r\n<code>/restart</code>\r\n\r\nTo search for a client email:\r\n<code>/usage [Email]</code>\r\n\r\nTo search for inbounds (with client stats):\r\n<code>/inbound [Remark]</code>\r\n\r\nTelegram Chat ID:\r\n<code>/id</code>" ,
"helpClientCommands" : "To search for statistics, use the following command:\r\n\r\n<code>/usage [Email]</code>\r\n\r\nTelegram Chat ID:\r\n<code>/id</code>" ,
"restartUsage" : "\r\n\r\n<code>/restart</code>" ,
"restartSuccess" : "✅ Operation successful!" ,
"restartFailed" : "❗ Error in operation.\r\n\r\n<code>Error: {{ .Error }}</code>." ,
"xrayNotRunning" : "❗ Xray Core is not running." ,
"startDesc" : "Show the main menu" ,
"helpDesc" : "Bot help" ,
"statusDesc" : "Check bot status" ,
"idDesc" : "Show your Telegram ID"
} ,
"messages" : {
"cpuThreshold" : "🔴 CPU Load {{ .Percent }}% exceeds the threshold of {{ .Threshold }}%" ,
"selectUserFailed" : "❌ Error in user selection!" ,
"userSaved" : "✅ Telegram User saved." ,
"loginSuccess" : "✅ Logged in to the panel successfully.\r\n" ,
"loginFailed" : "❗️ Login attempt to the panel failed.\r\n" ,
"2faFailed" : "2FA Failed" ,
"report" : "🕰 Scheduled Reports: {{ .RunTime }}\r\n" ,
"datetime" : "⏰ Date&Time: {{ .DateTime }}\r\n" ,
"hostname" : "💻 Host: {{ .Hostname }}\r\n" ,
"version" : "🚀 3X-UI Version: {{ .Version }}\r\n" ,
"xrayVersion" : "📡 Xray Version: {{ .XrayVersion }}\r\n" ,
"ipv6" : "🌐 IPv6: {{ .IPv6 }}\r\n" ,
"ipv4" : "🌐 IPv4: {{ .IPv4 }}\r\n" ,
"ip" : "🌐 IP: {{ .IP }}\r\n" ,
"ips" : "🔢 IPs:\r\n{{ .IPs }}\r\n" ,
"serverUpTime" : "⏳ Uptime: {{ .UpTime }} {{ .Unit }}\r\n" ,
"serverLoad" : "📈 System Load: {{ .Load1 }}, {{ .Load2 }}, {{ .Load3 }}\r\n" ,
"serverMemory" : "📋 RAM: {{ .Current }}/{{ .Total }}\r\n" ,
"tcpCount" : "🔹 TCP: {{ .Count }}\r\n" ,
"udpCount" : "🔸 UDP: {{ .Count }}\r\n" ,
"traffic" : "🚦 Traffic: {{ .Total }} (↑{{ .Upload }},↓{{ .Download }})\r\n" ,
"xrayStatus" : "ℹ ️ Status: {{ .State }}\r\n" ,
"username" : "👤 Username: {{ .Username }}\r\n" ,
"reason" : "❗️ Reason: {{ .Reason }}\r\n" ,
"time" : "⏰ Time: {{ .Time }}\r\n" ,
"inbound" : "📍 Inbound: {{ .Remark }}\r\n" ,
"port" : "🔌 Port: {{ .Port }}\r\n" ,
"expire" : "📅 Expire Date: {{ .Time }}\r\n" ,
"expireIn" : "📅 Expire In: {{ .Time }}\r\n" ,
"active" : "💡 Active: {{ .Enable }}\r\n" ,
"enabled" : "🚨 Enabled: {{ .Enable }}\r\n" ,
"online" : "🌐 Connection status: {{ .Status }}\r\n" ,
"lastOnline" : "🔙 Last online: {{ .Time }}\r\n" ,
"email" : "📧 Email: {{ .Email }}\r\n" ,
"upload" : "🔼 Upload: ↑{{ .Upload }}\r\n" ,
"download" : "🔽 Download: ↓{{ .Download }}\r\n" ,
"total" : "📊 Total: ↑↓{{ .UpDown }} / {{ .Total }}\r\n" ,
"TGUser" : "👤 Telegram User: {{ .TelegramID }}\r\n" ,
"exhaustedMsg" : "🚨 Exhausted {{ .Type }}:\r\n" ,
"exhaustedCount" : "🚨 Exhausted {{ .Type }} count:\r\n" ,
"onlinesCount" : "🌐 Online Clients: {{ .Count }}\r\n" ,
"disabled" : "🛑 Disabled: {{ .Disabled }}\r\n" ,
"depleteSoon" : "🔜 Deplete Soon: {{ .Deplete }}\r\n\r\n" ,
"backupTime" : "🗄 Backup Time: {{ .Time }}\r\n" ,
"refreshedOn" : "\r\n📋🔄 Refreshed On: {{ .Time }}\r\n\r\n" ,
"yes" : "✅ Yes" ,
"no" : "❌ No" ,
"received_id" : "🔑📥 ID updated." ,
"received_password" : "🔑📥 Password updated." ,
"received_email" : "📧📥 Email updated." ,
"received_comment" : "💬📥 Comment updated." ,
"id_prompt" : "🔑 Default ID: {{ .ClientId }}\n\nEnter your id." ,
"pass_prompt" : "🔑 Default Password: {{ .ClientPassword }}\n\nEnter your password." ,
"email_prompt" : "📧 Default Email: {{ .ClientEmail }}\n\nEnter your email." ,
"comment_prompt" : "💬 Default Comment: {{ .ClientComment }}\n\nEnter your Comment." ,
"inbound_client_data_id" : "🔄 Inbound: {{ .InboundRemark }}\n\n🔑 ID: {{ .ClientId }}\n📧 Email: {{ .ClientEmail }}\n📊 Traffic: {{ .ClientTraffic }}\n📅 Expire Date: {{ .ClientExp }}\n🌐 IP Limit: {{ .IpLimit }}\n💬 Comment: {{ .ClientComment }}\n\nYou can add the client to inbound now!" ,
"inbound_client_data_pass" : "🔄 Inbound: {{ .InboundRemark }}\n\n🔑 Password: {{ .ClientPass }}\n📧 Email: {{ .ClientEmail }}\n📊 Traffic: {{ .ClientTraffic }}\n📅 Expire Date: {{ .ClientExp }}\n🌐 IP Limit: {{ .IpLimit }}\n💬 Comment: {{ .ClientComment }}\n\nYou can add the client to inbound now!" ,
"cancel" : "❌ Process Canceled! \n\nYou can /start again anytime. 🔄" ,
"error_add_client" : "⚠️ Error:\n\n {{ .error }}" ,
"using_default_value" : "Okay, I'll stick with the default value. 😊" ,
"incorrect_input" : "Your input is not valid.\nThe phrases should be continuous without spaces.\nCorrect example: aaaaaa\nIncorrect example: aaa aaa 🚫" ,
"AreYouSure" : "Are you sure? 🤔" ,
"SuccessResetTraffic" : "📧 Email: {{ .ClientEmail }}\n🏁 Result: ✅ Success" ,
"FailedResetTraffic" : "📧 Email: {{ .ClientEmail }}\n🏁 Result: ❌ Failed \n\n🛠️ Error: [ {{ .ErrorMessage }} ]" ,
"FinishProcess" : "🔚 Traffic reset process finished for all clients."
} ,
"buttons" : {
"closeKeyboard" : "❌ Close Keyboard" ,
"cancel" : "❌ Cancel" ,
"cancelReset" : "❌ Cancel Reset" ,
"cancelIpLimit" : "❌ Cancel IP Limit" ,
"confirmResetTraffic" : "✅ Confirm Reset Traffic?" ,
"confirmClearIps" : "✅ Confirm Clear IPs?" ,
"confirmRemoveTGUser" : "✅ Confirm Remove Telegram User?" ,
"confirmToggle" : "✅ Confirm Enable/Disable User?" ,
"dbBackup" : "Get DB Backup" ,
"serverUsage" : "Server Usage" ,
"getInbounds" : "Get Inbounds" ,
"depleteSoon" : "Deplete Soon" ,
"clientUsage" : "Get Usage" ,
"onlines" : "Online Clients" ,
"commands" : "Commands" ,
"refresh" : "🔄 Refresh" ,
"clearIPs" : "❌ Clear IPs" ,
"removeTGUser" : "❌ Remove Telegram User" ,
"selectTGUser" : "👤 Select Telegram User" ,
"selectOneTGUser" : "👤 Select a Telegram User:" ,
"resetTraffic" : "📈 Reset Traffic" ,
"resetExpire" : "📅 Change Expiry Date" ,
"ipLog" : "🔢 IP Log" ,
"ipLimit" : "🔢 IP Limit" ,
"setTGUser" : "👤 Set Telegram User" ,
"toggle" : "🔘 Enable / Disable" ,
"custom" : "🔢 Custom" ,
"confirmNumber" : "✅ Confirm: {{ .Num }}" ,
"confirmNumberAdd" : "✅ Confirm adding: {{ .Num }}" ,
"limitTraffic" : "🚧 Traffic Limit" ,
"getBanLogs" : "Get Ban Logs" ,
"allClients" : "All Clients" ,
"addClient" : "Add Client" ,
"submitDisable" : "Submit As Disable ☑️" ,
"submitEnable" : "Submit As Enable ✅" ,
"use_default" : "🏷️ Use default" ,
"change_id" : "⚙️🔑 ID" ,
"change_password" : "⚙️🔑 Password" ,
"change_email" : "⚙️📧 Email" ,
"change_comment" : "⚙️💬 Comment" ,
"ResetAllTraffics" : "Reset All Traffics" ,
"SortedTrafficUsageReport" : "Sorted Traffic Usage Report"
} ,
"answers" : {
"successfulOperation" : "✅ Operation successful!" ,
"errorOperation" : "❗ Error in operation." ,
"getInboundsFailed" : "❌ Failed to get inbounds." ,
"getClientsFailed" : "❌ Failed to get clients." ,
"canceled" : "❌ {{ .Email }}: Operation canceled." ,
"clientRefreshSuccess" : "✅ {{ .Email }}: Client refreshed successfully." ,
"IpRefreshSuccess" : "✅ {{ .Email }}: IPs refreshed successfully." ,
"TGIdRefreshSuccess" : "✅ {{ .Email }}: Client's Telegram User refreshed successfully." ,
"resetTrafficSuccess" : "✅ {{ .Email }}: Traffic reset successfully." ,
"setTrafficLimitSuccess" : "✅ {{ .Email }}: Traffic limit saved successfully." ,
"expireResetSuccess" : "✅ {{ .Email }}: Expire days reset successfully." ,
"resetIpSuccess" : "✅ {{ .Email }}: IP limit {{ .Count }} saved successfully." ,
"clearIpSuccess" : "✅ {{ .Email }}: IPs cleared successfully." ,
"getIpLog" : "✅ {{ .Email }}: Get IP Log." ,
"getUserInfo" : "✅ {{ .Email }}: Get Telegram User Info." ,
"removedTGUserSuccess" : "✅ {{ .Email }}: Telegram User removed successfully." ,
"enableSuccess" : "✅ {{ .Email }}: Enabled successfully." ,
"disableSuccess" : "✅ {{ .Email }}: Disabled successfully." ,
"askToAddUserId" : "Your configuration is not found!\r\nPlease ask your admin to use your Telegram ChatID in your configuration(s).\r\n\r\nYour ChatID: <code>{{ .TgUserID }}</code>" ,
"chooseClient" : "Choose a Client for Inbound {{ .Inbound }}" ,
"chooseInbound" : "Choose an Inbound"
}
}
}