diff --git a/translate.en_US.toml b/translate.en_US.toml
new file mode 100644
index 00000000..a5b96383
--- /dev/null
+++ b/translate.en_US.toml
@@ -0,0 +1,638 @@
+"username" = "Username"
+"password" = "Password"
+"login" = "Log In"
+"confirm" = "Confirm"
+"cancel" = "Cancel"
+"close" = "Close"
+"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"
+"copySuccess" = "Copied Successful"
+"sure" = "Sure"
+"encryption" = "Encryption"
+"transmission" = "Transmission"
+"host" = "Host"
+"path" = "Path"
+"camouflage" = "Obfuscation"
+"status" = "Status"
+"enabled" = "Enabled"
+"disabled" = "Disabled"
+"depleted" = "Depleted"
+"depletingSoon" = "Depleting"
+"offline" = "Offline"
+"online" = "Online"
+"domainName" = "Domain Name"
+"monitor" = "Listen IP"
+"certificate" = "Digital Certificate"
+"fail" = " Failed"
+"success" = " Successful"
+"getVersion" = "Get Version"
+"install" = "Install"
+"clients" = "Clients"
+"usage" = "Usage"
+"secretToken" = "Secret Token"
+"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."
+
+[menu]
+"dashboard" = "Overview"
+"inbounds" = "Inbounds"
+"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"
+
+[pages.login.toasts]
+"invalidFormData" = "The Input data format is invalid."
+"emptyUsername" = "Username is required"
+"emptyPassword" = "Password is required"
+"wrongUsernameOrPassword" = "Invalid username or password."
+"successLogin" = "Login"
+
+[pages.index]
+"title" = "Overview"
+"memory" = "RAM"
+"hard" = "Disk"
+"xrayStatus" = "Xray"
+"stopXray" = "Stop"
+"restartXray" = "Restart"
+"xraySwitch" = "Version"
+"xraySwitchClick" = "Choose the version you want to switch to."
+"xraySwitchClickDesk" = "Choose carefully, as older versions may not be compatible with current configurations."
+"operationHours" = "Uptime"
+"systemLoad" = "System Load"
+"systemLoadDesc" = "System load average for the past 1, 5, and 15 minutes"
+"connectionTcpCountDesc" = "Total TCP connections across the system"
+"connectionUdpCountDesc" = "Total UDP connections across the system"
+"connectionCount" = "Connection Stats"
+"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" = "Database Backup & Restore"
+"backupDescription" = "It is recommended to make a backup before restoring a database."
+"exportDatabase" = "Back Up"
+"importDatabase" = "Restore"
+
+[pages.inbounds]
+"title" = "Inbounds"
+"totalDownUp" = "Total Sent/Received"
+"totalUsage" = "Total Usage"
+"inboundCount" = "Total Inbounds"
+"operate" = "Menu"
+"enable" = "Enabled"
+"remark" = "Remark"
+"protocol" = "Protocol"
+"port" = "Port"
+"traffic" = "Traffic"
+"details" = "Details"
+"transportConfig" = "Transport"
+"expireDate" = "Duration"
+"resetTraffic" = "Reset Traffic"
+"addInbound" = "Add Inbound"
+"generalActions" = "General Actions"
+"create" = "Create"
+"update" = "Update"
+"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"
+"xtlsDesc" = "Xray must be v1.7.5"
+"realityDesc" = "Xray must be v1.8.0+"
+"telegramDesc" = "Please provide Telegram Chat ID. (use '/id' command in the bot) or (@userinfobot)"
+"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"
+
+[pages.client]
+"add" = "Add Client"
+"edit" = "Edit Client"
+"submitAdd" = "Add Client"
+"submitEdit" = "Save Changes"
+"clientCount" = "Number of Clients"
+"bulk" = "Add Bulk"
+"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)"
+
+[pages.inbounds.toasts]
+"obtain" = "Obtain"
+
+[pages.inbounds.stream.general]
+"request" = "Request"
+"response" = "Response"
+"name" = "Name"
+"value" = "Value"
+
+[pages.inbounds.stream.tcp]
+"version" = "Version"
+"method" = "Method"
+"path" = "Path"
+"status" = "Status"
+"statusDescription" = "Status Desc"
+"requestHeader" = "Request Header"
+"responseHeader" = "Response Header"
+
+[pages.inbounds.stream.quic]
+"encryption" = "Encryption"
+
+[pages.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."
+"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"
+"telegramTokenDesc" = "The Telegram bot token obtained from '@BotFather'."
+"telegramProxy" = "SOCKS Proxy"
+"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)(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"
+"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" = "Enable Subscription Service"
+"subEnableDesc" = "Enables the subscription service."
+"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."
+"fragment" = "Fragmentation"
+"fragmentDesc" = "Enable fragmentation for TLS hello packet."
+"fragmentSett" = "Fragmentation 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."
+"directSett" = "Direct Connection Options"
+
+[pages.xray]
+"title" = "Xray Configs"
+"save" = "Save"
+"restart" = "Restart 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"
+"blockConfigs" = "Protection Shield"
+"blockConfigsDesc" = "These options will block traffic based on specific requested protocols and websites."
+"blockCountryConfigs" = "Block Country"
+"blockCountryConfigsDesc" = "These options will block traffic based on the specific requested country."
+"directCountryConfigs" = "Direct Country"
+"directCountryConfigsDesc" = "A direct connection ensures that specific traffic is not routed through another server."
+"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 WARP."
+"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."
+"Torrent" = "Block BitTorrent Protocol"
+"TorrentDesc" = "Blocks BitTorrent protocol."
+"PrivateIp" = "Block Connection to Private IPs"
+"PrivateIpDesc" = "Blocks establishing connections to private IP ranges."
+"Ads" = "Block Ads"
+"AdsDesc" = "Blocks advertising websites."
+"Family" = "Family Protection"
+"FamilyDesc" = "Blocks adult content, and malware websites."
+"Security" = "Security Shield"
+"SecurityDesc" = "Blocks malware, phishing, and cryptominers websites."
+"Speedtest" = "Block Speedtest"
+"SpeedtestDesc" = "Blocks establishing connectins to speedtest websites."
+"IRIp" = "Block Connection to Iran IPs"
+"IRIpDesc" = "Blocks establishing connections to Iran IP ranges."
+"IRDomain" = "Block Connection to Iran Domains"
+"IRDomainDesc" = "Blocks establishing connections to Iran domains."
+"ChinaIp" = "Block Connection to China IPs"
+"ChinaIpDesc" = "Blocks establishing connections to China IP ranges."
+"ChinaDomain" = "Block Connection to China Domains"
+"ChinaDomainDesc" = "Blocks establishing connections to China domains."
+"RussiaIp" = "Block Connection to Russia IPs"
+"RussiaIpDesc" = "Blocks establishing connections to Russia IP ranges."
+"RussiaDomain" = "Block Connection to Russia Domains"
+"RussiaDomainDesc" = "Blocks establishing connections to Russia domains."
+"VNIp" = "Block Connection to Vietnam IPs"
+"VNIpDesc" = "Blocks establishing connections to Vietnam IP ranges."
+"VNDomain" = "Block Connection to Vietnam Domains"
+"VNDomainDesc" = "Blocks establishing connections to Vietnam domains."
+"DirectIRIp" = "Direct Connection to Iran IPs"
+"DirectIRIpDesc" = "Directly establishes connections to Iran IP ranges."
+"DirectIRDomain" = "Direct Connection to Iran Domains"
+"DirectIRDomainDesc" = "Directly establishes connections to Iran domains."
+"DirectChinaIp" = "Direct Connection to China IPs"
+"DirectChinaIpDesc" = "Directly establishes connections to China IP ranges."
+"DirectChinaDomain" = "Direct Connection to China Domains"
+"DirectChinaDomainDesc" = "Directly establishes connections to China domains."
+"DirectRussiaIp" = "Direct Connection to Russia IPs"
+"DirectRussiaIpDesc" = "Directly establishes connections to Russia IP ranges."
+"DirectRussiaDomain" = "Direct Connection to Russia Domains"
+"DirectRussiaDomainDesc" = "Directly establishes connections to Russia domains."
+"DirectVNIp" = "Direct Connection to Vietnam IPs"
+"DirectVNIpDesc" = "Directly establishes connections to Vietnam IP ranges."
+"DirectVNDomain" = "Direct Connection to Vietnam Domains"
+"DirectVNDomainDesc" = "Directly establishes connections to Vietnam domains."
+"GoogleIPv4" = "Google"
+"GoogleIPv4Desc" = "Routes traffic to Google via IPv4."
+"NetflixIPv4" = "Netflix"
+"NetflixIPv4Desc" = "Routes traffic to Netflix via IPv4."
+"GoogleWARP" = "Google"
+"GoogleWARPDesc" = "Add routing for Google via WARP."
+"OpenAIWARP" = "ChatGPT"
+"OpenAIWARPDesc" = "Routes traffic to ChatGPT via WARP."
+"NetflixWARP" = "Netflix"
+"NetflixWARPDesc" = "Routes traffic to Netflix via WARP."
+"MetaWARP" = "Meta"
+"MetaWARPDesc" = "Routes traffic to Meta (Instagram, Facebook, WhatsApp, Threads,...) via WARP."
+"AppleWARP" = "Apple"
+"AppleWARPDesc" = "Routes traffic to Apple via WARP."
+"RedditWARP" = "Reddit"
+"RedditWARPDesc" = "Routes traffic to Reddit via WARP."
+"SpotifyWARP" = "Spotify"
+"SpotifyWARPDesc" = "Routes traffic to Spotify via WARP."
+"IRWARP" = "Iran domains"
+"IRWARPDesc" = "Routes traffic to Iran domains via WARP."
+"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"
+
+[pages.xray.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"
+
+[pages.xray.outbound]
+"addOutbound" = "Add Outbound"
+"addReverse" = "Add Reverse"
+"editOutbound" = "Edit Outbound"
+"editReverse" = "Edit Reverse"
+"tag" = "Tag"
+"tagDesc" = "Unique Tag"
+"address" = "Address"
+"reverse" = "Reverse"
+"domain" = "Domain"
+"type" = "Type"
+"bridge" = "Bridge"
+"portal" = "Portal"
+"intercon" = "Interconnection"
+"settings" = "Settings"
+"accountInfo" = "Account Information"
+"outboundStatus" = "Outbound Status"
+"sendThrough" = "Send Through"
+
+[pages.xray.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."
+
+[pages.xray.wireguard]
+"secretKey" = "Secret Key"
+"publicKey" = "Public Key"
+"allowedIPs" = "Allowed IPs"
+"endpoint" = "Endpoint"
+"psk" = "PreShared Key"
+"domainStrategy" = "Domain Strategy"
+
+[pages.xray.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."
+"strategy" = "Query Strategy"
+"strategyDesc" = "Overall strategy to resolve domain names"
+"add" = "Add Server"
+"edit" = "Edit Server"
+"domains" = "Domains"
+
+[pages.xray.fakedns]
+"add" = "Add Fake DNS"
+"edit" = "Edit Fake DNS"
+"ipPool" = "IP Pool Subnet"
+"poolSize" = "Pool Size"
+
+[pages.settings.security]
+"admin" = "Admin"
+"secret" = "Secret Token"
+"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."
+
+[pages.settings.toasts]
+"modifySettings" = "Modify Settings"
+"getSettings" = "Get Settings"
+"modifyUser" = "Modify Admin"
+"originalUserPassIncorrect" = "The Current username or password is invalid"
+"userPassMustBeNotEmpty" = "The new username and password is empty"
+
+[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"
+"unknown" = "Unknown"
+"inbounds" = "Inbounds"
+"clients" = "Clients"
+"offline" = "🔴 Offline"
+"online" = "🟢 Online"
+
+[tgbot.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 {{ .Firstname }}.\r\n"
+"welcome" = "🤖 Welcome to {{ .Hostname }} management bot.\r\n"
+"status" = "✅ Bot is OK!"
+"usage" = "❗ Please provide a text to search!"
+"getID" = "🆔 Your ID: {{ .ID }}
"
+"helpAdminCommands" = "To search for a client email:\r\n/usage [Email]
\r\n\r\nTo search for inbounds (with client stats):\r\n/inbound [Remark]
\r\n\r\nTelegram Chat ID:\r\n/id
"
+"helpClientCommands" = "To search for statistics, use the following command:\r\n\r\n/usage [Email]
\r\n\r\nTelegram Chat ID:\r\n/id
"
+
+[tgbot.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" = "❗️ Log in to the panel failed.\r\n"
+"report" = "🕰 Scheduled Reports: {{ .RunTime }}\r\n"
+"datetime" = "⏰ Date&Time: {{ .DateTime }}\r\n"
+"hostname" = "💻 Host: {{ .Hostname }}\r\n"
+"version" = "🚀 3X-UI Version: {{ .Version }}\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"
+"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"
+"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"
+
+[tgbot.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"
+
+[tgbot.answers]
+"successfulOperation" = "✅ Operation successful!"
+"errorOperation" = "❗ Error in operation."
+"getInboundsFailed" = "❌ Failed to get inbounds."
+"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 ID in your configuration(s).\r\n\r\nYour User ID: {{ .TgUserID }}
"
diff --git a/translate.es_ES.toml b/translate.es_ES.toml
new file mode 100644
index 00000000..3ff5e12c
--- /dev/null
+++ b/translate.es_ES.toml
@@ -0,0 +1,636 @@
+"username" = "Nombre de Usuario"
+"password" = "Contraseña"
+"login" = "Acceder"
+"confirm" = "Confirmar"
+"cancel" = "Cancelar"
+"close" = "Cerrar"
+"copy" = "Copiar"
+"copied" = "Copiado"
+"download" = "Descargar"
+"remark" = "Nota"
+"enable" = "Habilitar"
+"protocol" = "Protocolo"
+"search" = "Buscar"
+"filter" = "Filtrar"
+"loading" = "Cargando..."
+"second" = "Segundo"
+"minute" = "Minuto"
+"hour" = "Hora"
+"day" = "Día"
+"check" = "Verificar"
+"indefinite" = "Indefinido"
+"unlimited" = "Ilimitado"
+"none" = "None"
+"qrCode" = "Código QR"
+"info" = "Más Información"
+"edit" = "Editar"
+"delete" = "Eliminar"
+"reset" = "Restablecer"
+"copySuccess" = "Copiado exitosamente"
+"sure" = "Seguro"
+"encryption" = "Encriptación"
+"transmission" = "Transmisión"
+"host" = "Anfitrión"
+"path" = "Ruta"
+"camouflage" = "Camuflaje"
+"status" = "Estado"
+"enabled" = "Habilitado"
+"disabled" = "Deshabilitado"
+"depleted" = "Agotado"
+"depletingSoon" = "Agotándose"
+"offline" = "fuera de línea"
+"online" = "en línea"
+"domainName" = "Nombre de dominio"
+"monitor" = "Listening IP"
+"certificate" = "Certificado Digital"
+"fail" = "Falló"
+"success" = "Éxito"
+"getVersion" = "Obtener versión"
+"install" = "Instalar"
+"clients" = "Clientes"
+"usage" = "Uso"
+"secretToken" = "Token Secreto"
+"remained" = "Restante"
+"security" = "Seguridad"
+"secAlertTitle" = "Alerta de Seguridad"
+"secAlertSsl" = "Esta conexión no es segura. Por favor, evite ingresar información sensible hasta que se active TLS para la protección de datos."
+"secAlertConf" = "Ciertas configuraciones son vulnerables a ataques. Se recomienda reforzar los protocolos de seguridad para prevenir posibles violaciones."
+"secAlertSSL" = "El panel carece de una conexión segura. Por favor, instale un certificado TLS para la protección de datos."
+"secAlertPanelPort" = "El puerto predeterminado del panel es vulnerable. Por favor, configure un puerto aleatorio o específico."
+"secAlertPanelURI" = "La ruta URI predeterminada del panel no es segura. Por favor, configure una ruta URI compleja."
+"secAlertSubURI" = "La ruta URI predeterminada de la suscripción no es segura. Por favor, configure una ruta URI compleja."
+"secAlertSubJsonURI" = "La ruta URI JSON predeterminada de la suscripción no es segura. Por favor, configure una ruta URI compleja."
+
+[menu]
+"dashboard" = "Estado del Sistema"
+"inbounds" = "Entradas"
+"settings" = "Configuraciones"
+"xray" = "Ajustes Xray"
+"logout" = "Cerrar Sesión"
+"link" = "Gestionar"
+
+[pages.login]
+"hello" = "Hola"
+"title" = "Bienvenido"
+"loginAgain" = "El límite de tiempo de inicio de sesión ha expirado. Por favor, inicia sesión nuevamente."
+
+[pages.login.toasts]
+"invalidFormData" = "El formato de los datos de entrada es inválido."
+"emptyUsername" = "Por favor ingresa el nombre de usuario."
+"emptyPassword" = "Por favor ingresa la contraseña."
+"wrongUsernameOrPassword" = "Nombre de usuario o contraseña inválidos."
+"successLogin" = "Inicio de Sesión Exitoso"
+
+[pages.index]
+"title" = "Estado del Sistema"
+"memory" = "Memoria"
+"hard" = "Disco Duro"
+"xrayStatus" = "Xray"
+"stopXray" = "Detener"
+"restartXray" = "Reiniciar"
+"xraySwitch" = "Versión"
+"xraySwitchClick" = "Elige la versión a la que deseas cambiar."
+"xraySwitchClickDesk" = "Elige sabiamente, ya que las versiones anteriores pueden no ser compatibles con las configuraciones actuales."
+"operationHours" = "Tiempo de Funcionamiento"
+"systemLoad" = "Carga del Sistema"
+"systemLoadDesc" = "promedio de carga del sistema en los últimos 1, 5 y 15 minutos"
+"connectionTcpCountDesc" = "Conexiones TCP totales en todas las tarjetas de red."
+"connectionUdpCountDesc" = "Conexiones UDP totales en todas las tarjetas de red."
+"connectionCount" = "Número de Conexiones"
+"upSpeed" = "Velocidad de Subida Total para Todas las Tarjetas de Red."
+"downSpeed" = "Velocidad de Bajada Total para Todas las Tarjetas de Red."
+"totalSent" = "Tráfico Total de Subida de Todas las Tarjetas de Red desde el inicio del sistema."
+"totalReceive" = "Datos Descargados Totales en Todas las Tarjetas de Red desde el inicio del sistema."
+"xraySwitchVersionDialog" = "Cambiar Versión de Xray"
+"xraySwitchVersionDialogDesc" = "¿Estás seguro de que deseas cambiar la versión de Xray a"
+"dontRefresh" = "La instalación está en progreso, por favor no actualices esta página."
+"logs" = "Registros"
+"config" = "Configuración"
+"backup" = "Copia de Seguridad y Restauración"
+"backupTitle" = "Copia de Seguridad y Restauración de la Base de Datos"
+"backupDescription" = "Recuerda hacer una copia de seguridad antes de importar una nueva base de datos."
+"exportDatabase" = "Descargar Base de Datos"
+"importDatabase" = "Cargar Base de Datos"
+
+[pages.inbounds]
+"title" = "Entradas"
+"totalDownUp" = "Subidas/Descargas Totales"
+"totalUsage" = "Uso Total"
+"inboundCount" = "Número de Entradas"
+"operate" = "Menú"
+"enable" = "Habilitar"
+"remark" = "Notas"
+"protocol" = "Protocolo"
+"port" = "Puerto"
+"traffic" = "Tráfico"
+"details" = "Detalles"
+"transportConfig" = "Transporte"
+"expireDate" = "Fecha de Expiración"
+"resetTraffic" = "Restablecer Tráfico"
+"addInbound" = "Agregar Entrada"
+"generalActions" = "Acciones Generales"
+"create" = "Crear"
+"update" = "Actualizar"
+"modifyInbound" = "Modificar Entrada"
+"deleteInbound" = "Eliminar Entrada"
+"deleteInboundContent" = "¿Confirmar eliminación de entrada?"
+"deleteClient" = "Eliminar cliente"
+"deleteClientContent" = "¿Está seguro de que desea eliminar el cliente?"
+"resetTrafficContent" = "¿Confirmar restablecimiento de tráfico?"
+"copyLink" = "Copiar Enlace"
+"address" = "Dirección"
+"network" = "Red"
+"destinationPort" = "Puerto de Destino"
+"targetAddress" = "Dirección de Destino"
+"monitorDesc" = "Dejar en blanco por defecto"
+"meansNoLimit" = " = illimitata. (unidad: GB)"
+"totalFlow" = "Flujo Total"
+"leaveBlankToNeverExpire" = "Dejar en Blanco para Nunca Expirar"
+"noRecommendKeepDefault" = "No hay requisitos especiales para mantener la configuración predeterminada"
+"certificatePath" = "Ruta Cert"
+"certificateContent" = "Datos Cert"
+"publicKey" = "Clave Pública"
+"privatekey" = "Clave Privada"
+"clickOnQRcode" = "Haz clic en el Código QR para Copiar"
+"client" = "Cliente"
+"export" = "Exportar Enlaces"
+"clone" = "Clonar"
+"cloneInbound" = "Clonar Entradas"
+"cloneInboundContent" = "Se aplicarán todas las configuraciones de esta entrada, excepto el Puerto, la IP de Escucha y los Clientes, al clon."
+"cloneInboundOk" = "Clonar"
+"resetAllTraffic" = "Restablecer Tráfico de Todas las Entradas"
+"resetAllTrafficTitle" = "Restablecer tráfico de todas las entradas"
+"resetAllTrafficContent" = "¿Estás seguro de que deseas restablecer el tráfico de todas las entradas?"
+"resetInboundClientTraffics" = "Restablecer Tráfico de Clientes"
+"resetInboundClientTrafficTitle" = "Restablecer todo el tráfico de clientes"
+"resetInboundClientTrafficContent" = "¿Estás seguro de que deseas restablecer todo el tráfico para los clientes de esta entrada?"
+"resetAllClientTraffics" = "Restablecer Tráfico de Todos los Clientes"
+"resetAllClientTrafficTitle" = "Restablecer todo el tráfico de clientes"
+"resetAllClientTrafficContent" = "¿Estás seguro de que deseas restablecer todo el tráfico para todos los clientes?"
+"delDepletedClients" = "Eliminar Clientes Agotados"
+"delDepletedClientsTitle" = "Eliminar clientes agotados"
+"delDepletedClientsContent" = "¿Estás seguro de que deseas eliminar todos los clientes agotados?"
+"email" = "Email"
+"emailDesc" = "Por favor proporciona una dirección de correo electrónico única."
+"IPLimit" = "Límite de IP"
+"IPLimitDesc" = "Desactiva la entrada si la cantidad supera el valor ingresado (ingresa 0 para desactivar el límite de IP)."
+"IPLimitlog" = "Registro de IP"
+"IPLimitlogDesc" = "Registro de historial de IPs (antes de habilitar la entrada después de que haya sido desactivada por el límite de IP, debes borrar el registro)."
+"IPLimitlogclear" = "Limpiar el Registro"
+"setDefaultCert" = "Establecer certificado desde el panel"
+"xtlsDesc" = "La versión del núcleo de Xray debe ser 1.7.5"
+"realityDesc" = "La versión del núcleo de Xray debe ser 1.8.0 o superior."
+"telegramDesc" = "Por favor, proporciona el ID de Chat de Telegram. (usa el comando '/id' en el bot) o (@userinfobot)"
+"subscriptionDesc" = "Puedes encontrar tu enlace de suscripción en Detalles, también puedes usar el mismo nombre para varias configuraciones."
+"info" = "Info"
+"same" = "misma"
+"inboundData" = "Datos de entrada"
+"exportInbound" = "Exportación entrante"
+"import" = "Importar"
+"importInbound" = "Importar un entrante"
+
+[pages.client]
+"add" = "Agregar Cliente"
+"edit" = "Editar Cliente"
+"submitAdd" = "Agregar Cliente"
+"submitEdit" = "Guardar Cambios"
+"clientCount" = "Número de Clientes"
+"bulk" = "Agregar en Lote"
+"method" = "Método"
+"first" = "Primero"
+"last" = "Último"
+"prefix" = "Prefijo"
+"postfix" = "Sufijo"
+"delayedStart" = "Iniciar después del primer uso"
+"expireDays" = "Duración"
+"days" = "Día(s)"
+"renew" = "Renovación automática"
+"renewDesc" = "Renovación automática después de la expiración. (0 = desactivar) (unidad: día)"
+
+[pages.inbounds.toasts]
+"obtain" = "Recibir"
+
+[pages.inbounds.stream.general]
+"request" = "Pedido"
+"response" = "Respuesta"
+"name" = "Nombre"
+"value" = "Valor"
+
+[pages.inbounds.stream.tcp]
+"version" = "Versión"
+"method" = "Método"
+"path" = "Camino"
+"status" = "Estado"
+"statusDescription" = "Descripción de la Situación"
+"requestHeader" = "Encabezado de solicitud"
+"responseHeader" = "Encabezado de respuesta"
+
+[pages.inbounds.stream.quic]
+"encryption" = "Cifrado"
+
+[pages.settings]
+"title" = "Configuraciones"
+"save" = "Guardar"
+"infoDesc" = "Cada cambio realizado aquí debe ser guardado. Por favor, reinicie el panel para aplicar los cambios."
+"restartPanel" = "Reiniciar Panel"
+"restartPanelDesc" = "¿Está seguro de que desea reiniciar el panel? Haga clic en Aceptar para reiniciar después de 3 segundos. Si no puede acceder al panel después de reiniciar, por favor, consulte la información de registro del panel en el servidor."
+"actions" = "Acciones"
+"resetDefaultConfig" = "Restablecer a Configuración Predeterminada"
+"panelSettings" = "Configuraciones del Panel"
+"securitySettings" = "Configuraciones de Seguridad"
+"TGBotSettings" = "Configuraciones de Bot de Telegram"
+"panelListeningIP" = "IP de Escucha del Panel"
+"panelListeningIPDesc" = "Dejar en blanco por defecto para monitorear todas las IPs."
+"panelListeningDomain" = "Dominio de Escucha del Panel"
+"panelListeningDomainDesc" = "Dejar en blanco por defecto para monitorear todos los dominios e IPs."
+"panelPort" = "Puerto del Panel"
+"panelPortDesc" = "El puerto utilizado para mostrar este panel."
+"publicKeyPath" = "Ruta del Archivo de Clave Pública del Certificado del Panel"
+"publicKeyPathDesc" = "Complete con una ruta absoluta que comience con."
+"privateKeyPath" = "Ruta del Archivo de Clave Privada del Certificado del Panel"
+"privateKeyPathDesc" = "Complete con una ruta absoluta que comience con."
+"panelUrlPath" = "Ruta Raíz de la URL del Panel"
+"panelUrlPathDesc" = "Debe empezar con '/' y terminar con."
+"pageSize" = "Tamaño de paginación"
+"pageSizeDesc" = "Defina el tamaño de página para la tabla de entradas. Establezca 0 para desactivar"
+"remarkModel" = "Modelo de observación y carácter de separación"
+"datepicker" = "selector de fechas"
+"datepickerPlaceholder" = "Seleccionar fecha"
+"datepickerDescription" = "El tipo de calendario selector especifica la fecha de vencimiento"
+"sampleRemark" = "Observación de muestra"
+"oldUsername" = "Nombre de Usuario Actual"
+"currentPassword" = "Contraseña Actual"
+"newUsername" = "Nuevo Nombre de Usuario"
+"newPassword" = "Nueva Contraseña"
+"telegramBotEnable" = "Habilitar bot de Telegram"
+"telegramBotEnableDesc" = "Conéctese a las funciones de este panel a través del bot de Telegram."
+"telegramToken" = "Token de Telegram"
+"telegramTokenDesc" = "Debe obtener el token del administrador de bots de Telegram @botfather."
+"telegramProxy" = "Socks5 Proxy"
+"telegramProxyDesc" = "Si necesita el proxy Socks5 para conectarse a Telegram. Ajuste su configuración según la guía."
+"telegramChatId" = "IDs de Chat de Telegram para Administradores"
+"telegramChatIdDesc" = "IDs de Chat múltiples separados por comas. Use @userinfobot o use el comando '/id' en el bot para obtener sus IDs de Chat."
+"telegramNotifyTime" = "Hora de Notificación del Bot de Telegram"
+"telegramNotifyTimeDesc" = "Usar el formato de tiempo de Crontab."
+"tgNotifyBackup" = "Respaldo de Base de Datos"
+"tgNotifyBackupDesc" = "Incluir archivo de respaldo de base de datos con notificación de informe."
+"tgNotifyLogin" = "Notificación de Inicio de Sesión"
+"tgNotifyLoginDesc" = "Muestra el nombre de usuario, dirección IP y hora cuando alguien intenta iniciar sesión en su panel."
+"sessionMaxAge" = "Edad Máxima de Sesión"
+"sessionMaxAgeDesc" = "La duración de una sesión de inicio de sesión (unidad: minutos)."
+"expireTimeDiff" = "Umbral de Expiración para Notificación"
+"expireTimeDiffDesc" = "Reciba notificaciones sobre la expiración de la cuenta antes del umbral (unidad: días)."
+"trafficDiff" = "Umbral de Tráfico para Notificación"
+"trafficDiffDesc" = "Reciba notificaciones sobre el agotamiento del tráfico antes de alcanzar el umbral (unidad: GB)."
+"tgNotifyCpu" = "Umbral de Alerta de Porcentaje de CPU"
+"tgNotifyCpuDesc" = "Reciba notificaciones si el uso de la CPU supera este umbral (unidad: %)."
+"timeZone" = "Zona Horaria"
+"timeZoneDesc" = "Las tareas programadas se ejecutan de acuerdo con la hora en esta zona horaria."
+"subSettings" = "Suscripción"
+"subEnable" = "Habilitar Servicio"
+"subEnableDesc" = "Función de suscripción con configuración separada."
+"subListen" = "Listening IP"
+"subListenDesc" = "Dejar en blanco por defecto para monitorear todas las IPs."
+"subPort" = "Puerto de Suscripción"
+"subPortDesc" = "El número de puerto para el servicio de suscripción debe estar sin usar en el servidor."
+"subCertPath" = "Ruta del Archivo de Clave Pública del Certificado de Suscripción"
+"subCertPathDesc" = "Complete con una ruta absoluta que comience con '/'"
+"subKeyPath" = "Ruta del Archivo de Clave Privada del Certificado de Suscripción"
+"subKeyPathDesc" = "Complete con una ruta absoluta que comience con '/'"
+"subPath" = "Ruta Raíz de la URL de Suscripción"
+"subPathDesc" = "Debe empezar con '/' y terminar con '/'"
+"subDomain" = "Dominio de Escucha"
+"subDomainDesc" = "Dejar en blanco por defecto para monitorear todos los dominios e IPs."
+"subUpdates" = "Intervalos de Actualización de Suscripción"
+"subUpdatesDesc" = "Horas de intervalo entre actualizaciones en la aplicación del cliente."
+"subEncrypt" = "Encriptar configuraciones"
+"subEncryptDesc" = "Encriptar las configuraciones devueltas en la suscripción."
+"subShowInfo" = "Mostrar información de uso"
+"subShowInfoDesc" = "Mostrar tráfico restante y fecha después del nombre de configuración."
+"subURI" = "URI de proxy inverso"
+"subURIDesc" = "Cambiar el URI base de la URL de suscripción para usar detrás de los servidores proxy"
+"fragment" = "Fragmentación"
+"fragmentDesc" = "Habilitar la fragmentación para el paquete de saludo de TLS"
+"fragmentSett" = "Configuración de Fragmentación"
+"mux" = "Mux"
+"muxDesc" = "Transmite múltiples flujos de datos independientes dentro de un flujo de datos establecido."
+"muxSett" = "Configuración Mux"
+"direct" = "Conexión Directa"
+"directDesc" = "Establece conexiones directas con dominios o rangos de IP de un país específico."
+"directSett" = "Opciones de Conexión Directa"
+
+[pages.xray]
+"title" = "Xray Configuración"
+"save" = "Guardar configuración"
+"restart" = "Reiniciar Xray"
+"basicTemplate" = "Plantilla Básica"
+"advancedTemplate" = "Plantilla Avanzada"
+"generalConfigs" = "Configuraciones Generales"
+"generalConfigsDesc" = "Estas opciones proporcionarán ajustes generales."
+"logConfigs" = "Registro"
+"logConfigsDesc" = "Los registros pueden afectar la eficiencia de su servidor. Se recomienda habilitarlos sabiamente solo en caso de sus necesidades."
+"blockConfigs" = "Configuraciones de Bloqueo"
+"blockConfigsDesc" = "Estas opciones evitarán que los usuarios se conecten a protocolos y sitios web específicos."
+"blockCountryConfigs" = "Configuraciones de Bloqueo por País"
+"blockCountryConfigsDesc" = "Estas opciones evitarán que los usuarios se conecten a dominios de países específicos."
+"directCountryConfigs" = "Configuraciones de Conexión Directa por País"
+"directCountryConfigsDesc" = "Una conexión directa asegura que el tráfico específico no se enrutará a través de otro servidor."
+"ipv4Configs" = "Configuraciones IPv4"
+"ipv4ConfigsDesc" = "Estas opciones solo enrutarán a los dominios objetivo a través de IPv4."
+"warpConfigs" = "Configuraciones de WARP"
+"warpConfigsDesc" = "Precaución: Antes de usar estas opciones, instale WARP en modo de proxy socks5 en su servidor siguiendo los pasos en el GitHub del panel. WARP enrutará el tráfico a los sitios web a través de los servidores de Cloudflare."
+"Template" = "Plantilla de Configuración de Xray"
+"TemplateDesc" = "Genera el archivo de configuración final de Xray basado en esta plantilla."
+"FreedomStrategy" = "Configurar Estrategia para el Protocolo Freedom"
+"FreedomStrategyDesc" = "Establece la estrategia de salida de la red en el Protocolo Freedom."
+"RoutingStrategy" = "Configurar Estrategia de Enrutamiento de Dominios"
+"RoutingStrategyDesc" = "Establece la estrategia general de enrutamiento para la resolución de DNS."
+"Torrent" = "Prohibir Uso de BitTorrent"
+"TorrentDesc" = "Cambia la plantilla de configuración para evitar el uso de BitTorrent por parte de los usuarios."
+"PrivateIp" = "Prohibir Conexiones a Rangos de IP Privadas"
+"PrivateIpDesc" = "Cambia la plantilla de configuración para evitar la conexión a rangos de IP privadas."
+"Ads" = "Bloquear Anuncios"
+"AdsDesc" = "Cambia la plantilla de configuración para bloquear anuncios."
+"Family" = "Bloquee malware y contenido para adultos"
+"FamilyDesc" = "Resolutores de DNS de Cloudflare para bloquear malware y contenido para adultos para protección familiar."
+"Security" = "Escudo de Seguridad"
+"SecurityDesc" = "Cambiar la plantilla de configuración para la protección de seguridad."
+"Speedtest" = "Bloquear Sitios Web de Pruebas de Velocidad"
+"SpeedtestDesc" = "Cambia la plantilla de configuración para evitar la conexión a sitios web de pruebas de velocidad."
+"IRIp" = "Desactivar Conexión a Rangos de IP de Irán"
+"IRIpDesc" = "Cambia la plantilla de configuración para evitar la conexión a rangos de IP de Irán."
+"IRDomain" = "Desactivar Conexión a Dominios de Irán"
+"IRDomainDesc" = "Cambia la plantilla de configuración para evitar la conexión a dominios de Irán."
+"ChinaIp" = "Desactivar Conexión a Rangos de IP de China"
+"ChinaIpDesc" = "Cambia la plantilla de configuración para evitar la conexión a rangos de IP de China."
+"ChinaDomain" = "Desactivar Conexión a Dominios de China"
+"ChinaDomainDesc" = "Cambia la plantilla de configuración para evitar la conexión a dominios de China."
+"RussiaIp" = "Desactivar Conexión a Rangos de IP de Rusia"
+"RussiaIpDesc" = "Cambia la plantilla de configuración para evitar la conexión a rangos de IP de Rusia."
+"RussiaDomain" = "Desactivar Conexión a Dominios de Rusia"
+"RussiaDomainDesc" = "Cambia la plantilla de configuración para evitar la conexión a dominios de Rusia."
+"VNIp" = "Deshabilitar la conexión a las IP de Vietnam"
+"VNIpDesc" = "Cambie la plantilla de configuración para evitar conectarse a rangos de IP de Vietnam."
+"VNDomain" = "Deshabilitar la conexión a dominios de Vietnam"
+"VNDomainDesc" = "Cambie la plantilla de configuración para evitar conectarse a dominios de Vietnam."
+"DirectIRIp" = "Conexión Directa a Rangos de IP de Irán"
+"DirectIRIpDesc" = "Cambia la plantilla de configuración para conectarse directamente a rangos de IP de Irán."
+"DirectIRDomain" = "Conexión Directa a Dominios de Irán"
+"DirectIRDomainDesc" = "Cambia la plantilla de configuración para conectarse directamente a dominios de Irán."
+"DirectChinaIp" = "Conexión Directa a Rangos de IP de China"
+"DirectChinaIpDesc" = "Cambia la plantilla de configuración para conectarse directamente a rangos de IP de China."
+"DirectChinaDomain" = "Conexión Directa a Dominios de China"
+"DirectChinaDomainDesc" = "Cambia la plantilla de configuración para conectarse directamente a dominios de China."
+"DirectRussiaIp" = "Conexión Directa a Rangos de IP de Rusia"
+"DirectRussiaIpDesc" = "Cambia la plantilla de configuración para conectarse directamente a rangos de IP de Rusia."
+"DirectRussiaDomain" = "Conexión Directa a Dominios de Rusia"
+"DirectRussiaDomainDesc" = "Cambia la plantilla de configuración para conectarse directamente a dominios de Rusia."
+"DirectVNIp" = "Conexión directa a IP de Vietnam"
+"DirectVNIpDesc" = "Cambie la plantilla de configuración para la conexión directa a rangos de IP de Vietnam."
+"DirectVNDomain" = "Conexión directa a dominios de Vietnam"
+"DirectVNDomainDesc" = "Cambie la plantilla de configuración para la conexión directa a dominios de Vietnam."
+"GoogleIPv4" = "Usar IPv4 para Google"
+"GoogleIPv4Desc" = "Agregar enrutamiento para que Google se conecte con IPv4."
+"NetflixIPv4" = "Usar IPv4 para Netflix"
+"NetflixIPv4Desc" = "Agregar enrutamiento para que Netflix se conecte con IPv4."
+"GoogleWARP" = "Google"
+"GoogleWARPDesc" = "Agrega enrutamiento para Google a través de WARP."
+"OpenAIWARP" = "ChatGPT"
+"OpenAIWARPDesc" = "Enruta el tráfico a ChatGPT a través de WARP."
+"NetflixWARP" = "Netflix"
+"NetflixWARPDesc" = "Enruta el tráfico a Netflix a través de WARP."
+"MetaWARP" = "Meta"
+"MetaWARPDesc" = "Enruta el tráfico a Meta (Instagram, Facebook, WhatsApp, Threads, etc.) a través de WARP."
+"AppleWARP" = "Apple"
+"AppleWARPDesc" = "Enruta el tráfico a Apple a través de WARP."
+"RedditWARP" = "Reddit"
+"RedditWARPDesc" = "Enruta el tráfico a Reddit a través de WARP."
+"SpotifyWARP" = "Spotify"
+"SpotifyWARPDesc" = "Enruta el tráfico a Spotify a través de WARP."
+"IRWARP" = "Rutear dominios de Irán a través de WARP."
+"IRWARPDesc" = "Agregar enrutamiento para dominios de Irán a través de WARP."
+"Inbounds" = "Entrante"
+"InboundsDesc" = "Cambia la plantilla de configuración para aceptar clientes específicos."
+"Outbounds" = "Salidas"
+"Balancers" = "Equilibradores"
+"OutboundsDesc" = "Cambia la plantilla de configuración para definir formas de salida para este servidor."
+"Routings" = "Reglas de enrutamiento"
+"RoutingsDesc" = "¡La prioridad de cada regla es importante!"
+"completeTemplate" = "Todos"
+"logLevel" = "Nivel de registro"
+"logLevelDesc" = "El nivel de registro para registros de errores, que indica la información que debe registrarse."
+"accessLog" = "Registro de acceso"
+"accessLogDesc" = "La ruta del archivo para el registro de acceso. El valor especial 'ninguno' deshabilita los registros de acceso"
+"errorLog" = "Registro de Errores"
+"errorLogDesc" = "La ruta del archivo para el registro de errores. El valor especial 'none' desactiva los registros de errores."
+
+[pages.xray.rules]
+"first" = "Primero"
+"last" = "Último"
+"up" = "Arriba"
+"down" = "Abajo"
+"source" = "Fuente"
+"dest" = "Destino"
+"inbound" = "Entrante"
+"outbound" = "Saliente"
+"balancer" = "Equilibrador"
+"info" = "Información"
+"add" = "Agregar Regla"
+"edit" = "Editar Regla"
+"useComma" = "Elementos separados por comas"
+
+[pages.xray.outbound]
+"addOutbound" = "Agregar salida"
+"addReverse" = "Agregar reverso"
+"editOutbound" = "Editar salida"
+"editReverse" = "Editar reverso"
+"tag" = "Etiqueta"
+"tagDesc" = "etiqueta única"
+"address" = "Dirección"
+"reverse" = "Reverso"
+"domain" = "Dominio"
+"type" = "Tipo"
+"bridge" = "puente"
+"portal" = "portal"
+"intercon" = "Interconexión"
+"settings" = "Configuración"
+"accountInfo" = "Información de la Cuenta"
+"outboundStatus" = "Estado de Salida"
+"sendThrough" = "Enviar a través de"
+
+[pages.xray.balancer]
+"addBalancer" = "Agregar equilibrador"
+"editBalancer" = "Editar balanceador"
+"balancerStrategy" = "Estrategia"
+"balancerSelectors" = "Selectores"
+"tag" = "Etiqueta"
+"tagDesc" = "etiqueta única"
+"balancerDesc" = "No es posible utilizar balancerTag y outboundTag al mismo tiempo. Si se utilizan al mismo tiempo, sólo funcionará outboundTag."
+
+[pages.xray.wireguard]
+"secretKey" = "Llave secreta"
+"publicKey" = "Llave pública"
+"allowedIPs" = "IP permitidas"
+"endpoint" = "Punto final"
+"psk" = "Clave precompartida"
+"domainStrategy" = "Estrategia de dominio"
+
+[pages.xray.dns]
+"enable" = "Habilitar DNS"
+"enableDesc" = "Habilitar servidor DNS incorporado"
+"strategy" = "Estrategia de Consulta"
+"strategyDesc" = "Estrategia general para resolver nombres de dominio"
+"add" = "Agregar Servidor"
+"edit" = "Editar Servidor"
+"domains" = "Dominios"
+
+[pages.xray.fakedns]
+"add" = "Agregar DNS Falso"
+"edit" = "Editar DNS Falso"
+"ipPool" = "Subred del grupo de IP"
+"poolSize" = "Tamaño del grupo"
+
+[pages.settings.security]
+"admin" = "Administrador"
+"secret" = "Token Secreto"
+"loginSecurity" = "Seguridad de Inicio de Sesión"
+"loginSecurityDesc" = "Habilitar un paso adicional de seguridad para el inicio de sesión de usuarios."
+"secretToken" = "Token Secreto"
+"secretTokenDesc" = "Por favor, copia y guarda este token de forma segura en un lugar seguro. Este token es necesario para iniciar sesión y no se puede recuperar con la herramienta de comando x-ui."
+
+[pages.settings.toasts]
+"modifySettings" = "Modificar Configuraciones "
+"getSettings" = "Obtener Configuraciones "
+"modifyUser" = "Modificar Usuario "
+"originalUserPassIncorrect" = "Nombre de usuario o contraseña original incorrectos"
+"userPassMustBeNotEmpty" = "El nuevo nombre de usuario y la nueva contraseña no pueden estar vacíos"
+
+[tgbot]
+"keyboardClosed" = "❌ ¡Teclado personalizado cerrado!"
+"noResult" = "❗ ¡Sin resultados!"
+"noQuery" = "❌ ¡Consulta no encontrada! ¡Por favor utiliza el comando nuevamente!"
+"wentWrong" = "❌ ¡Algo salió mal!"
+"noIpRecord" = "❗ ¡Sin Registro de IP!"
+"noInbounds" = "❗ ¡No se encontraron entradas!"
+"unlimited" = "♾ Ilimitado"
+"add" = "Agregar"
+"month" = "Mes"
+"months" = "Meses"
+"day" = "Día"
+"days" = "Días"
+"hours" = "Horas"
+"unknown" = "Desconocido"
+"inbounds" = "Entradas"
+"clients" = "Clientes"
+"offline" = "🔴 Sin conexión"
+"online" = "🟢 En línea"
+
+[tgbot.commands]
+"unknown" = "❗ Comando desconocido"
+"pleaseChoose" = "👇 Por favor elige:\r\n"
+"help" = "🤖 ¡Bienvenido a este bot! Está diseñado para ofrecerte datos específicos del servidor y te permite hacer modificaciones según sea necesario.\r\n\r\n"
+"start" = "👋 Hola {{ .Firstname }}.\r\n"
+"welcome" = "🤖 Bienvenido al bot de gestión de {{ .Hostname }}.\r\n"
+"status" = "✅ ¡El bot está bien!"
+"usage" = "❗ ¡Por favor proporciona un texto para buscar!"
+"getID" = "🆔 Tu ID: {{ .ID }}
"
+"helpAdminCommands" = "Para buscar un correo electrónico de cliente:\r\n/usage [Correo electrónico]
\r\n\r\nPara buscar entradas (con estadísticas de cliente):\r\n/inbound [Observación]
\r\n\r\nID de Chat de Telegram:\r\n/id
"
+"helpClientCommands" = "Para buscar estadísticas, utiliza el siguiente comando:\r\n/usage [Correo electrónico]
\r\n\r\nID de Chat de Telegram:\r\n/id
"
+
+[tgbot.messages]
+"cpuThreshold" = "🔴 El uso de CPU {{ .Percent }}% es mayor que el umbral {{ .Threshold }}%"
+"selectUserFailed" = "❌ ¡Error al seleccionar usuario!"
+"userSaved" = "✅ Usuario de Telegram guardado."
+"loginSuccess" = "✅ Has iniciado sesión en el panel con éxito.\r\n"
+"loginFailed" = "❗️ Falló el inicio de sesión en el panel.\r\n"
+"report" = "🕰 Informes programados: {{ .RunTime }}\r\n"
+"datetime" = "⏰ Fecha y Hora: {{ .DateTime }}\r\n"
+"hostname" = "💻 Nombre del Host: {{ .Hostname }}\r\n"
+"version" = "🚀 Versión de X-UI: {{ .Version }}\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" = "⏳ Tiempo de actividad del servidor: {{ .UpTime }} {{ .Unit }}\r\n"
+"serverLoad" = "📈 Carga del servidor: {{ .Load1 }}, {{ .Load2 }}, {{ .Load3 }}\r\n"
+"serverMemory" = "📋 Memoria del servidor: {{ .Current }}/{{ .Total }}\r\n"
+"tcpCount" = "🔹 Conteo de TCP: {{ .Count }}\r\n"
+"udpCount" = "🔸 Conteo de UDP: {{ .Count }}\r\n"
+"traffic" = "🚦 Tráfico: {{ .Total }} (↑{{ .Upload }},↓{{ .Download }})\r\n"
+"xrayStatus" = "ℹ️ Estado de Xray: {{ .State }}\r\n"
+"username" = "👤 Nombre de usuario: {{ .Username }}\r\n"
+"time" = "⏰ Hora: {{ .Time }}\r\n"
+"inbound" = "📍 Inbound: {{ .Remark }}\r\n"
+"port" = "🔌 Puerto: {{ .Port }}\r\n"
+"expire" = "📅 Fecha de Vencimiento: {{ .Time }}\r\n"
+"expireIn" = "📅 Vence en: {{ .Time }}\r\n"
+"active" = "💡 Activo: {{ .Enable }}\r\n"
+"enabled" = "🚨 Habilitado: {{ .Enable }}\r\n"
+"online" = "🌐 Estado de conexión: {{ .Status }}\r\n"
+"email" = "📧 Email: {{ .Email }}\r\n"
+"upload" = "🔼 Subida: ↑{{ .Upload }}\r\n"
+"download" = "🔽 Bajada: ↓{{ .Download }}\r\n"
+"total" = "📊 Total: ↑↓{{ .UpDown }} / {{ .Total }}\r\n"
+"TGUser" = "👤 Usuario de Telegram: {{ .TelegramID }}\r\n"
+"exhaustedMsg" = "🚨 Agotado {{ .Type }}:\r\n"
+"exhaustedCount" = "🚨 Cantidad de Agotados {{ .Type }}:\r\n"
+"onlinesCount" = "🌐 Clientes en línea: {{ .Count }}\r\n"
+"disabled" = "🛑 Desactivado: {{ .Disabled }}\r\n"
+"depleteSoon" = "🔜 Se agotará pronto: {{ .Deplete }}\r\n\r\n"
+"backupTime" = "🗄 Hora de la Copia de Seguridad: {{ .Time }}\r\n"
+"refreshedOn" = "\r\n📋🔄 Actualizado en: {{ .Time }}\r\n\r\n"
+"yes" = "✅ Sí"
+"no" = "❌ No"
+
+[tgbot.buttons]
+"closeKeyboard" = "❌ Cerrar Teclado"
+"cancel" = "❌ Cancelar"
+"cancelReset" = "❌ Cancelar Reinicio"
+"cancelIpLimit" = "❌ Cancelar Límite de IP"
+"confirmResetTraffic" = "✅ ¿Confirmar Reinicio de Tráfico?"
+"confirmClearIps" = "✅ ¿Confirmar Limpiar IPs?"
+"confirmRemoveTGUser" = "✅ ¿Confirmar Eliminar Usuario de Telegram?"
+"confirmToggle" = " ✅ ¿Confirmar habilitar/deshabilitar usuario?"
+"dbBackup" = "Obtener Copia de Seguridad de BD"
+"serverUsage" = "Uso del Servidor"
+"getInbounds" = "Obtener Entradas"
+"depleteSoon" = "Pronto se Agotará"
+"clientUsage" = "Obtener Uso"
+"onlines" = "Clientes en línea"
+"commands" = "Comandos"
+"refresh" = "🔄 Actualizar"
+"clearIPs" = "❌ Limpiar IPs"
+"removeTGUser" = "❌ Eliminar Usuario de Telegram"
+"selectTGUser" = "👤 Seleccionar Usuario de Telegram"
+"selectOneTGUser" = "👤 Selecciona un usuario de telegram:"
+"resetTraffic" = "📈 Reiniciar Tráfico"
+"resetExpire" = "📅 Cambiar fecha de Vencimiento"
+"ipLog" = "🔢 Registro de IP"
+"ipLimit" = "🔢 Límite de IP"
+"setTGUser" = "👤 Establecer Usuario de Telegram"
+"toggle" = "🔘 Habilitar / Deshabilitar"
+"custom" = "🔢 Costumbre"
+"confirmNumber" = "✅ Confirmar: {{ .Num }}"
+"confirmNumberAdd" = "✅ Confirmar agregando: {{ .Num }}"
+"limitTraffic" = "🚧 Límite de tráfico"
+"getBanLogs" = "Registros de prohibición"
+
+[tgbot.answers]
+"successfulOperation" = "✅ ¡Exitosa!"
+"errorOperation" = "❗ Error en la Operación."
+"getInboundsFailed" = "❌ Error al obtener las entradas"
+"canceled" = "❌ {{ .Email }} : Operación cancelada."
+"clientRefreshSuccess" = "✅ {{ .Email }} : Cliente actualizado exitosamente."
+"IpRefreshSuccess" = "✅ {{ .Email }} : IPs actualizadas exitosamente."
+"TGIdRefreshSuccess" = "✅ {{ .Email }} : Usuario de Telegram del cliente actualizado exitosamente."
+"resetTrafficSuccess" = "✅ {{ .Email }} : Tráfico reiniciado exitosamente."
+"setTrafficLimitSuccess" = "✅ {{ .Email }} : Límite de Tráfico guardado exitosamente."
+"expireResetSuccess" = "✅ {{ .Email }} : Días de vencimiento reiniciados exitosamente."
+"resetIpSuccess" = "✅ {{ .Email }} : Límite de IP {{ .Count }} guardado exitosamente."
+"clearIpSuccess" = "✅ {{ .Email }} : IPs limpiadas exitosamente."
+"getIpLog" = "✅ {{ .Email }} : Obtener Registro de IP."
+"getUserInfo" = "✅ {{ .Email }} : Obtener Información de Usuario de Telegram."
+"removedTGUserSuccess" = "✅ {{ .Email }} : Usuario de Telegram eliminado exitosamente."
+"enableSuccess" = "✅ {{ .Email }} : Habilitado exitosamente."
+"disableSuccess" = "✅ {{ .Email }} : Deshabilitado exitosamente."
+"askToAddUserId" = "¡No se encuentra su configuración!\r\nPor favor, pídale a su administrador que use su ID de usuario de Telegram en su(s) configuración(es).\r\n\r\nSu ID de usuario: {{ .TgUserID }}
"
diff --git a/translate.fa_IR.toml b/translate.fa_IR.toml
new file mode 100644
index 00000000..81c87dcd
--- /dev/null
+++ b/translate.fa_IR.toml
@@ -0,0 +1,638 @@
+"username" = "نامکاربری"
+"password" = "رمزعبور"
+"login" = "ورود"
+"confirm" = "تایید"
+"cancel" = "انصراف"
+"close" = "بستن"
+"copy" = "کپی"
+"copied" = "کپی شد"
+"download" = "دانلود"
+"remark" = "نام"
+"enable" = "فعال"
+"protocol" = "پروتکل"
+"search" = "جستجو"
+"filter" = "فیلتر"
+"loading" = "...در حال بارگذاری"
+"second" = "ثانیه"
+"minute" = "دقیقه"
+"hour" = "ساعت"
+"day" = "روز"
+"check" = "چک کردن"
+"indefinite" = "نامحدود"
+"unlimited" = "نامحدود"
+"none" = "هیچ"
+"qrCode" = "QRکد"
+"info" = "اطلاعات بیشتر"
+"edit" = "ویرایش"
+"delete" = "حذف"
+"reset" = "ریست"
+"copySuccess" = "باموفقیت کپیشد"
+"sure" = "مطمئن"
+"encryption" = "رمزگذاری"
+"transmission" = "راهاتصال"
+"host" = "آدرس"
+"path" = "مسیر"
+"camouflage" = "مبهمسازی"
+"status" = "وضعیت"
+"enabled" = "فعال"
+"disabled" = "غیرفعال"
+"depleted" = "منقضی"
+"depletingSoon" = "درحالانقضا"
+"offline" = "آفلاین"
+"online" = "آنلاین"
+"domainName" = "آدرس دامنه"
+"monitor" = "آیپی اتصال"
+"certificate" = "گواهی دیجیتال"
+"fail" = "ناموفق"
+"success" = " موفق"
+"getVersion" = "دریافت نسخه"
+"install" = "نصب"
+"clients" = "کاربران"
+"usage" = "استفاده"
+"secretToken" = "توکن امنیتی"
+"remained" = "باقیمانده"
+"security" = "امنیت"
+"secAlertTitle" = "هشدارامنیتی"
+"secAlertSsl" = "ایناتصالامن نیست. لطفا تازمانیکه تیالاس برای محافظت از دادهها فعال نشدهاست، از وارد کردن اطلاعات حساس خودداری کنید"
+"secAlertConf" = "تنظیمات خاصی در برابر حملات آسیب پذیر هستند. توصیه میشود پروتکلهای امنیتی را برای جلوگیری از نفوذ احتمالی تقویت کنید"
+"secAlertSSL" = "پنل فاقد ارتباط امن است. لطفاً یک گواهینامه تیالاس برای محافظت از دادهها نصب کنید"
+"secAlertPanelPort" = "استفاده از پورت پیشفرض پنل ناامن است. لطفاً یک پورت تصادفی یا خاص تنظیم کنید"
+"secAlertPanelURI" = "مسیر پیشفرض لینک پنل ناامن است. لطفاً یک مسیر پیچیده تنظیم کنید"
+"secAlertSubURI" = "مسیر پیشفرض لینک سابسکریپشن ناامن است. لطفاً یک مسیر پیچیده تنظیم کنید"
+"secAlertSubJsonURI" = "مسیر پیشفرض لینک سابسکریپشن جیسون ناامن است. لطفاً یک مسیر پیچیده تنظیم کنید"
+
+[menu]
+"dashboard" = "نمای کلی"
+"inbounds" = "ورودیها"
+"settings" = "تنظیمات پنل"
+"xray" = "پیکربندی ایکسری"
+"logout" = "خروج"
+"link" = "مدیریت"
+
+[pages.login]
+"hello" = "سلام"
+"title" = "خوشآمدید"
+"loginAgain" = "مدت زمان استفاده بهاتمامرسیده، لطفا دوباره وارد شوید"
+
+[pages.login.toasts]
+"invalidFormData" = "اطلاعات بهدرستی وارد نشدهاست"
+"emptyUsername" = "لطفا یک نامکاربری وارد کنید"
+"emptyPassword" = "لطفا یک رمزعبور وارد کنید"
+"wrongUsernameOrPassword" = "نامکاربری یا رمزعبوراشتباهاست"
+"successLogin" = "ورود"
+
+[pages.index]
+"title" = "نمای کلی"
+"memory" = "RAM"
+"hard" = "Disk"
+"xrayStatus" = "ایکسری"
+"stopXray" = "توقف"
+"restartXray" = "شروعمجدد"
+"xraySwitch" = "نسخه"
+"xraySwitchClick" = "نسخه مورد نظر را انتخاب کنید"
+"xraySwitchClickDesk" = "لطفا بادقت انتخاب کنید. درصورت انتخاب نسخه قدیمیتر، امکان ناهماهنگی با پیکربندی فعلی وجود دارد"
+"operationHours" = "مدتکارکرد"
+"systemLoad" = "بارسیستم"
+"systemLoadDesc" = "میانگین بار سیستم برای 1، 5 و 15 دقیقه گذشته"
+"connectionTcpCountDesc" = "در تمامشبکهها TCP مجموعاتصالات"
+"connectionUdpCountDesc" = "در تمامشبکهها UDP مجموعاتصالات"
+"connectionCount" = "تعداد کانکشن ها"
+"upSpeed" = "سرعت کلی آپلود در تمامشبکهها"
+"downSpeed" = "سرعت کلی دانلود در تمامشبکهها"
+"totalSent" = "مجموع ترافیک ارسالشده پساز شروعبهکار سیستمعامل"
+"totalReceive" = "مجموع ترافیک دریافتشده پساز شروعبهکار سیستمعامل"
+"xraySwitchVersionDialog" = "تغییر نسخه ایکسری"
+"xraySwitchVersionDialogDesc" = "آیا از تغییر نسخه مطمئن هستید؟"
+"dontRefresh" = "در حال نصب، لطفا صفحه را رفرش نکنید"
+"logs" = "گزارشها"
+"config" = "پیکربندی"
+"backup" = "پشتیبانگیری"
+"backupTitle" = "پشتیبانگیری دیتابیس"
+"backupDescription" = "توصیهمیشود قبلاز واردکردن یک دیتابیس جدید، نسخه پشتیبان تهیه کنید"
+"exportDatabase" = " پشتیبانگیری"
+"importDatabase" = "بازگرداندن"
+
+[pages.inbounds]
+"title" = "کاربران"
+"totalDownUp" = "دریافت/ارسال کل"
+"totalUsage" = "مصرف کل"
+"inboundCount" = "کل ورودیها"
+"operate" = "عملیات"
+"enable" = "فعال"
+"remark" = "نام"
+"protocol" = "پروتکل"
+"port" = "پورت"
+"traffic" = "ترافیک"
+"details" = "توضیحات"
+"transportConfig" = "نحوه اتصال"
+"expireDate" = "مدت زمان"
+"resetTraffic" = "ریست ترافیک"
+"addInbound" = "افزودن ورودی"
+"generalActions" = "عملیات کلی"
+"create" = "افزودن"
+"update" = "ویرایش"
+"modifyInbound" = "ویرایش ورودی"
+"deleteInbound" = "حذف ورودی"
+"deleteInboundContent" = "آیا مطمئن به حذف ورودی هستید؟"
+"deleteClient" = "حذف کاربر"
+"deleteClientContent" = "آیا مطمئن به حذف کاربر هستید؟"
+"resetTrafficContent" = "آیا مطمئن به ریست ترافیک هستید؟"
+"copyLink" = "کپی لینک"
+"address" = "آدرس"
+"network" = "شبکه"
+"destinationPort" = "پورت مقصد"
+"targetAddress" = "آدرس مقصد"
+"monitorDesc" = "بهطور پیشفرض خالیبگذارید"
+"meansNoLimit" = "0 = واحد: گیگابایت) نامحدود)"
+"totalFlow" = "ترافیک کل"
+"leaveBlankToNeverExpire" = "برای منقضینشدن خالیبگذارید"
+"noRecommendKeepDefault" = "توصیهمیشود بهطور پیشفرض حفظشود"
+"certificatePath" = "مسیر فایل"
+"certificateContent" = "محتوای فایل"
+"publicKey" = "کلید عمومی"
+"privatekey" = "کلید خصوصی"
+"clickOnQRcode" = "برای کپی بر روی کدتصویری کلیک کنید"
+"client" = "کاربر"
+"export" = "استخراج لینکها"
+"clone" = "شبیهسازی"
+"cloneInbound" = "شبیهسازی ورودی"
+"cloneInboundContent" = "همه موارد این ورودی بجز پورت، آیپی و کاربرها شبیهسازی خواهند شد"
+"cloneInboundOk" = "ساختن شبیه ساز"
+"resetAllTraffic" = "ریست ترافیک کل ورودیها"
+"resetAllTrafficTitle" = "ریست ترافیک کل ورودیها"
+"resetAllTrafficContent" = "آیا مطمئن به ریست ترافیک تمام ورودیها هستید؟"
+"resetInboundClientTraffics" = "ریست ترافیک کاربران"
+"resetInboundClientTrafficTitle" = "ریست ترافیک کاربران"
+"resetInboundClientTrafficContent" = "آیا مطمئن به ریست ترافیک تمام کاربران این ورودی هستید؟"
+"resetAllClientTraffics" = "ریست ترافیک کل کاربران"
+"resetAllClientTrafficTitle" = "ریست ترافیک کل کاربران"
+"resetAllClientTrafficContent" = "آیا مطمئن به ریست ترافیک تمام کاربران هستید؟"
+"delDepletedClients" = "حذف کاربران منقضی"
+"delDepletedClientsTitle" = "حذف کاربران منقضی"
+"delDepletedClientsContent" = "آیا مطمئن به حذف تمام کاربران منقضیشده هستید؟"
+"email" = "ایمیل"
+"emailDesc" = "باید یک ایمیل یکتا باشد"
+"IPLimit" = "محدودیت آیپی"
+"IPLimitDesc" = "(اگر تعداد از مقدار تنظیم شده بیشتر شود، ورودی را غیرفعال می کند. (0 = غیرفعال"
+"IPLimitlog" = "گزارشها"
+"IPLimitlogDesc" = "گزارش تاریخچه آیپی. برای فعال کردن ورودی پس از غیرفعال شدن، گزارش را پاک کنید"
+"IPLimitlogclear" = "پاک کردن گزارشها"
+"setDefaultCert" = "استفاده از گواهی پنل"
+"xtlsDesc" = "ایکسری باید 1.7.5 باشد"
+"realityDesc" = "ایکسری باید +1.8.0 باشد"
+"telegramDesc" = "لطفا شناسه گفتگوی تلگرام را وارد کنید. (از دستور '/id' در ربات استفاده کنید) یا (@userinfobot)"
+"subscriptionDesc" = "شما میتوانید لینک سابسکربپشن خودرا در 'جزئیات' پیدا کنید، همچنین میتوانید از همین نام برای چندین کاربر استفادهکنید"
+"info" = "اطلاعات"
+"same" = "همسان"
+"inboundData" = "دادههای ورودی"
+"exportInbound" = "استخراج ورودی"
+"import" = "افزودن"
+"importInbound" = "افزودن یک ورودی"
+
+[pages.client]
+"add" = "کاربر جدید"
+"edit" = "ویرایش کاربر"
+"submitAdd" = "اضافه کردن"
+"submitEdit" = "ذخیره تغییرات"
+"clientCount" = "تعداد کاربران"
+"bulk" = "انبوهسازی"
+"method" = "روش"
+"first" = "از"
+"last" = "تا"
+"prefix" = "پیشوند"
+"postfix" = "پسوند"
+"delayedStart" = "شروعپسازاولیناستفاده"
+"expireDays" = "مدت زمان"
+"days" = "(روز)"
+"renew" = "تمدید خودکار"
+"renewDesc" = "(تمدید خودکار پساز انقضا. (0 = غیرفعال)(واحد: روز"
+
+[pages.inbounds.toasts]
+"obtain" = "فراهمسازی"
+
+[pages.inbounds.stream.general]
+"request" = "درخواست"
+"response" = "پاسخ"
+"name" = "نام"
+"value" = "مقدار"
+
+[pages.inbounds.stream.tcp]
+"version" = "نسخه"
+"method" = "متد"
+"path" = "مسیر"
+"status" = "وضعیت"
+"statusDescription" = "توضیحات وضعیت"
+"requestHeader" = "سربرگ درخواست"
+"responseHeader" = "سربرگ پاسخ"
+
+[pages.inbounds.stream.quic]
+"encryption" = "رمزنگاری"
+
+[pages.settings]
+"title" = "تنظیمات پنل"
+"save" = "ذخیره"
+"infoDesc" = "برای اعمال تغییرات در این بخش باید پس از ذخیره کردن، پنل را ریستارت کنید"
+"restartPanel" = "ریستارت پنل"
+"restartPanelDesc" = "آیا مطمئن به ریستارت پنل هستید؟ اگر پساز ریستارت نمیتوانید به پنل دسترسی پیدا کنید، لطفاً گزارشهای موجود در اسکریپت پنل را بررسی کنید"
+"actions" = "عملیات ها"
+"resetDefaultConfig" = "برگشت به پیشفرض"
+"panelSettings" = "پیکربندی"
+"securitySettings" = "احرازهویت"
+"TGBotSettings" = "ربات تلگرام"
+"panelListeningIP" = "آدرس آیپی"
+"panelListeningIPDesc" = "آدرس آیپی برای وب پنل. برای گوشدادن بهتمام آیپیها خالیبگذارید"
+"panelListeningDomain" = "نام دامنه"
+"panelListeningDomainDesc" = "آدرس دامنه برای وب پنل. برای گوش دادن بهتمام دامنهها و آیپیها خالیبگذارید"
+"panelPort" = "پورت"
+"panelPortDesc" = "شماره پورت برای وب پنل. باید پورت استفاده نشدهباشد"
+"publicKeyPath" = "مسیر کلید عمومی"
+"publicKeyPathDesc" = "مسیر فایل کلیدعمومی برای وب پنل. با '/' شروعمیشود"
+"privateKeyPath" = "مسیر کلید خصوصی"
+"privateKeyPathDesc" = "مسیر فایل کلیدخصوصی برای وب پنل. با '/' شروعمیشود"
+"panelUrlPath" = "URI مسیر"
+"panelUrlPathDesc" = "برای وب پنل. با '/' شروع و با '/' خاتمه مییابد URI مسیر"
+"pageSize" = "اندازه صفحه بندی جدول"
+"pageSizeDesc" = "(اندازه صفحه برای جدول ورودیها.(0 = غیرفعال"
+"remarkModel" = "نامکانفیگ و جداکننده"
+"datepicker" = "نوع تقویم"
+"datepickerPlaceholder" = "انتخاب تاریخ"
+"datepickerDescription" = "وظایف برنامه ریزی شده بر اساس این تقویم اجرا میشود"
+"sampleRemark" = "نمونهنام"
+"oldUsername" = "نامکاربری فعلی"
+"currentPassword" = "رمزعبور فعلی"
+"newUsername" = "نامکاربری جدید"
+"newPassword" = "رمزعبور جدید"
+"telegramBotEnable" = "فعالسازی ربات تلگرام"
+"telegramBotEnableDesc" = "ربات تلگرام را فعال میکند"
+"telegramToken" = "توکن تلگرام"
+"telegramTokenDesc" = "دریافت کنید @botfather توکن را میتوانید از"
+"telegramProxy" = "SOCKS پراکسی"
+"telegramProxyDesc" = "را برای اتصال به تلگرام فعال می کند SOCKS5 پراکسی"
+"telegramChatId" = "آیدی چت مدیر"
+"telegramChatIdDesc" = "دریافت کنید ('/id'یا (دستور (@userinfobot) آیدی(های) چت تلگرام مدیر، از"
+"telegramNotifyTime" = "زمان نوتیفیکیشن"
+"telegramNotifyTimeDesc" = "زماناطلاعرسانی ربات تلگرام برای گزارش های دورهای. از فرمت زمانبندی لینوکس استفادهکنید"
+"tgNotifyBackup" = "پشتیبانگیری از دیتابیس"
+"tgNotifyBackupDesc" = "فایل پشتیباندیتابیس را بههمراه گزارش ارسال میکند"
+"tgNotifyLogin" = "اعلان ورود"
+"tgNotifyLoginDesc" = "نامکاربری، آدرس آیپی، و زمان ورود، فردی که سعی میکند وارد پنل شود را نمایش میدهد"
+"sessionMaxAge" = "بیشینه زمان جلسه وب"
+"sessionMaxAgeDesc" = "(بیشینه زمانی که میتوانید لاگین بمانید. (واحد: دقیقه"
+"expireTimeDiff" = "آستانه زمان باقی مانده"
+"expireTimeDiffDesc" = "(فاصله زمانی هشدار تا رسیدن به زمان انقضا. (واحد: روز"
+"trafficDiff" = "آستانه ترافیک باقی مانده"
+"trafficDiffDesc" = "(فاصله زمانی هشدار تا رسیدن به اتمام ترافیک. (واحد: گیگابایت"
+"tgNotifyCpu" = "آستانه هشدار بار پردازنده"
+"tgNotifyCpuDesc" = "(اگر بار روی پردازنده ازاین آستانه فراتر رفت، برای شما پیام ارسال میشود. (واحد: درصد"
+"timeZone" = "منطقه زمانی"
+"timeZoneDesc" = "وظایف برنامه ریزی شده بر اساس این منطقهزمانی اجرا میشود"
+"subSettings" = "سابسکریپشن"
+"subEnable" = "فعالسازی سرویس سابسکریپشن"
+"subEnableDesc" = " سرویس سابسکریپشن را فعالمیکند"
+"subListen" = "آدرس آیپی"
+"subListenDesc" = "آدرس آیپی برای سرویس سابسکریپشن. برای گوش دادن بهتمام آیپیها خالیبگذارید"
+"subPort" = "پورت"
+"subPortDesc" = "شماره پورت برای سرویس سابسکریپشن. باید پورت استفاده نشدهباشد"
+"subCertPath" = "مسیر کلید عمومی"
+"subCertPathDesc" = "مسیر فایل کلیدعمومی برای سرویس سابیکریپشن. با '/' شروعمیشود"
+"subKeyPath" = "مسیر کلید خصوصی"
+"subKeyPathDesc" = "مسیر فایل کلیدخصوصی برای سرویس سابسکریپشن. با '/' شروعمیشود"
+"subPath" = "URI مسیر"
+"subPathDesc" = "برای سرویس سابسکریپشن. با '/' شروع و با '/' خاتمه مییابد URI مسیر"
+"subDomain" = "نام دامنه"
+"subDomainDesc" = "آدرس دامنه برای سرویس سابسکریپشن. برای گوش دادن به تمام دامنهها و آیپیها خالیبگذارید"
+"subUpdates" = "فاصله بروزرسانی سابسکریپشن"
+"subUpdatesDesc" = "(فاصله مابین بروزرسانی در برنامههای کاربری. (واحد: ساعت"
+"subEncrypt" = "کدگذاری"
+"subEncryptDesc" = "کدگذاری خواهدشد Base64 محتوای برگشتی سرویس سابسکریپشن برپایه"
+"subShowInfo" = "نمایش اطلاعات مصرف"
+"subShowInfoDesc" = "ترافیک و زمان باقیمانده را در برنامههای کاربری نمایش میدهد"
+"subURI" = "پروکسی معکوس URI مسیر"
+"subURIDesc" = "سابسکریپشن را برای استفاده در پشت پراکسیها تغییر میدهد URI مسیر"
+"fragment" = "فرگمنت"
+"fragmentDesc" = "فعال کردن فرگمنت برای بستهی نخست تیالاس"
+"fragmentSett" = "تنظیمات فرگمنت"
+"mux" = "ماکس"
+"muxDesc" = "چندین جریان داده مستقل را در یک جریان داده ثابت منتقل می کند"
+"muxSett" = "تنظیمات ماکس"
+"direct" = "اتصال مستقیم"
+"directDesc" = "به طور مستقیم با دامنه ها یا محدوده آیپی یک کشور خاص ارتباط برقرار می کند"
+"directSett" = "گزینه های اتصال مستقیم"
+
+[pages.xray]
+"title" = "پیکربندی ایکسری"
+"save" = "ذخیره"
+"restart" = "ریستارت ایکسری"
+"basicTemplate" = "پایه"
+"advancedTemplate" = "پیشرفته"
+"generalConfigs" = "استراتژی کلی"
+"generalConfigsDesc" = "این گزینهها استراتژی کلی ترافیک را تعیین میکنند"
+"logConfigs" = "گزارش"
+"logConfigsDesc" = "گزارشها ممکن است بر کارایی سرور شما تأثیر بگذارد. توصیه می شود فقط در صورت نیاز آن را عاقلانه فعال کنید"
+"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" = "ترافیک را از طریق وارپ به نتفلیکس هدایت میکند"
+"MetaWARP" = "متا"
+"MetaWARPDesc" = "ترافیک را از طریق وارپ به متا (اینستاگرام، فیس بوک، واتساپ، تردز و...) هدایت می کند."
+"AppleWARP" = "اپل"
+"AppleWARPDesc" = " ترافیک را از طریق وارپ به اپل هدایت میکند"
+"RedditWARP" = "ردیت"
+"RedditWARPDesc" = " ترافیک را از طریق وارپ به ردیت هدایت میکند"
+"SpotifyWARP" = "اسپاتیفای"
+"SpotifyWARPDesc" = " ترافیک را از طریق وارپ به اسپاتیفای هدایت میکند"
+"IRWARP" = "دامنههای ایران"
+"IRWARPDesc" = "ترافیک را از طریق وارپ به دامنههای کشور ایران هدایت میکند"
+"Inbounds" = "ورودیها"
+"InboundsDesc" = "پذیرش کلاینت خاص"
+"Outbounds" = "خروجیها"
+"Balancers" = "بالانسرها"
+"OutboundsDesc" = "مسیر ترافیک خروجی را تنظیم کنید"
+"Routings" = "قوانین مسیریابی"
+"RoutingsDesc" = "اولویت هر قانون مهم است"
+"completeTemplate" = "کامل"
+"logLevel" = "سطح گزارش"
+"logLevelDesc" = "سطح گزارش برای گزارش های خطا، نشان دهنده اطلاعاتی است که باید ثبت شوند."
+"accessLog" = "مسیر گزارش"
+"accessLogDesc" = "مسیر فایل برای گزارش دسترسی. مقدار ویژه «هیچ» گزارشهای دسترسی را غیرفعال میکند."
+"errorLog" = "گزارش خطا"
+"errorLogDesc" = "مسیر فایل برای ورود به سیستم خطا. مقدار ویژه «هیچ» گزارش های خطا را غیرفعال میکند"
+
+[pages.xray.rules]
+"first" = "اولین"
+"last" = "آخرین"
+"up" = "بالا"
+"down" = "پایین"
+"source" = "مبدا"
+"dest" = "مقصد"
+"inbound" = "ورودی"
+"outbound" = "خروجی"
+"balancer" = "بالانسر"
+"info" = "اطلاعات"
+"add" = "افزودن قانون"
+"edit" = "ویرایش قانون"
+"useComma" = "موارد جدا شده با کاما"
+
+[pages.xray.outbound]
+"addOutbound" = "افزودن خروجی"
+"addReverse" = "افزودن معکوس"
+"editOutbound" = "ویرایش خروجی"
+"editReverse" = "ویرایش معکوس"
+"tag" = "برچسب"
+"tagDesc" = "برچسب یگانه"
+"address" = "آدرس"
+"reverse" = "معکوس"
+"domain" = "دامنه"
+"type" = "نوع"
+"bridge" = "پل"
+"portal" = "پورتال"
+"intercon" = "اتصال میانی"
+"settings" = "تنظیمات"
+"accountInfo" = "اطلاعات حساب"
+"outboundStatus" = "وضعیت خروجی"
+"sendThrough" = "ارسال با"
+
+[pages.xray.balancer]
+"addBalancer" = "افزودن بالانسر"
+"editBalancer" = "ویرایش بالانسر"
+"balancerStrategy" = "استراتژی"
+"balancerSelectors" = "انتخابگرها"
+"tag" = "برچسب"
+"tagDesc" = "برچسب یگانه"
+"balancerDesc" = "امکان استفاده همزمان balancerTag و outboundTag باهم وجود ندارد. درصورت استفاده همزمان فقط outboundTag عمل خواهد کرد."
+
+[pages.xray.wireguard]
+"secretKey" = "کلید شخصی"
+"publicKey" = "کلید عمومی"
+"allowedIPs" = "آیپیهای مجاز"
+"endpoint" = "نقطه پایانی"
+"psk" = "کلید مشترک"
+"domainStrategy" = "استراتژی حل دامنه"
+
+[pages.xray.dns]
+"enable" = "فعال کردن حل دامنه"
+"enableDesc" = "سرور حل دامنه داخلی را فعال کنید"
+"tag" = "برچسب"
+"tagDesc" = "این برچسب در قوانین مسیریابی به عنوان یک برچسب ورودی قابل استفاده خواهد بود"
+"strategy" = "استراتژی پرسوجو"
+"strategyDesc" = "استراتژی کلی برای حل نام دامنه"
+"add" = "افزودن سرور"
+"edit" = "ویرایش سرور"
+"domains" = "دامنهها"
+
+[pages.xray.fakedns]
+"add" = "افزودن دیاناس جعلی"
+"edit" = "ویرایش دیاناس جعلی"
+"ipPool" = "زیرشبکه استخر آیپی"
+"poolSize" = "اندازه استخر"
+
+[pages.settings.security]
+"admin" = "مدیر"
+"secret" = "توکن مخفی"
+"loginSecurity" = "ورود ایمن"
+"loginSecurityDesc" = "یک لایه اضافی از احراز هویت برای ایجاد امنیت بیشتر اضافه می کند"
+"secretToken" = "توکن مخفی"
+"secretTokenDesc" = "لطفاً این توکن را در مکانی امن ذخیره کنید. این توکن برای ورود به سیستم مورد نیاز است و قابل بازیابی نیست"
+
+[pages.settings.toasts]
+"modifySettings" = "ویرایش تنظیمات"
+"getSettings" = "دریافت تنظیمات"
+"modifyUser" = "ویرایش مدیر"
+"originalUserPassIncorrect" = "نامکاربری یا رمزعبور فعلی اشتباهاست"
+"userPassMustBeNotEmpty" = "نامکاربری یا رمزعبور جدید خالیاست"
+
+[tgbot]
+"keyboardClosed" = "❌ کیبورد سفارشی بسته شد!"
+"noResult" = "❗ نتیجهای یافت نشد!"
+"noQuery" = "❌ کوئری یافت نشد! لطفاً دستور را مجدداً استفاده کنید!"
+"wentWrong" = "❌ مشکلی رخ داده است!"
+"noIpRecord" = "❗ رکورد IP یافت نشد!"
+"noInbounds" = "❗ هیچ ورودی یافت نشد!"
+"unlimited" = "♾ - نامحدود(ریست)"
+"add" = "اضافه کردن"
+"month" = "ماه"
+"months" = "ماهها"
+"day" = "روز"
+"days" = "روزها"
+"hours" = "ساعتها"
+"unknown" = "نامشخص"
+"inbounds" = "ورودیها"
+"clients" = "کلاینتها"
+"offline" = "🔴 آفلاین"
+"online" = "🟢 آنلاین"
+
+[tgbot.commands]
+"unknown" = "❗ دستور ناشناخته"
+"pleaseChoose" = "👇 لطفاً انتخاب کنید:\r\n"
+"help" = "🤖 به این ربات خوش آمدید! این ربات برای ارائه دادههای خاص از سرور طراحی شده است و به شما امکان تغییرات لازم را میدهد.\r\n\r\n"
+"start" = "👋 سلام {{ .Firstname }}.\r\n"
+"welcome" = "🤖 به ربات مدیریت {{ .Hostname }} خوش آمدید.\r\n"
+"status" = "✅ ربات در حالت عادی است!"
+"usage" = "❗ لطفاً یک متن برای جستجو وارد کنید!"
+"getID" = "🆔 شناسه شما: {{ .ID }}
"
+"helpAdminCommands" = "برای جستجوی ایمیل مشتری:\r\n/usage [ایمیل]
\r\n\r\nبرای جستجوی ورودیها (با آمار مشتری):\r\n/inbound [توضیحات]
\r\n\r\nشناسه گفتگوی تلگرام:\r\n/id
"
+"helpClientCommands" = "برای جستجوی آمار، از دستور زیر استفاده کنید:\r\n/usage [ایمیل]
\r\n\r\nشناسه گفتگوی تلگرام:\r\n/id
"
+
+[tgbot.messages]
+"cpuThreshold" = "🔴 بار پردازنده {{ .Percent }}% بیشتر از آستانه است {{ .Threshold }}%"
+"selectUserFailed" = "❌ خطا در انتخاب کاربر!"
+"userSaved" = "✅ کاربر تلگرام ذخیره شد."
+"loginSuccess" = "✅ با موفقیت به پنل وارد شدید.\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 }}\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" = "ℹ️ وضعیتایکسری: {{ .State }}\r\n"
+"username" = "👤 نامکاربری: {{ .Username }}\r\n"
+"time" = "⏰ زمان: {{ .Time }}\r\n"
+"inbound" = "📍 نامورودی: {{ .Remark }}\r\n"
+"port" = "🔌 پورت: {{ .Port }}\r\n"
+"expire" = "📅 تاریخانقضا: {{ .Time }}\r\n\r\n"
+"expireIn" = "📅 باقیماندهتاانقضا: {{ .Time }}\r\n\r\n"
+"active" = "💡 فعال: {{ .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"
+"TGUser" = "👤 کاربر تلگرام: {{ .TelegramID }}\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"
+"refreshedOn" = "\r\n📋🔄 تازهسازی شده در: {{ .Time }}\r\n\r\n"
+"yes" = "✅ بله"
+"no" = "❌ خیر"
+
+[tgbot.buttons]
+"closeKeyboard" = "❌ بستن کیبورد"
+"cancel" = "❌ لغو"
+"cancelReset" = "❌ لغو تنظیم مجدد"
+"cancelIpLimit" = "❌ لغو محدودیت آیپی"
+"confirmResetTraffic" = "✅ تأیید تنظیم مجدد ترافیک؟"
+"confirmClearIps" = "✅ تأیید پاکسازی آدرسهای آیپی؟"
+"confirmRemoveTGUser" = "✅ تأیید حذف کاربر تلگرام؟"
+"confirmToggle" = "✅ تایید فعال/غیرفعال کردن کاربر؟"
+"dbBackup" = "دریافت پشتیبان"
+"serverUsage" = "استفاده از سیستم"
+"getInbounds" = "دریافت ورودیها"
+"depleteSoon" = "بهزودی به پایان خواهد رسید"
+"clientUsage" = "دریافت آمار کاربر"
+"onlines" = "کاربران آنلاین"
+"commands" = "دستورات"
+"refresh" = "🔄 تازهسازی"
+"clearIPs" = "❌ پاکسازی آدرسها"
+"removeTGUser" = "❌ حذف کاربر تلگرام"
+"selectTGUser" = "👤 انتخاب کاربر تلگرام"
+"selectOneTGUser" = "👤 یک کاربر تلگرام را انتخاب کنید:"
+"resetTraffic" = "📈 تنظیم مجدد ترافیک"
+"resetExpire" = "📅 تنظیم مجدد تاریخ انقضا"
+"ipLog" = "🔢 لاگ آدرسهای IP"
+"ipLimit" = "🔢 محدودیت IP"
+"setTGUser" = "👤 تنظیم کاربر تلگرام"
+"toggle" = "🔘 فعال / غیرفعال"
+"custom" = "🔢 سفارشی"
+"confirmNumber" = "✅ تایید: {{ .Num }}"
+"confirmNumberAdd" = "✅ تایید اضافه کردن: {{ .Num }}"
+"limitTraffic" = "🚧 محدودیت ترافیک"
+"getBanLogs" = "گزارش های بلوک را دریافت کنید"
+
+[tgbot.answers]
+"successfulOperation" = "✅ انجام شد!"
+"errorOperation" = "❗ خطا در عملیات."
+"getInboundsFailed" = "❌ دریافت ورودیها با خطا مواجه شد."
+"canceled" = "❌ {{ .Email }} : عملیات لغو شد."
+"clientRefreshSuccess" = "✅ {{ .Email }} : کلاینت با موفقیت تازهسازی شد."
+"IpRefreshSuccess" = "✅ {{ .Email }} : آدرسها با موفقیت تازهسازی شدند."
+"TGIdRefreshSuccess" = "✅ {{ .Email }} : کاربر تلگرام کلاینت با موفقیت تازهسازی شد."
+"resetTrafficSuccess" = "✅ {{ .Email }} : ترافیک با موفقیت تنظیم مجدد شد."
+"setTrafficLimitSuccess" = "✅ {{ .Email }} : محدودیت ترافیک با موفقیت ذخیره شد."
+"expireResetSuccess" = "✅ {{ .Email }} : تاریخ انقضا با موفقیت تنظیم مجدد شد."
+"resetIpSuccess" = "✅ {{ .Email }} : محدودیت آدرس IP {{ .Count }} با موفقیت ذخیره شد."
+"clearIpSuccess" = "✅ {{ .Email }} : آدرسها با موفقیت پاکسازی شدند."
+"getIpLog" = "✅ {{ .Email }} : دریافت لاگ آدرسهای IP."
+"getUserInfo" = "✅ {{ .Email }} : دریافت اطلاعات کاربر تلگرام."
+"removedTGUserSuccess" = "✅ {{ .Email }} : کاربر تلگرام با موفقیت حذف شد."
+"enableSuccess" = "✅ {{ .Email }} : با موفقیت فعال شد."
+"disableSuccess" = "✅ {{ .Email }} : با موفقیت غیرفعال شد."
+"askToAddUserId" = "پیکربندی شما یافت نشد!\r\nلطفاً از مدیر خود بخواهید که شناسه کاربر تلگرام خود را در پیکربندی (های) خود استفاده کند.\r\n\r\nشناسه کاربری شما: {{ .TgUserID }}
"
diff --git a/translate.id_ID.toml b/translate.id_ID.toml
new file mode 100644
index 00000000..31469392
--- /dev/null
+++ b/translate.id_ID.toml
@@ -0,0 +1,638 @@
+"username" = "Nama Pengguna"
+"password" = "Kata Sandi"
+"login" = "Masuk"
+"confirm" = "Konfirmasi"
+"cancel" = "Batal"
+"close" = "Tutup"
+"copy" = "Salin"
+"copied" = "Tersalin"
+"download" = "Unduh"
+"remark" = "Catatan"
+"enable" = "Aktifkan"
+"protocol" = "Protokol"
+"search" = "Cari"
+"filter" = "Filter"
+"loading" = "Memuat..."
+"second" = "Detik"
+"minute" = "Menit"
+"hour" = "Jam"
+"day" = "Hari"
+"check" = "Centang"
+"indefinite" = "Tak Terbatas"
+"unlimited" = "Tanpa Batas"
+"none" = "None"
+"qrCode" = "Kode QR"
+"info" = "Informasi Lebih Lanjut"
+"edit" = "Edit"
+"delete" = "Hapus"
+"reset" = "Reset"
+"copySuccess" = "Berhasil Disalin"
+"sure" = "Yakin"
+"encryption" = "Enkripsi"
+"transmission" = "Transmisi"
+"host" = "Host"
+"path" = "Jalur"
+"camouflage" = "Obfuscation"
+"status" = "Status"
+"enabled" = "Aktif"
+"disabled" = "Nonaktif"
+"depleted" = "Habis"
+"depletingSoon" = "Akan Habis"
+"offline" = "Offline"
+"online" = "Online"
+"domainName" = "Nama Domain"
+"monitor" = "IP Pemantauan"
+"certificate" = "Sertifikat Digital"
+"fail" = "Gagal"
+"success" = "Berhasil"
+"getVersion" = "Dapatkan Versi"
+"install" = "Instal"
+"clients" = "Klien"
+"usage" = "Penggunaan"
+"secretToken" = "Token Rahasia"
+"remained" = "Tersisa"
+"security" = "Keamanan"
+"secAlertTitle" = "Peringatan keamanan"
+"secAlertSsl" = "Koneksi ini tidak aman. Harap hindari memasukkan informasi sensitif sampai TLS diaktifkan untuk perlindungan data."
+"secAlertConf" = "Beberapa pengaturan rentan terhadap serangan. Disarankan untuk memperkuat protokol keamanan guna mencegah pelanggaran potensial."
+"secAlertSSL" = "Panel kekurangan koneksi yang aman. Harap instal sertifikat TLS untuk perlindungan data."
+"secAlertPanelPort" = "Port default panel rentan. Harap konfigurasi port acak atau tertentu."
+"secAlertPanelURI" = "Jalur URI default panel tidak aman. Harap konfigurasi jalur URI kompleks."
+"secAlertSubURI" = "Jalur URI default langganan tidak aman. Harap konfigurasi jalur URI kompleks."
+"secAlertSubJsonURI" = "Jalur URI default JSON langganan tidak aman. Harap konfigurasikan jalur URI kompleks."
+
+[menu]
+"dashboard" = "Ikhtisar"
+"inbounds" = "Masuk"
+"settings" = "Pengaturan Panel"
+"xray" = "Konfigurasi Xray"
+"logout" = "Keluar"
+"link" = "Kelola"
+
+[pages.login]
+"hello" = "Halo"
+"title" = "Selamat Datang"
+"loginAgain" = "Sesi Anda telah berakhir, harap masuk kembali"
+
+[pages.login.toasts]
+"invalidFormData" = "Format data input tidak valid."
+"emptyUsername" = "Nama Pengguna diperlukan"
+"emptyPassword" = "Kata Sandi diperlukan"
+"wrongUsernameOrPassword" = "Nama pengguna atau kata sandi tidak valid."
+"successLogin" = "Login berhasil"
+
+[pages.index]
+"title" = "Ikhtisar"
+"memory" = "RAM"
+"hard" = "Disk"
+"xrayStatus" = "Xray"
+"stopXray" = "Stop"
+"restartXray" = "Restart"
+"xraySwitch" = "Versi"
+"xraySwitchClick" = "Pilih versi yang ingin Anda pindah."
+"xraySwitchClickDesk" = "Pilih dengan hati-hati, karena versi yang lebih lama mungkin tidak kompatibel dengan konfigurasi saat ini."
+"operationHours" = "Waktu Aktif"
+"systemLoad" = "Beban Sistem"
+"systemLoadDesc" = "Rata-rata beban sistem selama 1, 5, dan 15 menit terakhir"
+"connectionTcpCountDesc" = "Total koneksi TCP di seluruh sistem"
+"connectionUdpCountDesc" = "Total koneksi UDP di seluruh sistem"
+"connectionCount" = "Statistik Koneksi"
+"upSpeed" = "Kecepatan unggah keseluruhan di seluruh sistem"
+"downSpeed" = "Kecepatan unduh keseluruhan di seluruh sistem"
+"totalSent" = "Total data terkirim di seluruh sistem sejak startup OS"
+"totalReceive" = "Total data diterima di seluruh sistem sejak startup OS"
+"xraySwitchVersionDialog" = "Ganti Versi Xray"
+"xraySwitchVersionDialogDesc" = "Apakah Anda yakin ingin mengubah versi Xray menjadi"
+"dontRefresh" = "Instalasi sedang berlangsung, harap jangan menyegarkan halaman ini"
+"logs" = "Log"
+"config" = "Konfigurasi"
+"backup" = "Cadangan & Pulihkan"
+"backupTitle" = "Cadangan & Pulihkan Database"
+"backupDescription" = "Disarankan untuk membuat cadangan sebelum memulihkan database."
+"exportDatabase" = "Cadangkan"
+"importDatabase" = "Pulihkan"
+
+[pages.inbounds]
+"title" = "Masuk"
+"totalDownUp" = "Total Terkirim/Diterima"
+"totalUsage" = "Penggunaan Total"
+"inboundCount" = "Total Masuk"
+"operate" = "Menu"
+"enable" = "Aktifkan"
+"remark" = "Catatan"
+"protocol" = "Protokol"
+"port" = "Port"
+"traffic" = "Traffic"
+"details" = "Rincian"
+"transportConfig" = "Transport"
+"expireDate" = "Durasi"
+"resetTraffic" = "Reset Traffic"
+"addInbound" = "Tambahkan Masuk"
+"generalActions" = "Tindakan Umum"
+"create" = "Buat"
+"update" = "Perbarui"
+"modifyInbound" = "Ubah Masuk"
+"deleteInbound" = "Hapus Masuk"
+"deleteInboundContent" = "Apakah Anda yakin ingin menghapus masuk?"
+"deleteClient" = "Hapus Klien"
+"deleteClientContent" = "Apakah Anda yakin ingin menghapus klien?"
+"resetTrafficContent" = "Apakah Anda yakin ingin mereset traffic?"
+"copyLink" = "Salin URL"
+"address" = "Alamat"
+"network" = "Jaringan"
+"destinationPort" = "Port Tujuan"
+"targetAddress" = "Alamat Target"
+"monitorDesc" = "Biarkan kosong untuk mendengarkan semua IP"
+"meansNoLimit" = " = Unlimited. (unit: GB)"
+"totalFlow" = "Total Aliran"
+"leaveBlankToNeverExpire" = "Biarkan kosong untuk tidak pernah kedaluwarsa"
+"noRecommendKeepDefault" = "Disarankan untuk tetap menggunakan pengaturan default"
+"certificatePath" = "Path Berkas"
+"certificateContent" = "Konten Berkas"
+"publicKey" = "Kunci Publik"
+"privatekey" = "Kunci Pribadi"
+"clickOnQRcode" = "Klik pada Kode QR untuk Menyalin"
+"client" = "Klien"
+"export" = "Ekspor Semua URL"
+"clone" = "Duplikat"
+"cloneInbound" = "Duplikat"
+"cloneInboundContent" = "Semua pengaturan masuk ini, kecuali Port, Listening IP, dan Klien, akan diterapkan pada duplikat."
+"cloneInboundOk" = "Duplikat"
+"resetAllTraffic" = "Reset Semua Traffic Masuk"
+"resetAllTrafficTitle" = "Reset Semua Traffic Masuk"
+"resetAllTrafficContent" = "Apakah Anda yakin ingin mereset traffic semua masuk?"
+"resetInboundClientTraffics" = "Reset Traffic Klien Masuk"
+"resetInboundClientTrafficTitle" = "Reset Traffic Klien Masuk"
+"resetInboundClientTrafficContent" = "Apakah Anda yakin ingin mereset traffic klien masuk ini?"
+"resetAllClientTraffics" = "Reset Traffic Semua Klien"
+"resetAllClientTrafficTitle" = "Reset Traffic Semua Klien"
+"resetAllClientTrafficContent" = "Apakah Anda yakin ingin mereset traffic semua klien?"
+"delDepletedClients" = "Hapus Klien Habis"
+"delDepletedClientsTitle" = "Hapus Klien Habis"
+"delDepletedClientsContent" = "Apakah Anda yakin ingin menghapus semua klien yang habis?"
+"email" = "Email"
+"emailDesc" = "Harap berikan alamat email yang unik."
+"IPLimit" = "Batas IP"
+"IPLimitDesc" = "Menonaktifkan masuk jika jumlah melebihi nilai yang ditetapkan. (0 = nonaktif)"
+"IPLimitlog" = "Log IP"
+"IPLimitlogDesc" = "Log histori IP. (untuk mengaktifkan masuk setelah menonaktifkan, hapus log)"
+"IPLimitlogclear" = "Hapus Log"
+"setDefaultCert" = "Atur Sertifikat dari Panel"
+"xtlsDesc" = "Xray harus versi 1.7.5"
+"realityDesc" = "Xray harus versi 1.8.0+"
+"telegramDesc" = "Harap berikan ID Obrolan Telegram. (gunakan perintah '/id' di bot) atau (@userinfobot)"
+"subscriptionDesc" = "Untuk menemukan URL langganan Anda, buka 'Rincian'. Selain itu, Anda dapat menggunakan nama yang sama untuk beberapa klien."
+"info" = "Info"
+"same" = "Sama"
+"inboundData" = "Data Masuk"
+"exportInbound" = "Ekspor Masuk"
+"import" = "Impor"
+"importInbound" = "Impor Masuk"
+
+[pages.client]
+"add" = "Tambah Klien"
+"edit" = "Edit Klien"
+"submitAdd" = "Tambah Klien"
+"submitEdit" = "Simpan Perubahan"
+"clientCount" = "Jumlah Klien"
+"bulk" = "Tambahkan Massal"
+"method" = "Metode"
+"first" = "Pertama"
+"last" = "Terakhir"
+"prefix" = "Awalan"
+"postfix" = "Akhiran"
+"delayedStart" = "Mulai Awal"
+"expireDays" = "Durasi"
+"days" = "Hari"
+"renew" = "Perpanjang Otomatis"
+"renewDesc" = "Perpanjangan otomatis setelah kedaluwarsa. (0 = nonaktif)(unit: hari)"
+
+[pages.inbounds.toasts]
+"obtain" = "Dapatkan"
+
+[pages.inbounds.stream.general]
+"request" = "Permintaan"
+"response" = "Respons"
+"name" = "Nama"
+"value" = "Nilai"
+
+[pages.inbounds.stream.tcp]
+"version" = "Versi"
+"method" = "Metode"
+"path" = "Path"
+"status" = "Status"
+"statusDescription" = "Deskripsi Status"
+"requestHeader" = "Header Permintaan"
+"responseHeader" = "Header Respons"
+
+[pages.inbounds.stream.quic]
+"encryption" = "Enkripsi"
+
+[pages.settings]
+"title" = "Pengaturan Panel"
+"save" = "Simpan"
+"infoDesc" = "Setiap perubahan yang dibuat di sini perlu disimpan. Harap restart panel untuk menerapkan perubahan."
+"restartPanel" = "Restart Panel"
+"restartPanelDesc" = "Apakah Anda yakin ingin merestart panel? Jika Anda tidak dapat mengakses panel setelah merestart, lihat info log panel di server."
+"actions" = "Tindakan"
+"resetDefaultConfig" = "Reset ke Default"
+"panelSettings" = "Umum"
+"securitySettings" = "Otentikasi"
+"TGBotSettings" = "Bot Telegram"
+"panelListeningIP" = "IP Pendengar"
+"panelListeningIPDesc" = "Alamat IP untuk panel web. (biarkan kosong untuk mendengarkan semua IP)"
+"panelListeningDomain" = "Domain Pendengar"
+"panelListeningDomainDesc" = "Nama domain untuk panel web. (biarkan kosong untuk mendengarkan semua domain dan IP)"
+"panelPort" = "Port Pendengar"
+"panelPortDesc" = "Nomor port untuk panel web. (harus menjadi port yang tidak digunakan)"
+"publicKeyPath" = "Path Kunci Publik"
+"publicKeyPathDesc" = "Path berkas kunci publik untuk panel web. (dimulai dengan ‘/‘)"
+"privateKeyPath" = "Path Kunci Privat"
+"privateKeyPathDesc" = "Path berkas kunci privat untuk panel web. (dimulai dengan ‘/‘)"
+"panelUrlPath" = "URI Path"
+"panelUrlPathDesc" = "URI path untuk panel web. (dimulai dengan ‘/‘ dan diakhiri dengan ‘/‘)"
+"pageSize" = "Ukuran Halaman"
+"pageSizeDesc" = "Tentukan ukuran halaman untuk tabel masuk. (0 = nonaktif)"
+"remarkModel" = "Model Catatan & Karakter Pemisah"
+"datepicker" = "Jenis Kalender"
+"datepickerPlaceholder" = "Pilih tanggal"
+"datepickerDescription" = "Tugas terjadwal akan berjalan berdasarkan kalender ini."
+"sampleRemark" = "Contoh Catatan"
+"oldUsername" = "Username Saat Ini"
+"currentPassword" = "Kata Sandi Saat Ini"
+"newUsername" = "Username Baru"
+"newPassword" = "Kata Sandi Baru"
+"telegramBotEnable" = "Aktifkan Bot Telegram"
+"telegramBotEnableDesc" = "Mengaktifkan bot Telegram."
+"telegramToken" = "Token Telegram"
+"telegramTokenDesc" = "Token bot Telegram yang diperoleh dari '@BotFather'."
+"telegramProxy" = "Proxy SOCKS"
+"telegramProxyDesc" = "Mengaktifkan proxy SOCKS5 untuk terhubung ke Telegram. (sesuaikan pengaturan sesuai panduan)"
+"telegramChatId" = "ID Obrolan Admin"
+"telegramChatIdDesc" = "ID Obrolan Admin Telegram. (dipisahkan koma)(dapatkan di sini @userinfobot) atau (gunakan perintah '/id' di bot)"
+"telegramNotifyTime" = "Waktu Notifikasi"
+"telegramNotifyTimeDesc" = "Waktu notifikasi bot Telegram yang diatur untuk laporan berkala. (gunakan format waktu crontab)"
+"tgNotifyBackup" = "Cadangan Database"
+"tgNotifyBackupDesc" = "Kirim berkas cadangan database dengan laporan."
+"tgNotifyLogin" = "Notifikasi Login"
+"tgNotifyLoginDesc" = "Dapatkan notifikasi tentang username, alamat IP, dan waktu setiap kali seseorang mencoba masuk ke panel web Anda."
+"sessionMaxAge" = "Durasi Sesi"
+"sessionMaxAgeDesc" = "Durasi di mana Anda dapat tetap masuk. (unit: menit)"
+"expireTimeDiff" = "Notifikasi Tanggal Kedaluwarsa"
+"expireTimeDiffDesc" = "Dapatkan notifikasi tentang tanggal kedaluwarsa saat mencapai ambang batas ini. (unit: hari)"
+"trafficDiff" = "Notifikasi Batas Traffic"
+"trafficDiffDesc" = "Dapatkan notifikasi tentang batas traffic saat mencapai ambang batas ini. (unit: GB)"
+"tgNotifyCpu" = "Notifikasi Beban CPU"
+"tgNotifyCpuDesc" = "Dapatkan notifikasi jika beban CPU melebihi ambang batas ini. (unit: %)"
+"timeZone" = "Zone Waktu"
+"timeZoneDesc" = "Tugas terjadwal akan berjalan berdasarkan zona waktu ini."
+"subSettings" = "Langganan"
+"subEnable" = "Aktifkan Layanan Langganan"
+"subEnableDesc" = "Mengaktifkan layanan langganan."
+"subListen" = "IP Pendengar"
+"subListenDesc" = "Alamat IP untuk layanan langganan. (biarkan kosong untuk mendengarkan semua IP)"
+"subPort" = "Port Pendengar"
+"subPortDesc" = "Nomor port untuk layanan langganan. (harus menjadi port yang tidak digunakan)"
+"subCertPath" = "Path Kunci Publik"
+"subCertPathDesc" = "Path berkas kunci publik untuk layanan langganan. (dimulai dengan ‘/‘)"
+"subKeyPath" = "Path Kunci Privat"
+"subKeyPathDesc" = "Path berkas kunci privat untuk layanan langganan. (dimulai dengan ‘/‘)"
+"subPath" = "URI Path"
+"subPathDesc" = "URI path untuk layanan langganan. (dimulai dengan ‘/‘ dan diakhiri dengan ‘/‘)"
+"subDomain" = "Domain Pendengar"
+"subDomainDesc" = "Nama domain untuk layanan langganan. (biarkan kosong untuk mendengarkan semua domain dan IP)"
+"subUpdates" = "Interval Pembaruan"
+"subUpdatesDesc" = "Interval pembaruan URL langganan dalam aplikasi klien. (unit: jam)"
+"subEncrypt" = "Encode"
+"subEncryptDesc" = "Konten yang dikembalikan dari layanan langganan akan dienkripsi Base64."
+"subShowInfo" = "Tampilkan Info Penggunaan"
+"subShowInfoDesc" = "Sisa traffic dan tanggal akan ditampilkan di aplikasi klien."
+"subURI" = "URI Proxy Terbalik"
+"subURIDesc" = "URI path URL langganan untuk penggunaan di belakang proxy."
+"fragment" = "Fragmentasi"
+"fragmentDesc" = "Aktifkan fragmentasi untuk paket hello TLS"
+"fragmentSett" = "Pengaturan Fragmentasi"
+"mux" = "Mux"
+"muxDesc" = "Mengirimkan beberapa aliran data independen dalam aliran data yang sudah ada."
+"muxSett" = "Pengaturan Mux"
+"direct" = "Koneksi langsung"
+"directDesc" = "Secara langsung membuat koneksi dengan domain atau rentang IP negara tertentu."
+"directSett" = "Opsi Koneksi Langsung"
+
+[pages.xray]
+"title" = "Konfigurasi Xray"
+"save" = "Simpan"
+"restart" = "Restart Xray"
+"basicTemplate" = "Dasar"
+"advancedTemplate" = "Lanjutan"
+"generalConfigs" = "Strategi Umum"
+"generalConfigsDesc" = "Opsi ini akan menentukan penyesuaian strategi umum."
+"logConfigs" = "Catatan"
+"logConfigsDesc" = "Log dapat mempengaruhi efisiensi server Anda. Disarankan untuk mengaktifkannya dengan bijak hanya jika diperlukan"
+"blockConfigs" = "Pelindung"
+"blockConfigsDesc" = "Opsi ini akan memblokir lalu lintas berdasarkan protokol dan situs web yang diminta."
+"blockCountryConfigs" = "Blokir Negara"
+"blockCountryConfigsDesc" = "Opsi ini akan memblokir lalu lintas berdasarkan negara yang diminta."
+"directCountryConfigs" = "Langsung ke Negara"
+"directCountryConfigsDesc" = "Koneksi langsung memastikan bahwa lalu lintas tertentu tidak diarahkan melalui server lain."
+"ipv4Configs" = "Pengalihan IPv4"
+"ipv4ConfigsDesc" = "Opsi ini akan mengalihkan lalu lintas berdasarkan tujuan tertentu melalui IPv4."
+"warpConfigs" = "Pengalihan WARP"
+"warpConfigsDesc" = "Opsi ini akan mengalihkan lalu lintas berdasarkan tujuan tertentu melalui WARP."
+"Template" = "Template Konfigurasi Xray Lanjutan"
+"TemplateDesc" = "File konfigurasi Xray akhir akan dibuat berdasarkan template ini."
+"FreedomStrategy" = "Strategi Protokol Freedom"
+"FreedomStrategyDesc" = "Atur strategi output untuk jaringan dalam Protokol Freedom."
+"RoutingStrategy" = "Strategi Pengalihan Keseluruhan"
+"RoutingStrategyDesc" = "Atur strategi pengalihan lalu lintas keseluruhan untuk menyelesaikan semua permintaan."
+"Torrent" = "Blokir Protokol BitTorrent"
+"TorrentDesc" = "Memblokir protokol BitTorrent."
+"PrivateIp" = "Blokir Koneksi ke IP Pribadi"
+"PrivateIpDesc" = "Memblokir pembentukan koneksi ke rentang IP pribadi."
+"Ads" = "Blokir Iklan"
+"AdsDesc" = "Memblokir situs web periklanan."
+"Family" = "Proteksi Keluarga"
+"FamilyDesc" = "Memblokir konten dewasa dan situs web berbahaya."
+"Security" = "Pelindung Keamanan"
+"SecurityDesc" = "Memblokir situs web malware, phishing, dan penambang kripto."
+"Speedtest" = "Blokir Speedtest"
+"SpeedtestDesc" = "Memblokir pembentukan koneksi ke situs web speedtest."
+"IRIp" = "Blokir Koneksi ke IP Iran"
+"IRIpDesc" = "Memblokir pembentukan koneksi ke rentang IP Iran."
+"IRDomain" = "Blokir Koneksi ke Domain Iran"
+"IRDomainDesc" = "Memblokir pembentukan koneksi ke domain Iran."
+"ChinaIp" = "Blokir Koneksi ke IP China"
+"ChinaIpDesc" = "Memblokir pembentukan koneksi ke rentang IP China."
+"ChinaDomain" = "Blokir Koneksi ke Domain China"
+"ChinaDomainDesc" = "Memblokir pembentukan koneksi ke domain China."
+"RussiaIp" = "Blokir Koneksi ke IP Rusia"
+"RussiaIpDesc" = "Memblokir pembentukan koneksi ke rentang IP Rusia."
+"RussiaDomain" = "Blokir Koneksi ke Domain Rusia"
+"RussiaDomainDesc" = "Memblokir pembentukan koneksi ke domain Rusia."
+"VNIp" = "Blokir Koneksi ke IP Vietnam"
+"VNIpDesc" = "Memblokir pembentukan koneksi ke rentang IP Vietnam."
+"VNDomain" = "Blokir Koneksi ke Domain Vietnam"
+"VNDomainDesc" = "Memblokir pembentukan koneksi ke domain Vietnam."
+"DirectIRIp" = "Koneksi Langsung ke IP Iran"
+"DirectIRIpDesc" = "Membentuk koneksi langsung ke rentang IP Iran."
+"DirectIRDomain" = "Koneksi Langsung ke Domain Iran"
+"DirectIRDomainDesc" = "Membentuk koneksi langsung ke domain Iran."
+"DirectChinaIp" = "Koneksi Langsung ke IP China"
+"DirectChinaIpDesc" = "Membentuk koneksi langsung ke rentang IP China."
+"DirectChinaDomain" = "Koneksi Langsung ke Domain China"
+"DirectChinaDomainDesc" = "Membentuk koneksi langsung ke domain China."
+"DirectRussiaIp" = "Koneksi Langsung ke IP Rusia"
+"DirectRussiaIpDesc" = "Membentuk koneksi langsung ke rentang IP Rusia."
+"DirectRussiaDomain" = "Koneksi Langsung ke Domain Rusia"
+"DirectRussiaDomainDesc" = "Membentuk koneksi langsung ke domain Rusia."
+"DirectVNIp" = "Koneksi Langsung ke IP Vietnam"
+"DirectVNIpDesc" = "Membentuk koneksi langsung ke rentang IP Vietnam."
+"DirectVNDomain" = "Koneksi Langsung ke Domain Vietnam"
+"DirectVNDomainDesc" = "Membentuk koneksi langsung ke domain Vietnam."
+"GoogleIPv4" = "Google"
+"GoogleIPv4Desc" = "Rute lalu lintas ke Google melalui IPv4."
+"NetflixIPv4" = "Netflix"
+"NetflixIPv4Desc" = "Rute lalu lintas ke Netflix melalui IPv4."
+"GoogleWARP" = "Google"
+"GoogleWARPDesc" = "Tambahkan pengalihan untuk Google melalui WARP."
+"OpenAIWARP" = "ChatGPT"
+"OpenAIWARPDesc" = "Rute lalu lintas ke ChatGPT melalui WARP."
+"NetflixWARP" = "Netflix"
+"NetflixWARPDesc" = "Rute lalu lintas ke Netflix melalui WARP."
+"MetaWARP" = "Meta"
+"MetaWARPDesc" = "Merutekan lalu lintas ke Meta (Instagram, Facebook, WhatsApp, Threads,...) melalui WARP."
+"AppleWARP" = "Apple"
+"AppleWARPDesc" = "Merutekan lalu lintas ke Apple melalui WARP."
+"RedditWARP" = "Reddit"
+"RedditWARPDesc" = "Merutekan lalu lintas ke Reddit melalui WARP."
+"SpotifyWARP" = "Spotify"
+"SpotifyWARPDesc" = "Rute lalu lintas ke Spotify melalui WARP."
+"IRWARP" = "Domain Iran"
+"IRWARPDesc" = "Rute lalu lintas ke domain Iran melalui WARP."
+"Inbounds" = "Masuk"
+"InboundsDesc" = "Menerima klien tertentu."
+"Outbounds" = "Keluar"
+"Balancers" = "Penyeimbang"
+"OutboundsDesc" = "Atur jalur lalu lintas keluar."
+"Routings" = "Aturan Pengalihan"
+"RoutingsDesc" = "Prioritas setiap aturan penting!"
+"completeTemplate" = "Semua"
+"logLevel" = "Tingkat Log"
+"logLevelDesc" = "Tingkat log untuk log kesalahan, menunjukkan informasi yang perlu dicatat."
+"accessLog" = "Log Akses"
+"accessLogDesc" = "Jalur file untuk log akses. Nilai khusus 'tidak ada' menonaktifkan log akses"
+"errorLog" = "Catatan eror"
+"errorLogDesc" = "Jalur file untuk log kesalahan. Nilai khusus 'tidak ada' menonaktifkan log kesalahan"
+
+[pages.xray.rules]
+"first" = "Pertama"
+"last" = "Terakhir"
+"up" = "Naik"
+"down" = "Turun"
+"source" = "Sumber"
+"dest" = "Tujuan"
+"inbound" = "Masuk"
+"outbound" = "Keluar"
+"balancer" = "Pengimbang"
+"info" = "Info"
+"add" = "Tambahkan Aturan"
+"edit" = "Edit Aturan"
+"useComma" = "Item yang dipisahkan koma"
+
+[pages.xray.outbound]
+"addOutbound" = "Tambahkan Keluar"
+"addReverse" = "Tambahkan Revers"
+"editOutbound" = "Edit Keluar"
+"editReverse" = "Edit Revers"
+"tag" = "Tag"
+"tagDesc" = "Tag Unik"
+"address" = "Alamat"
+"reverse" = "Revers"
+"domain" = "Domain"
+"type" = "Tipe"
+"bridge" = "Jembatan"
+"portal" = "Portal"
+"intercon" = "Interkoneksi"
+"settings" = "Pengaturan"
+"accountInfo" = "Informasi Akun"
+"outboundStatus" = "Status Keluar"
+"sendThrough" = "Kirim Melalui"
+
+[pages.xray.balancer]
+"addBalancer" = "Tambahkan Penyeimbang"
+"editBalancer" = "Sunting Penyeimbang"
+"balancerStrategy" = "Strategi"
+"balancerSelectors" = "Penyeleksi"
+"tag" = "Menandai"
+"tagDesc" = "Label Unik"
+"balancerDesc" = "BalancerTag dan outboundTag tidak dapat digunakan secara bersamaan. Jika digunakan secara bersamaan, hanya outboundTag yang akan berfungsi."
+
+[pages.xray.wireguard]
+"secretKey" = "Kunci Rahasia"
+"publicKey" = "Kunci Publik"
+"allowedIPs" = "IP yang Diizinkan"
+"endpoint" = "Titik Akhir"
+"psk" = "Kunci Pra-Bagi"
+"domainStrategy" = "Strategi Domain"
+
+[pages.xray.dns]
+"enable" = "Aktifkan DNS"
+"enableDesc" = "Aktifkan server DNS bawaan"
+"tag" = "Tanda DNS Masuk"
+"tagDesc" = "Tanda ini akan tersedia sebagai tanda masuk dalam aturan penataan."
+"strategy" = "Strategi Kueri"
+"strategyDesc" = "Strategi keseluruhan untuk menyelesaikan nama domain"
+"add" = "Tambahkan Server"
+"edit" = "Sunting Server"
+"domains" = "Domains"
+
+[pages.xray.fakedns]
+"add" = "Tambahkan DNS Palsu"
+"edit" = "Edit DNS Palsu"
+"ipPool" = "Subnet Kumpulan IP"
+"poolSize" = "Ukuran Kolam"
+
+[pages.settings.security]
+"admin" = "Admin"
+"secret" = "Token Rahasia"
+"loginSecurity" = "Login Aman"
+"loginSecurityDesc" = "Menambahkan lapisan otentikasi tambahan untuk memberikan keamanan lebih."
+"secretToken" = "Token Rahasia"
+"secretTokenDesc" = "Simpan token ini dengan aman di tempat yang aman. Token ini diperlukan untuk login dan tidak dapat dipulihkan."
+
+[pages.settings.toasts]
+"modifySettings" = "Ubah Pengaturan"
+"getSettings" = "Dapatkan Pengaturan"
+"modifyUser" = "Ubah Admin"
+"originalUserPassIncorrect" = "Username atau password saat ini tidak valid"
+"userPassMustBeNotEmpty" = "Username dan password baru tidak boleh kosong"
+
+[tgbot]
+"keyboardClosed" = "❌ Papan ketik kustom ditutup!"
+"noResult" = "❗ Tidak ada hasil!"
+"noQuery" = "❌ Permintaan tidak ditemukan! Harap gunakan perintah lagi!"
+"wentWrong" = "❌ Ada yang salah!"
+"noIpRecord" = "❗ Tidak ada Catatan IP!"
+"noInbounds" = "❗ Tidak ada masuk ditemukan!"
+"unlimited" = "♾ Tak terbatas"
+"add" = "Tambah"
+"month" = "Bulan"
+"months" = "Bulan"
+"day" = "Hari"
+"days" = "Hari"
+"hours" = "Jam"
+"unknown" = "Tidak diketahui"
+"inbounds" = "Masuk"
+"clients" = "Klien"
+"offline" = "🔴 Offline"
+"online" = "🟢 Online"
+
+[tgbot.commands]
+"unknown" = "❗ Perintah tidak dikenal."
+"pleaseChoose" = "👇 Harap pilih:\r\n"
+"help" = "🤖 Selamat datang di bot ini! Ini dirancang untuk menyediakan data tertentu dari panel web dan memungkinkan Anda melakukan modifikasi sesuai kebutuhan.\r\n\r\n"
+"start" = "👋 Halo {{ .Firstname }}.\r\n"
+"welcome" = "🤖 Selamat datang di {{.Hostname }} bot managemen.\r\n"
+"status" = "✅ Bot dalam keadaan baik!"
+"usage" = "❗ Harap berikan teks untuk mencari!"
+"getID" = "🆔 ID Anda:{{.ID }}
"
+"helpAdminCommands" = "Untuk mencari email klien:\r\n/usage [Email]
\r\n\r\nUntuk mencari inbound (dengan statistik klien):\r\n/inbound [Catatan]
\r\n\r\nID Obrolan Telegram:\r\n/id
"
+"helpClientCommands" = "Untuk mencari statistik, gunakan perintah berikut:\r\n/usage [Email]
\r\n\r\nID Obrolan Telegram:\r\n/id
"
+
+[tgbot.messages]
+"cpuThreshold" = "🔴 Beban CPU {{ .Percent }}% melebihi batas {{ .Threshold }}%"
+"selectUserFailed" = "❌ Kesalahan dalam pemilihan pengguna!"
+"userSaved" = "✅ Pengguna Telegram tersimpan."
+"loginSuccess" = "✅ Berhasil masuk ke panel.\r\n"
+"loginFailed" = "❗️ Gagal masuk ke panel.\r\n"
+"report" = "🕰 Laporan Terjadwal: {{ .RunTime }}\r\n"
+"datetime" = "⏰ Tanggal & Waktu: {{ .DateTime }}\r\n"
+"hostname" = "💻 Host: {{ .Hostname }}\r\n"
+"version" = "🚀 Versi 3X-UI: {{ .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" = "⏳ Waktu Aktif: {{ .UpTime }} {{ .Unit }}\r\n"
+"serverLoad" = "📈 Beban Sistem: {{ .Load1 }}, {{ .Load2 }}, {{ .Load3 }}\r\n"
+"serverMemory" = "📋 RAM: {{ .Current }}/{{ .Total }}\r\n"
+"tcpCount" = "🔹 TCP: {{ .Count }}\r\n"
+"udpCount" = "🔸 UDP: {{ .Count }}\r\n"
+"traffic" = "🚦 Lalu Lintas: {{ .Total }} (↑{{ .Upload }},↓{{ .Download }})\r\n"
+"xrayStatus" = "ℹ️ Status: {{ .State }}\r\n"
+"username" = "👤 Nama Pengguna: {{ .Username }}\r\n"
+"time" = "⏰ Waktu: {{ .Time }}\r\n"
+"inbound" = "📍 Inbound: {{ .Remark }}\r\n"
+"port" = "🔌 Port: {{ .Port }}\r\n"
+"expire" = "📅 Tanggal Kadaluarsa: {{ .Time }}\r\n"
+"expireIn" = "📅 Kadaluarsa Dalam: {{ .Time }}\r\n"
+"active" = "💡 Aktif: {{ .Enable }}\r\n"
+"enabled" = "🚨 Diaktifkan: {{ .Enable }}\r\n"
+"online" = "🌐 Status Koneksi: {{ .Status }}\r\n"
+"email" = "📧 Email: {{ .Email }}\r\n"
+"upload" = "🔼 Unggah: ↑{{ .Upload }}\r\n"
+"download" = "🔽 Unduh: ↓{{ .Download }}\r\n"
+"total" = "📊 Total: ↑↓{{ .UpDown }} / {{ .Total }}\r\n"
+"TGUser" = "👤 Pengguna Telegram: {{ .TelegramID }}\r\n"
+"exhaustedMsg" = "🚨 Habis {{ .Type }}:\r\n"
+"exhaustedCount" = "🚨 Jumlah Habis {{ .Type }}:\r\n"
+"onlinesCount" = "🌐 Klien Online: {{ .Count }}\r\n"
+"disabled" = "🛑 Dinonaktifkan: {{ .Disabled }}\r\n"
+"depleteSoon" = "🔜 Habis Sebentar: {{ .Deplete }}\r\n\r\n"
+"backupTime" = "🗄 Waktu Backup: {{ .Time }}\r\n"
+"refreshedOn" = "\r\n📋🔄 Diperbarui Pada: {{ .Time }}\r\n\r\n"
+"yes" = "✅ Ya"
+"no" = "❌ Tidak"
+
+[tgbot.buttons]
+"closeKeyboard" = "❌ Tutup Papan Ketik"
+"cancel" = "❌ Batal"
+"cancelReset" = "❌ Batal Reset"
+"cancelIpLimit" = "❌ Batal Batas IP"
+"confirmResetTraffic" = "✅ Konfirmasi Reset Lalu Lintas?"
+"confirmClearIps" = "✅ Konfirmasi Hapus IPs?"
+"confirmRemoveTGUser" = "✅ Konfirmasi Hapus Pengguna Telegram?"
+"confirmToggle" = "✅ Konfirmasi Aktifkan/Nonaktifkan Pengguna?"
+"dbBackup" = "Dapatkan Cadangan DB"
+"serverUsage" = "Penggunaan Server"
+"getInbounds" = "Dapatkan Inbounds"
+"depleteSoon" = "Habis Sebentar"
+"clientUsage" = "Dapatkan Penggunaan"
+"onlines" = "Klien Online"
+"commands" = "Perintah"
+"refresh" = "🔄 Perbarui"
+"clearIPs" = "❌ Hapus IPs"
+"removeTGUser" = "❌ Hapus Pengguna Telegram"
+"selectTGUser" = "👤 Pilih Pengguna Telegram"
+"selectOneTGUser" = "👤 Pilih Pengguna Telegram:"
+"resetTraffic" = "📈 Reset Lalu Lintas"
+"resetExpire" = "📅 Ubah Tanggal Kadaluarsa"
+"ipLog" = "🔢 Log IP"
+"ipLimit" = "🔢 Batas IP"
+"setTGUser" = "👤 Set Pengguna Telegram"
+"toggle" = "🔘 Aktifkan / Nonaktifkan"
+"custom" = "🔢 Kustom"
+"confirmNumber" = "✅ Konfirmasi: {{ .Num }}"
+"confirmNumberAdd" = "✅ Konfirmasi menambahkan: {{ .Num }}"
+"limitTraffic" = "🚧 Batas Lalu Lintas"
+"getBanLogs" = "Dapatkan Log Pemblokiran"
+
+[tgbot.answers]
+"successfulOperation" = "✅ Operasi berhasil!"
+"errorOperation" = "❗ Kesalahan dalam operasi."
+"getInboundsFailed" = "❌ Gagal mendapatkan inbounds."
+"canceled" = "❌ {{ .Email }}: Operasi dibatalkan."
+"clientRefreshSuccess" = "✅ {{ .Email }}: Klien diperbarui dengan berhasil."
+"IpRefreshSuccess" = "✅ {{ .Email }}: IP diperbarui dengan berhasil."
+"TGIdRefreshSuccess" = "✅ {{ .Email }}: Pengguna Telegram Klien diperbarui dengan berhasil."
+"resetTrafficSuccess" = "✅ {{ .Email }}: Lalu lintas direset dengan berhasil."
+"setTrafficLimitSuccess" = "✅ {{ .Email }}: Batas lalu lintas disimpan dengan berhasil."
+"expireResetSuccess" = "✅ {{ .Email }}: Hari kadaluarsa direset dengan berhasil."
+"resetIpSuccess" = "✅ {{ .Email }}: Batas IP {{ .Count }} disimpan dengan berhasil."
+"clearIpSuccess" = "✅ {{ .Email }}: IP dihapus dengan berhasil."
+"getIpLog" = "✅ {{ .Email }}: Dapatkan Log IP."
+"getUserInfo" = "✅ {{ .Email }}: Dapatkan Info Pengguna Telegram."
+"removedTGUserSuccess" = "✅ {{ .Email }}: Pengguna Telegram dihapus dengan berhasil."
+"enableSuccess" = "✅ {{ .Email }}: Diaktifkan dengan berhasil."
+"disableSuccess" = "✅ {{ .Email }}: Dinonaktifkan dengan berhasil."
+"askToAddUserId" = "Konfigurasi Anda tidak ditemukan!\r\nSilakan minta admin Anda untuk menggunakan ID Telegram Anda dalam konfigurasi Anda.\r\n\r\nID Pengguna Anda: {{ .TgUserID }}
"
diff --git a/translate.ru_RU.toml b/translate.ru_RU.toml
new file mode 100644
index 00000000..e1f19af8
--- /dev/null
+++ b/translate.ru_RU.toml
@@ -0,0 +1,638 @@
+"username" = "Имя пользователя"
+"password" = "Пароль"
+"login" = "Логин"
+"confirm" = "Подтвердить"
+"cancel" = "Отмена"
+"close" = "Закрыть"
+"copy" = "Копировать"
+"copied" = "Скопировано"
+"download" = "Скачать"
+"remark" = "Примечание"
+"enable" = "Включить"
+"protocol" = "Протокол"
+"search" = "Поиск"
+"filter" = "Фильтр"
+"loading" = "Загрузка..."
+"second" = "Секунда"
+"minute" = "Минута"
+"hour" = "Час"
+"day" = "День"
+"check" = "Проверить"
+"indefinite" = "Бессрочно"
+"unlimited" = "Безлимитно"
+"none" = "Пусто"
+"qrCode" = "QR-код"
+"info" = "Информация"
+"edit" = "Изменить"
+"delete" = "Удалить"
+"reset" = "Сбросить"
+"copySuccess" = "Скопировано"
+"sure" = "Да"
+"encryption" = "Шифрование"
+"transmission" = "Протокол передачи"
+"host" = "Хост"
+"path" = "Путь"
+"camouflage" = "Маскировка"
+"status" = "Статус"
+"enabled" = "Включено"
+"disabled" = "Отключено"
+"depleted" = "Исчерпано"
+"depletingSoon" = "Почти исчерпано"
+"offline" = "Офлайн"
+"online" = "Онлайн"
+"domainName" = "Домен"
+"monitor" = "Порт IP"
+"certificate" = "Цифровой сертификат"
+"fail" = "Неудачно"
+"success" = "Успешно"
+"getVersion" = "Узнать версию"
+"install" = "Установка"
+"clients" = "Клиенты"
+"usage" = "Использование"
+"secretToken" = "Секретный токен"
+"remained" = "остались"
+"security" = "Безопасность"
+"secAlertTitle" = "Предупреждение системы безопасности"
+"secAlertSsl" = "Это соединение не защищено. Пожалуйста, воздержитесь от ввода конфиденциальной информации до тех пор, пока не будет активирован TLS для защиты данных"
+"secAlertConf" = "Некоторые настройки уязвимы для атак. Рекомендуется усилить протоколы безопасности, чтобы предотвратить потенциальные нарушения."
+"secAlertSSL" = "В панели отсутствует безопасное соединение. Пожалуйста, установите сертификат TLS для защиты данных."
+"secAlertPanelPort" = "Порт по умолчанию панели небезопасен. Пожалуйста, настройте случайный или определенный порт."
+"secAlertPanelURI" = "URI-путь по умолчанию панели небезопасен. Пожалуйста, настройте сложный URI-путь."
+"secAlertSubURI" = "URI-путь по умолчанию подписки небезопасен. Пожалуйста, настройте сложный URI-путь."
+"secAlertSubJsonURI" = "URI-путь по умолчанию для JSON подписки небезопасен. Пожалуйста, настройте сложный URI-путь."
+
+[menu]
+"dashboard" = "Статус системы"
+"inbounds" = "Подключения"
+"settings" = "Настройки панели"
+"xray" = "Настройки Xray"
+"logout" = "Выход"
+"link" = "менеджмент"
+
+[pages.login]
+"hello" = "Привет"
+"title" = "Добро пожаловать"
+"loginAgain" = "Время пребывания в сети вышло. Пожалуйста, войдите в систему снова"
+
+[pages.login.toasts]
+"invalidFormData" = "Недопустимый формат данных"
+"emptyUsername" = "Введите имя пользователя"
+"emptyPassword" = "Введите пароль"
+"wrongUsernameOrPassword" = "Неверное имя пользователя или пароль"
+"successLogin" = "Успешный вход"
+
+[pages.index]
+"title" = "Статус системы"
+"memory" = "Память"
+"hard" = "Жесткий диск"
+"xrayStatus" = "Xray"
+"stopXray" = "Остановить"
+"restartXray" = "Перезапустить"
+"xraySwitch" = "Версия"
+"xraySwitchClick" = "Выберите желаемую версию"
+"xraySwitchClickDesk" = "Выбирайте внимательно, так как старые версии могут быть несовместимы с текущими конфигурациями"
+"operationHours" = "Время работы системы"
+"systemLoad" = "Системная нагрузка"
+"systemLoadDesc" = "средняя загрузка системы за последние 1, 5 и 15 минут"
+"connectionTcpCountDesc" = "Всего подключений TCP по всем сетевым картам."
+"connectionUdpCountDesc" = "Общее количество подключений UDP по всем сетевым картам."
+"connectionCount" = "Количество соединений"
+"upSpeed" = "Общая скорость upload для всех сетей"
+"downSpeed" = "Общая скорость download для всех сетей"
+"totalSent" = "Общий объем загруженных данных для всех сетей с момента запуска системы"
+"totalReceive" = "Общий объем полученных данных для всех сетей с момента запуска системы."
+"xraySwitchVersionDialog" = "Переключить версию Xray"
+"xraySwitchVersionDialogDesc" = "Вы точно хотите сменить версию Xray?"
+"dontRefresh" = "Идёт установка. Пожалуйста, не обновляйте эту страницу"
+"logs" = "Логи"
+"config" = "Конфигурация"
+"backup" = "Бэкап и восстановление"
+"backupTitle" = "База данных бэкапа и восстановления"
+"backupDescription" = "Не забудьте сделать резервную копию перед импортом новой базы данных"
+"exportDatabase" = "Экспорт базы данных"
+"importDatabase" = "Импорт базы данных"
+
+[pages.inbounds]
+"title" = "Подключения"
+"totalDownUp" = "Всего uploads/downloads"
+"totalUsage" = "Всего использовано"
+"inboundCount" = "Количество подключений"
+"operate" = "Меню"
+"enable" = "Включить"
+"remark" = "Примечание"
+"protocol" = "Протокол"
+"port" = "Порт"
+"traffic" = "Трафик"
+"details" = "Подробнее"
+"transportConfig" = "Транспорт"
+"expireDate" = "Дата окончания"
+"resetTraffic" = "Сбросить трафик"
+"addInbound" = "Добавить подключение"
+"generalActions" = "Общие действия"
+"create" = "Создать"
+"update" = "Обновить"
+"modifyInbound" = "Изменить подключение"
+"deleteInbound" = "Удалить подключение"
+"deleteInboundContent" = "Подтвердите удаление подключения?"
+"deleteClient" = "Удалить клиента"
+"deleteClientContent" = "Вы уверены, что хотите удалить клиента?"
+"resetTrafficContent" = "Подтвердите сброс трафика?"
+"copyLink" = "Копировать ключ"
+"address" = "Адрес"
+"network" = "Сеть"
+"destinationPort" = "Порт назначения"
+"targetAddress" = "Целевой адрес"
+"monitorDesc" = "Оставьте пустым по умолчанию"
+"meansNoLimit" = " = Без ограничений (значение: ГБ)"
+"totalFlow" = "Общий расход"
+"leaveBlankToNeverExpire" = "Оставьте пустым, чтобы не истекало"
+"noRecommendKeepDefault" = "Нет требований для сохранения настроек по умолчанию"
+"certificatePath" = "Путь файла"
+"certificateContent" = "Содержимое файла"
+"publicKey" = "Публичный ключ"
+"privatekey" = "Приватный ключ"
+"clickOnQRcode" = "Нажмите на QR-код, чтобы скопировать"
+"client" = "Клиент"
+"export" = "Экспорт ключей"
+"clone" = "Клонировать"
+"cloneInbound" = "Клонировать"
+"cloneInboundContent" = "Все настройки этого подключения, кроме порта, IP-адреса прослушки и клиентов, будут клонированы"
+"cloneInboundOk" = "Клонировано"
+"resetAllTraffic" = "Сбросить трафик всех подключений"
+"resetAllTrafficTitle" = "Сброс трафика всех подключений"
+"resetAllTrafficContent" = "Подтверждаете сброс трафика всех подключений?"
+"resetInboundClientTraffics" = "Сбросить трафик пользователей"
+"resetInboundClientTrafficTitle" = "Сброс трафика пользователей"
+"resetInboundClientTrafficContent" = "Вы уверены, что хотите сбросить весь трафик для этих пользователей?"
+"resetAllClientTraffics" = "Сбросить трафик всех пользователей"
+"resetAllClientTrafficTitle" = "Сброс трафика всех пользователей"
+"resetAllClientTrafficContent" = "Подтверждаете сброс трафика всех пользователей?"
+"delDepletedClients" = "Удалить отключенных пользователей"
+"delDepletedClientsTitle" = "Удаление отключенных пользователей"
+"delDepletedClientsContent" = "Подтверждаете удаление отключенных пользователей?"
+"email" = "Email"
+"emailDesc" = "Пожалуйста, укажите уникальный Email"
+"IPLimit" = "Ограничение по IP"
+"IPLimitDesc" = "Сбросить подключение, если подключено больше введенного значения (введите 0, чтобы отключить ограничение IP-адресов)"
+"IPLimitlog" = "IP лог"
+"IPLimitlogDesc" = "Лог IP-адресов (перед включением лога IP-адресов, вы должны очистить список)"
+"IPLimitlogclear" = "Очистить лог"
+"setDefaultCert" = "Установить сертификат с панели"
+"xtlsDesc" = "Версия Xray должна быть не ниже 1.7.5"
+"realityDesc" = "Версия Xray должна быть не ниже 1.8.0"
+"telegramDesc" = "Пожалуйста, укажите ID чата Telegram. (используйте команду '/id' в боте) или (@userinfobot)"
+"subscriptionDesc" = "Вы можете найти свою ссылку подписки в разделе 'Подробнее', также вы можете использовать одно и то же имя для нескольких конфигураций"
+"info" = "Информация"
+"same" = "Тот же"
+"inboundData" = "Входящие данные"
+"exportInbound" = "Экспорт входящих"
+"import" = "Импортировать"
+"importInbound" = "Импортировать входящее сообщение"
+
+[pages.client]
+"add" = "Добавить пользователя"
+"edit" = "Редактировать пользователя"
+"submitAdd" = "Добавить пользователя"
+"submitEdit" = "Сохранить изменения"
+"clientCount" = "Количество пользователей"
+"bulk" = "Добавить несколько"
+"method" = "Метод"
+"first" = "Первый"
+"last" = "Последний"
+"prefix" = "Префикс"
+"postfix" = "Постфикс"
+"delayedStart" = "Начало использования"
+"expireDays" = "Длительность"
+"days" = "дней"
+"renew" = "Автопродление"
+"renewDesc" = "Автопродление после истечения срока действия. (0 = отключить)(единица: день)"
+
+[pages.inbounds.toasts]
+"obtain" = "Получить"
+
+[pages.inbounds.stream.general]
+"request" = "Запрос"
+"response" = "Ответ"
+"name" = "Имя"
+"value" = "Ценить"
+
+[pages.inbounds.stream.tcp]
+"version" = "Версия"
+"method" = "Метод"
+"path" = "Путь"
+"status" = "Положение дел"
+"statusDescription" = "Описание статуса"
+"requestHeader" = "Заголовок запроса"
+"responseHeader" = "Заголовок ответа"
+
+[pages.inbounds.stream.quic]
+"encryption" = "Шифрование"
+
+[pages.settings]
+"title" = "Настройки"
+"save" = "Сохранить"
+"infoDesc" = "Каждое сделанное здесь изменение необходимо сохранить. Пожалуйста, перезапустите панель, чтобы изменения вступили в силу"
+"restartPanel" = "Перезапуск панели"
+"restartPanelDesc" = "Подтвердите перезапуск панели? ОК для перезапуска панели через 3 сек. Если вы не можете пользоваться панелью после перезапуска, пожалуйста, посмотрите лог панели на сервере"
+"actions" = "Действия"
+"resetDefaultConfig" = "Сбросить на конфигурацию по умолчанию"
+"panelSettings" = "Настройки панели"
+"securitySettings" = "Настройки безопасности"
+"TGBotSettings" = "Настройки Telegram бота"
+"panelListeningIP" = "IP-адрес панели"
+"panelListeningIPDesc" = "Оставьте пустым для подключения с любого IP"
+"panelListeningDomain" = "Домен прослушивания панели"
+"panelListeningDomainDesc" = "По умолчанию оставьте пустым, чтобы отслеживать все домены и IP-адреса"
+"panelPort" = "Порт панели"
+"panelPortDesc" = "Порт, используемый для отображения этой панели"
+"publicKeyPath" = "Путь к файлу публичного ключа сертификата панели"
+"publicKeyPathDesc" = "Введите полный путь, начинающийся с"
+"privateKeyPath" = "Путь к файлу приватного ключа сертификата панели"
+"privateKeyPathDesc" = "Введите полный путь, начинающийся с"
+"panelUrlPath" = "Корневой путь URL адреса панели"
+"panelUrlPathDesc" = "Должен начинаться с '/' и заканчиваться на"
+"pageSize" = "Размер нумерации страниц"
+"pageSizeDesc" = "Определить размер страницы для входящей таблицы. Установите 0, чтобы отключить"
+"remarkModel" = "Модель примечания и символ разделения"
+"datepicker" = "выбор даты"
+"datepickerPlaceholder" = "Выберите дату"
+"datepickerDescription" = "Тип календаря выбора указывает дату истечения срока действия."
+"sampleRemark" = "Пример замечания"
+"oldUsername" = "Текущее имя пользователя"
+"currentPassword" = "Текущий пароль"
+"newUsername" = "Новое имя пользователя"
+"newPassword" = "Новый пароль"
+"telegramBotEnable" = "Включить Telegram бота"
+"telegramBotEnableDesc" = "Подключайтесь к функциям этой панели через Telegram бота"
+"telegramToken" = "Токен Telegram бота"
+"telegramTokenDesc" = "Необходимо получить токен у менеджера ботов Telegram @botfather"
+"telegramProxy" = "Прокси Socks5"
+"telegramProxyDesc" = "Если для подключения к Telegram вам нужен прокси Socks5. Настройте его параметры согласно руководству."
+"telegramChatId" = "Telegram ID админа бота"
+"telegramChatIdDesc" = "Множественные идентификаторы чата, разделенные запятыми. Чтобы получить свои идентификаторы чатов, используйте @userinfobot или команду '/id' в боте."
+"telegramNotifyTime" = "Частота уведомлений бота Telegram"
+"telegramNotifyTimeDesc" = "Используйте формат времени Crontab"
+"tgNotifyBackup" = "Резервное копирование базы данных"
+"tgNotifyBackupDesc" = "Включать файл резервной копии базы данных с уведомлением об отчете"
+"tgNotifyLogin" = "Уведомление о входе"
+"tgNotifyLoginDesc" = "Отображает имя пользователя, IP-адрес и время, когда кто-то пытается войти в вашу панель."
+"sessionMaxAge" = "Продолжительность сессии"
+"sessionMaxAgeDesc" = "Продолжительность сессии в системе (значение: минута)"
+"expireTimeDiff" = "Порог истечения срока сессии для уведомления"
+"expireTimeDiffDesc" = "Получение уведомления об истечении срока действия сессии до достижения порогового значения (значение: день)"
+"trafficDiff" = "Порог трафика для уведомления"
+"trafficDiffDesc" = "Получение уведомления об исчерпании трафика до достижения порога (значение: ГБ)"
+"tgNotifyCpu" = "Порог нагрузки на ЦП для уведомления"
+"tgNotifyCpuDesc" = "Получение уведомления, если нагрузка на ЦП превышает этот порог (значение: %)"
+"timeZone" = "Часовой пояс"
+"timeZoneDesc" = "Запланированные задачи выполняются в соответствии со временем в этом часовом поясе"
+"subSettings" = "Подписка"
+"subEnable" = "Включить службу"
+"subEnableDesc" = "Функция подписки с отдельной конфигурацией"
+"subListen" = "Прослушивание IP"
+"subListenDesc" = "Оставьте пустым по умолчанию, чтобы отслеживать все IP-адреса"
+"subPort" = "Порт подписки"
+"subPortDesc" = "Номер порта для обслуживания службы подписки не должен использоваться на сервере"
+"subCertPath" = "Путь к файлу открытого ключа сертификата подписки"
+"subCertPathDesc" = "Введите абсолютный путь, начинающийся с '/'"
+"subKeyPath" = "Путь к файлу закрытого ключа сертификата подписки"
+"subKeyPathDesc" = "Введите абсолютный путь, начинающийся с '/'"
+"subPath" = "Корневой путь URL-адреса подписки"
+"subPathDesc" = "Должен начинаться с '/' и заканчиваться на '/'"
+"subDomain" = "Домен прослушивания"
+"subDomainDesc" = "Оставьте пустым по умолчанию, чтобы отслеживать все домены и IP-адреса"
+"subUpdates" = "Интервалы обновления подписки"
+"subUpdatesDesc" = "Часовой интервал между обновлениями в клиентском приложении"
+"subEncrypt" = "Шифровать конфиги"
+"subEncryptDesc" = "Шифровать возвращенные конфиги в подписке"
+"subShowInfo" = "Показать информацию об использовании"
+"subShowInfoDesc" = "Показывать восстановленный трафик и дату после имени конфигурации"
+"subURI" = "URI обратного прокси"
+"subURIDesc" = "Изменить базовый URI URL-адреса подписки для использования за прокси-серверами"
+"fragment" = "Фрагментация"
+"fragmentDesc" = "Включить фрагментацию для пакета приветствия TLS"
+"fragmentSett" = "Настройки фрагментации"
+"mux" = "Mux"
+"muxDesc" = "Передача нескольких независимых потоков данных в рамках установленного потока данных."
+"muxSett" = "Mux Настройки"
+"direct" = "Прямая связь"
+"directDesc" = "Напрямую устанавливает соединения с доменами или диапазонами IP конкретной страны."
+"directSett" = "Варианты прямого подключения"
+
+[pages.xray]
+"title" = "Настройки Xray"
+"save" = "Сохранить настройки"
+"restart" = "Перезапустить Xray"
+"basicTemplate" = "Базовый шаблон"
+"advancedTemplate" = "Расширенный шаблон"
+"generalConfigs" = "Основные настройки"
+"generalConfigsDesc" = "Эти параметры описывают общие настройки"
+"logConfigs" = "Журнал"
+"logConfigsDesc" = "Журналы могут повлиять на эффективность вашего сервера. Рекомендуется включать их с умом только в случае ваших нужд!"
+"blockConfigs" = "Блокировка конфигураций"
+"blockConfigsDesc" = "Эти параметры не позволят пользователям подключаться к определенным протоколам и веб-сайтам"
+"blockCountryConfigs" = "Конфигурации блокировки страны"
+"blockCountryConfigsDesc" = "Эти параметры не позволят пользователям подключаться к доменам определенной страны"
+"directCountryConfigs" = "Настройки прямого подключения для страны"
+"directCountryConfigsDesc" = "Прямое подключение обеспечивает, что конкретный трафик не направляется через другой сервер."
+"ipv4Configs" = "Настройки IPv4"
+"ipv4ConfigsDesc" = "Эти параметры позволят пользователям маршрутизироваться к целевым доменам только через IPv4"
+"warpConfigs" = "Настройки WARP"
+"warpConfigsDesc" = "Внимание: перед использованием этих параметров установите WARP в режиме прокси-сервера socks5 на свой сервер, следуя инструкциям на GitHub панели. WARP будет направлять трафик на веб-сайты через серверы Cloudflare"
+"Template" = "Шаблон конфигурации Xray"
+"TemplateDesc" = "Создание файла конфигурации Xray на основе этого шаблона"
+"FreedomStrategy" = "Настройка стратегии протокола Freedom"
+"FreedomStrategyDesc" = "Установка стратегию вывода сети в протоколе Freedom"
+"RoutingStrategy" = "Настройка стратегии маршрутизации доменов"
+"RoutingStrategyDesc" = "Установка общей стратегии маршрутизации разрешения DNS"
+"Torrent" = "Запрет использования BitTorrent"
+"TorrentDesc" = "Изменение шаблона конфигурации для предупреждения использования BitTorrent пользователями"
+"PrivateIp" = "Запрет частных диапазонов IP-адресов для подключения"
+"PrivateIpDesc" = "Изменение шаблона конфигурации для предупреждения подключения к диапазонам частных IP-адресов"
+"Ads" = "Блокировка рекламы"
+"AdsDesc" = "Изменение конфигурации для блокировки рекламы"
+"Family" = "Блокируйте вредоносное ПО и контент для взрослых"
+"FamilyDesc" = "DNS-преобразователи Cloudflare для блокировки вредоносного ПО и контента для взрослых в целях защиты семьи."
+"Security" = "Блокируйте вредоносное ПО, фишинговые сайты и сайты криптомайнеров"
+"SecurityDesc" = "Изменение шаблона конфигурации для защиты безопасности."
+"Speedtest" = "Блокировать сайты для проверки скорости"
+"SpeedtestDesc" = "Изменение шаблона конфигурации для предупреждения подключения к веб-сайтам для тестирования скорости"
+"IRIp" = "Заблокировать подключения к диапазонам IP-адресов Ирана"
+"IRIpDesc" = "Изменение конфигурации, чтобы заблокировать подключения к диапазонам IP-адресов Ирана"
+"IRDomain" = "Заблокировать подключения к доменам Ирана"
+"IRDomainDesc" = "Изменение конфигурации, чтобы заблокировать подключения к доменам Ирана"
+"ChinaIp" = "Заблокировать подключения к диапазонам IP-адресов Китая"
+"ChinaIpDesc" = "Изменение конфигурации, чтобы заблокировать подключения к диапазонам IP-адресов Китая"
+"ChinaDomain" = "Заблокировать подключения к доменам Китая"
+"ChinaDomainDesc" = "Изменение конфигурации, чтобы заблокировать подключения к доменам Китая"
+"RussiaIp" = "Заблокировать подключения к диапазонам IP-адресов России"
+"RussiaIpDesc" = "Изменение конфигурации, чтобы заблокировать подключения к диапазонами IP-адресов России"
+"RussiaDomain" = "Заблокировать подключения к доменам России"
+"RussiaDomainDesc" = "Изменение конфигурации, чтобы заблокировать подключения к доменам России"
+"VNIp" = "Отключить подключение к IP-адресам Вьетнама"
+"VNIpDesc" = "Измените шаблон конфигурации, чтобы избежать подключения к диапазонам IP-адресов Вьетнама"
+"VNDomain" = "Отключить подключение к доменам Вьетнама"
+"VNDomainDesc" = "Измените шаблон конфигурации, чтобы избежать подключения к доменам Вьетнама."
+"DirectIRIp" = "Прямое подключения к диапазонам IP-адресов Ирана"
+"DirectIRIpDesc" = "Изменение шаблона конфигурации для прямого подключения к диапазонам IP-адресов Ирана"
+"DirectIRDomain" = "Прямое подключение к доменам Ирана"
+"DirectIRDomainDesc" = "Изменение шаблон конфигурации для прямого подключения к доменам Ирана"
+"DirectChinaIp" = "Прямое подключение к диапазонам IP-адресов Китая"
+"DirectChinaIpDesc" = "Изменение шаблона конфигурации для прямого подключения к диапазонам IP-адресов Китая"
+"DirectChinaDomain" = "Прямое подключение к доменам Китая"
+"DirectChinaDomainDesc" = "Изменение шаблона конфигурации для прямого подключения к доменам Китая"
+"DirectRussiaIp" = "Прямое подключение к диапазонам IP-адресов России"
+"DirectRussiaIpDesc" = "Изменение шаблона конфигурации для прямого подключения к диапазонам IP-адресов России"
+"DirectRussiaDomain" = "Прямое подключение к доменам России"
+"DirectRussiaDomainDesc" = "Изменение шаблона конфигурации для прямого подключения к доменам России"
+"DirectVNIp" = "Прямое подключение к IP-адресам Вьетнама"
+"DirectVNIpDesc" = "Измените шаблон конфигурации для прямого подключения к диапазонам IP-адресов Вьетнама"
+"DirectVNDomain" = "Прямое подключение к доменам Вьетнама"
+"DirectVNDomainDesc" = "Измените шаблон конфигурации для прямого подключения к доменам Вьетнама"
+"GoogleIPv4" = "Использовать IPv4 для Google"
+"GoogleIPv4Desc" = "Добавить маршрутизацию для Google для подключения к IPv4"
+"NetflixIPv4" = "Использовать IPv4 для Netflix"
+"NetflixIPv4Desc" = "Добавить маршрутизацию для Netflix для подключения к IPv4"
+"GoogleWARP" = "Google"
+"GoogleWARPDesc" = "Направляет трафик в Google через WARP."
+"OpenAIWARP" = "OpenAI (ChatGPT)"
+"OpenAIWARPDesc" = "Направляет трафик в OpenAI (ChatGPT) через WARP."
+"NetflixWARP" = "Netflix"
+"NetflixWARPDesc" = "Направляет трафик в Apple через WARP."
+"MetaWARP" = "Мета"
+"MetaWARPDesc" = "Направляет трафик в Meta (Instagram, Facebook, WhatsApp, Threads...) через WARP."
+"AppleWARP" = "Apple"
+"AppleWARPDesc" = "Направляет трафик в Apple через WARP."
+"RedditWARP" = "Reddit"
+"RedditWARPDesc" = "Направляет трафик в Reddit через WARP."
+"SpotifyWARP" = "Spotify"
+"SpotifyWARPDesc" = "Направляет трафик в Spotify через WARP."
+"IRWARP" = "Маршрутизация доменов Ирана через WARP"
+"IRWARPDesc" = "Добавить маршрутизацию для доменов Ирана через WARP"
+"Inbounds" = "Входящие"
+"InboundsDesc" = "Изменение шаблона конфигурации для подключения определенных пользователей"
+"Outbounds" = "Исходящие"
+"Balancers" = "Балансиры"
+"OutboundsDesc" = "Изменение шаблона конфигурации, чтобы определить исходящие пути для этого сервера"
+"Routings" = "Правила маршрутизации"
+"RoutingsDesc" = "Важен приоритет каждого правила!"
+"completeTemplate" = "Все"
+"logLevel" = "Уровень журнала"
+"logLevelDesc" = "Уровень журнала для журналов ошибок, указывающий информацию, которую необходимо записать."
+"accessLog" = "Журнал доступа"
+"accessLogDesc" = "Путь к файлу журнала доступа. Специальное значение «none» отключило журналы доступа."
+"errorLog" = "Журнал ошибок"
+"errorLogDesc" = "Путь к файлу журнала ошибок. Специальное значение «none» отключает журналы ошибок."
+
+[pages.xray.rules]
+"first" = "Первый"
+"last" = "Последний"
+"up" = "Вверх"
+"down" = "Вниз"
+"source" = "Источник"
+"dest" = "Пункт назначения"
+"inbound" = "Входящий"
+"outbound" = "Исходящий"
+"balancer" = "балансир"
+"info" = "Информация"
+"add" = "Добавить правило"
+"edit" = "Редактировать правило"
+"useComma" = "Элементы, разделенные запятыми"
+
+[pages.xray.outbound]
+"addOutbound" = "Добавить исходящий"
+"addReverse" = "Добавить реверс"
+"editOutbound" = "Изменить исходящий"
+"editReverse" = "Редактировать реверс"
+"tag" = "Тег"
+"tagDesc" = "уникальный тег"
+"address" = "Адрес"
+"reverse" = "Обратный"
+"domain" = "Домен"
+"type" = "Тип"
+"bridge" = "Мост"
+"portal" = "Портал"
+"intercon" = "Соединение"
+"settings" = "Настройки"
+"accountInfo" = "Информация Об Учетной Записи"
+"outboundStatus" = "Исходящий статус"
+"sendThrough" = "Отправить через"
+
+[pages.xray.balancer]
+"addBalancer" = "Добавить балансир"
+"editBalancer" = "Редактировать балансир"
+"balancerStrategy" = "Стратегия"
+"balancerSelectors" = "Селекторы"
+"tag" = "Тег"
+"tagDesc" = "уникальный тег"
+"balancerDesc" = "Невозможно одновременно использовать balancerTag и outboundTag. При одновременном использовании будет работать только outboundTag."
+
+[pages.xray.wireguard]
+"secretKey" = "Секретный ключ"
+"publicKey" = "Публичный ключ"
+"allowedIPs" = "Разрешенные IP-адреса"
+"endpoint" = "Конечная точка"
+"psk" = "Общий ключ"
+"domainStrategy" = "Стратегия домена"
+
+[pages.xray.dns]
+"enable" = "Включить DNS"
+"enableDesc" = "Включить встроенный DNS-сервер"
+"tag" = "Входящий тег DNS"
+"tagDesc" = "Этот тег будет доступен как входящий тег в правилах маршрутизации."
+"strategy" = "Стратегия запроса"
+"strategyDesc" = "Общая стратегия разрешения доменных имен"
+"add" = "Добавить сервер"
+"edit" = "Редактировать сервер"
+"domains" = "Домены"
+
+[pages.xray.fakedns]
+"add" = "Добавить поддельный DNS"
+"edit" = "Редактировать поддельный DNS"
+"ipPool" = "Подсеть пула IP"
+"poolSize" = "Размер пула"
+
+[pages.settings.security]
+"admin" = "Админ"
+"secret" = "Секретный токен"
+"loginSecurity" = "Безопасность входа"
+"loginSecurityDesc" = "Включить дополнительные меры безопасности входа пользователя"
+"secretToken" = "Секретный токен"
+"secretTokenDesc" = "Пожалуйста, скопируйте и сохраните этот токен в безопасном месте. Этот токен необходим для входа в систему и не может быть восстановлен с помощью инструмента x-ui"
+
+[pages.settings.toasts]
+"modifySettings" = "Изменение настроек"
+"getSettings" = "Просмотр настроек"
+"modifyUser" = "Изменение пользователя"
+"originalUserPassIncorrect" = "Неверное имя пользователя или пароль"
+"userPassMustBeNotEmpty" = "Новое имя пользователя и новый пароль должны быть заполнены"
+
+[tgbot]
+"keyboardClosed" = "❌ Закрыта настраиваемая клавиатура!"
+"noResult" = "❗ Нет результатов!"
+"noQuery" = "❌ Запрос не найден! Пожалуйста, повторите команду!"
+"wentWrong" = "❌ Что-то пошло не так!"
+"noIpRecord" = "❗ Нет записей об IP-адресе!"
+"noInbounds" = "❗ Входящих соединений не найдено!"
+"unlimited" = "♾ Неограниченно"
+"add" = "Добавить"
+"month" = "Месяц"
+"months" = "Месяцев"
+"day" = "День"
+"days" = "Дней"
+"hours" = "Часов"
+"unknown" = "Неизвестно"
+"inbounds" = "Входящие"
+"clients" = "Клиенты"
+"offline" = "🔴 Офлайн"
+"online" = "🟢 Онлайн"
+
+[tgbot.commands]
+"unknown" = "❗ Неизвестная команда"
+"pleaseChoose" = "👇 Пожалуйста, выберите:\r\n"
+"help" = "🤖 Добро пожаловать в этого бота! Он предназначен для предоставления вам конкретных данных с сервера и позволяет вносить необходимые изменения.\r\n\r\n"
+"start" = "👋 Привет, {{ .Firstname }}.\r\n"
+"welcome" = "🤖 Добро пожаловать в бота управления {{ .Hostname }}.\r\n"
+"status" = "✅ Бот работает нормально!"
+"usage" = "❗ Пожалуйста, укажите текст для поиска!"
+"getID" = "🆔 Ваш ID: {{ .ID }}
"
+"helpAdminCommands" = "Для поиска электронной почты клиента:\r\n/usage [Email]
\r\n\r\nДля поиска входящих (со статистикой клиента):\r\n/inbound [Примечание]
\r\n\r\nID чата Telegram:\r\n/id
"
+"helpClientCommands" = "Для поиска статистики используйте следующую команду:\r\n/usage [Email]
\r\n\r\nID чата Telegram:\r\n/id
"
+
+[tgbot.messages]
+"cpuThreshold" = "🔴 Загрузка процессора составляет {{ .Percent }}%, что превышает пороговое значение {{ .Threshold }}%"
+"selectUserFailed" = "❌ Ошибка при выборе пользователя!"
+"userSaved" = "✅ Пользователь Telegram сохранен."
+"loginSuccess" = "✅ Успешный вход в панель.\r\n"
+"loginFailed" = "❗️ Ошибка входа в панель.\r\n"
+"report" = "🕰 Запланированные отчеты: {{ .RunTime }}\r\n"
+"datetime" = "⏰ Дата и время: {{ .DateTime }}\r\n"
+"hostname" = "💻 Имя хоста: {{ .Hostname }}\r\n"
+"version" = "🚀 Версия X-UI: {{ .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"
+"traffic" = "🚦 Трафик: {{ .Total }} (↑{{ .Upload }},↓{{ .Download }})\r\n"
+"xrayStatus" = "ℹ️ Состояние Xray: {{ .State }}\r\n"
+"username" = "👤 Имя пользователя: {{ .Username }}\r\n"
+"time" = "⏰ Время: {{ .Time }}\r\n"
+"inbound" = "📍 Входящий поток: {{ .Remark }}\r\n"
+"port" = "🔌 Порт: {{ .Port }}\r\n"
+"expire" = "📅 Дата окончания: {{ .Time }}\r\n"
+"expireIn" = "📅 Окончание через: {{ .Time }}\r\n"
+"active" = "💡 Активен: {{ .Enable }}\r\n"
+"enabled" = "🚨 Включен: {{ .Enable }}\r\n"
+"online" = "🌐 Статус соединения: {{ .Status }}\r\n"
+"email" = "📧 Email: {{ .Email }}\r\n"
+"upload" = "🔼 Исходящий трафик: ↑{{ .Upload }}\r\n"
+"download" = "🔽 Входящий трафик: ↓{{ .Download }}\r\n"
+"total" = "📊 Всего: ↑↓{{ .UpDown }} из {{ .Total }}\r\n"
+"TGUser" = "👤 Пользователь Telegram: {{ .TelegramID }}\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"
+"refreshedOn" = "\r\n📋🔄 Обновлено: {{ .Time }}\r\n\r\n"
+"yes" = "✅ Да"
+"no" = "❌ Нет"
+
+[tgbot.buttons]
+"closeKeyboard" = "❌ Закрыть клавиатуру"
+"cancel" = "❌ Отмена"
+"cancelReset" = "❌ Отменить сброс"
+"cancelIpLimit" = "❌ Отменить лимит IP"
+"confirmResetTraffic" = "✅ Подтвердить сброс трафика?"
+"confirmClearIps" = "✅ Подтвердить очистку IP?"
+"confirmRemoveTGUser" = "✅ Подтвердить удаление пользователя Telegram?"
+"confirmToggle" = "✅ Подтвердить вкл/выкл пользователя?"
+"dbBackup" = "Получить резервную копию DB"
+"serverUsage" = "Использование сервера"
+"getInbounds" = "Получить входящие потоки"
+"depleteSoon" = "Скоро исчерпание"
+"clientUsage" = "Получить использование"
+"onlines" = "Онлайн-клиенты"
+"commands" = "Команды"
+"refresh" = "🔄 Обновить"
+"clearIPs" = "❌ Очистить IP"
+"removeTGUser" = "❌ Удалить пользователя Telegram"
+"selectTGUser" = "👤 Выбрать пользователя Telegram"
+"selectOneTGUser" = "👤 Выберите пользователя Telegram:"
+"resetTraffic" = "📈 Сбросить трафик"
+"resetExpire" = "📅 Изменить дату окончания"
+"ipLog" = "🔢 Лог IP"
+"ipLimit" = "🔢 Лимит IP"
+"setTGUser" = "👤 Установить пользователя Telegram"
+"toggle" = "🔘 Вкл./Выкл."
+"custom" = "🔢 Свой"
+"confirmNumber" = "✅ Подтвердить: {{ .Num }}"
+"confirmNumberAdd" = "✅ Подтвердить добавление: {{ .Num }}"
+"limitTraffic" = "🚧 Лимит трафика"
+"getBanLogs" = "Логи блокировок"
+
+[tgbot.answers]
+"successfulOperation" = "✅ Успешный!"
+"errorOperation" = "❗ Ошибка в операции."
+"getInboundsFailed" = "❌ Не удалось получить входящие потоки."
+"canceled" = "❌ {{ .Email }}: Операция отменена."
+"clientRefreshSuccess" = "✅ {{ .Email }}: Клиент успешно обновлен."
+"IpRefreshSuccess" = "✅ {{ .Email }}: IP-адреса успешно обновлены."
+"TGIdRefreshSuccess" = "✅ {{ .Email }}: Пользователь Telegram клиента успешно обновлен."
+"resetTrafficSuccess" = "✅ {{ .Email }}: Трафик успешно сброшен."
+"setTrafficLimitSuccess" = "✅ {{ .Email }}: Лимит Трафик успешно сохранен."
+"expireResetSuccess" = "✅ {{ .Email }}: Дни истечения успешно сброшены."
+"resetIpSuccess" = "✅ {{ .Email }}: Лимит IP ({{ .Count }}) успешно сохранен."
+"clearIpSuccess" = "✅ {{ .Email }}: IP-адреса успешно очищены."
+"getIpLog" = "✅ {{ .Email }}: Получен лог IP."
+"getUserInfo" = "✅ {{ .Email }}: Получена информация о пользователе Telegram."
+"removedTGUserSuccess" = "✅ {{ .Email }}: Пользователь Telegram успешно удален."
+"enableSuccess" = "✅ {{ .Email }}: Включено успешно."
+"disableSuccess" = "✅ {{ .Email }}: Отключено успешно."
+"askToAddUserId" = "Ваша конфигурация не найдена!\r\nПожалуйста, попросите администратора использовать ваш идентификатор пользователя Telegram в ваших конфигурациях.\r\n\r\nВаш идентификатор пользователя: {{ .TgUserID }}
"
diff --git a/translate.uk_UA.toml b/translate.uk_UA.toml
new file mode 100644
index 00000000..5f724942
--- /dev/null
+++ b/translate.uk_UA.toml
@@ -0,0 +1,638 @@
+"username" = "Ім'я користувача"
+"password" = "Пароль"
+"login" = "Увійти"
+"confirm" = "Підтвердити"
+"cancel" = "Скасувати"
+"close" = "Закрити"
+"copy" = "Копіювати"
+"copied" = "Скопійовано"
+"download" = "Завантажити"
+"remark" = "Примітка"
+"enable" = "Увімкнути"
+"protocol" = "Протокол"
+"search" = "Пошук"
+"filter" = "Фільтр"
+"loading" = "Завантаження..."
+"second" = "Секунда"
+"minute" = "Хвилина"
+"hour" = "Година"
+"day" = "День"
+"check" = "Перевірка"
+"indefinite" = "Безстроково"
+"unlimited" = "Безлімітний"
+"none" = "Немає"
+"qrCode" = "QR-Код"
+"info" = "Більше інформації"
+"edit" = "Редагувати"
+"delete" = "Видалити"
+"reset" = "Скидання"
+"copySuccess" = "Скопійовано успішно"
+"sure" = "Звичайно"
+"encryption" = "Шифрування"
+"transmission" = "Протокол передачи"
+"host" = "Хост"
+"path" = "Шлях"
+"camouflage" = "Маскування"
+"status" = "Статус"
+"enabled" = "Увімкнено"
+"disabled" = "Вимкнено"
+"depleted" = "Вичерпано"
+"depletingSoon" = "Вичерпується"
+"offline" = "Офлайн"
+"online" = "Онлайн"
+"domainName" = "Доменне ім`я"
+"monitor" = "Слухати IP"
+"certificate" = "Цифровий сертифікат"
+"fail" = " Помилка"
+"success" = " Успішно"
+"getVersion" = "Отримати версію"
+"install" = "Встановити"
+"clients" = "Клієнти"
+"usage" = "Використання"
+"secretToken" = "Секретний маркер"
+"remained" = "Залишилося"
+"security" = "Беспека"
+"secAlertTitle" = "Попередження системи безпеки"
+"secAlertSsl" = "Це з'єднання не є безпечним. Будь ласка, уникайте введення конфіденційної інформації, поки TLS не буде активовано для захисту даних."
+"secAlertConf" = "Деякі налаштування вразливі до атак. Рекомендується посилити протоколи безпеки, щоб запобігти можливим порушенням."
+"secAlertSSL" = "Панель не має безпечного з'єднання. Будь ласка, встановіть сертифікат TLS для захисту даних."
+"secAlertPanelPort" = "Стандартний порт панелі вразливий. Будь ласка, сконфігуруйте випадковий або конкретний порт."
+"secAlertPanelURI" = "Стандартний URI-шлях панелі небезпечний. Будь ласка, сконфігуруйте складний URI-шлях."
+"secAlertSubURI" = "Стандартний URI-шлях підписки небезпечний. Будь ласка, сконфігуруйте складний URI-шлях."
+"secAlertSubJsonURI" = "Стандартний URI-шлях JSON підписки небезпечний. Будь ласка, сконфігуруйте складний URI-шлях."
+
+[menu]
+"dashboard" = "Огляд"
+"inbounds" = "Вхідні"
+"settings" = "Параметри панелі"
+"xray" = "Конфігурації Xray"
+"logout" = "Вийти"
+"link" = "Керувати"
+
+[pages.login]
+"hello" = "Привіт"
+"title" = "Ласкаво просимо"
+"loginAgain" = "Ваш сеанс закінчився, увійдіть знову"
+
+[pages.login.toasts]
+"invalidFormData" = "Формат вхідних даних недійсний."
+"emptyUsername" = "Потрібне ім'я користувача"
+"emptyPassword" = "Потрібен пароль"
+"wrongUsernameOrPassword" = "Невірне ім'я користувача або пароль."
+"successLogin" = "Вхід"
+
+[pages.index]
+"title" = "Огляд"
+"memory" = "Пам'ять"
+"hard" = "Диск"
+"xrayStatus" = "Xray"
+"stopXray" = "Зупинити"
+"restartXray" = "Перезапустити"
+"xraySwitch" = "Версія"
+"xraySwitchClick" = "Виберіть версію, на яку ви хочете перейти."
+"xraySwitchClickDesk" = "Вибирайте уважно, оскільки старіші версії можуть бути несумісними з поточними конфігураціями."
+"operationHours" = "Час роботи"
+"systemLoad" = "Завантаження системи"
+"systemLoadDesc" = "Середнє завантаження системи за останні 1, 5 і 15 хвилин"
+"connectionTcpCountDesc" = "Загальна кількість TCP-з'єднань у системі"
+"connectionUdpCountDesc" = "Загальна кількість UDP-з'єднань у системі"
+"connectionCount" = "Статистика з'єднання"
+"upSpeed" = "Загальна швидкість завантаження в системі"
+"downSpeed" = "Загальна швидкість завантаження в системі"
+"totalSent" = "Загальна кількість даних, надісланих через систему з моменту запуску ОС"
+"totalReceive" = "Загальна кількість даних, отриманих системою з моменту запуску ОС"
+"xraySwitchVersionDialog" = "Змінити версію Xray"
+"xraySwitchVersionDialogDesc" = "Ви впевнені, що бажаєте змінити версію Xray на"
+"dontRefresh" = "Інсталяція триває, будь ласка, не оновлюйте цю сторінку"
+"logs" = "Журнали"
+"config" = "Конфігурація"
+"backup" = "Резервне копіювання та відновлення"
+"backupTitle" = "Резервне копіювання та відновлення бази даних"
+"backupDescription" = "Рекомендується зробити резервну копію перед відновленням бази даних."
+"exportDatabase" = "Резервне копіювання"
+"importDatabase" = "Відновити"
+
+[pages.inbounds]
+"title" = "Вхідні"
+"totalDownUp" = "Всього надісланих/отриманих"
+"totalUsage" = "Всього використанно"
+"inboundCount" = "Загальна кількість вхідних"
+"operate" = "Меню"
+"enable" = "Увімкнено"
+"remark" = "Примітка"
+"protocol" = "Протокол"
+"port" = "Порт"
+"traffic" = "Трафік"
+"details" = "Деталі"
+"transportConfig" = "Транспорт"
+"expireDate" = "Тривалість"
+"resetTraffic" = "Скинути трафік"
+"addInbound" = "Додати вхідний"
+"generalActions" = "Загальні дії"
+"create" = "Створити"
+"update" = "Оновити"
+"modifyInbound" = "Змінити вхідний"
+"deleteInbound" = "Видалити вхідні"
+"deleteInboundContent" = "Ви впевнені, що хочете видалити вхідні?"
+"deleteClient" = "Видалити клієнта"
+"deleteClientContent" = "Ви впевнені, що хочете видалити клієнт?"
+"resetTrafficContent" = "Ви впевнені, що хочете скинути трафік?"
+"copyLink" = "Копіювати URL"
+"address" = "Адреса"
+"network" = "Мережа"
+"destinationPort" = "Порт призначення"
+"targetAddress" = "Цільова адреса"
+"monitorDesc" = "Залиште порожнім, щоб слухати всі IP-адреси"
+"meansNoLimit" = " = Необмежено. (одиниця: ГБ)"
+"totalFlow" = "Загальна витрата"
+"leaveBlankToNeverExpire" = "Залиште порожнім, щоб ніколи не закінчувався"
+"noRecommendKeepDefault" = "Рекомендується зберегти значення за замовчуванням"
+"certificatePath" = "Шлях до файлу"
+"certificateContent" = "Вміст файлу"
+"publicKey" = "Публічний ключ"
+"privatekey" = "Закритий ключ"
+"clickOnQRcode" = "Натисніть QR-код, щоб скопіювати"
+"client" = "Клієнт"
+"export" = "Експортувати всі URL-адреси"
+"clone" = "Клон"
+"cloneInbound" = "Клонувати"
+"cloneInboundContent" = "Усі налаштування цього вхідного потоку, крім порту, IP-адреси прослуховування та клієнтів, будуть застосовані до клону."
+"cloneInboundOk" = "Клонувати"
+"resetAllTraffic" = "Скинути весь вхідний трафік"
+"resetAllTrafficTitle" = "Скинути весь вхідний трафік"
+"resetAllTrafficContent" = "Ви впевнені, що бажаєте скинути трафік усіх вхідних?"
+"resetInboundClientTraffics" = "Скинути трафік клієнтів"
+"resetInboundClientTrafficTitle" = "Скинути трафік клієнтів"
+"resetInboundClientTrafficContent" = "Ви впевнені, що бажаєте скинути трафік клієнтів цього вхідного потоку?"
+"resetAllClientTraffics" = "Скинути весь трафік клієнтів"
+"resetAllClientTrafficTitle" = "Скинути весь трафік клієнтів"
+"resetAllClientTrafficContent" = "Ви впевнені, що бажаєте скинути трафік усіх клієнтів?"
+"delDepletedClients" = "Видалити вичерпані клієнти"
+"delDepletedClientsTitle" = "Видалити вичерпані клієнти"
+"delDepletedClientsContent" = "Ви впевнені, що хочете видалити всі вичерпані клієнти?"
+"email" = "Електронна пошта"
+"emailDesc" = "Будь ласка, надайте унікальну адресу електронної пошти."
+"IPLimit" = "Обмеження IP"
+"IPLimitDesc" = "Вимикає вхідний, якщо кількість перевищує встановлене значення. (0 = вимкнено)"
+"IPLimitlog" = "Журнал IP"
+"IPLimitlogDesc" = "Журнал історії IP-адрес. (щоб увімкнути вхідну після вимкнення, очистіть журнал)"
+"IPLimitlogclear" = "Очистити журнал"
+"setDefaultCert" = "Установити сертифікат з панелі"
+"xtlsDesc" = "Xray має бути v1.7.5"
+"realityDesc" = "Xray має бути v1.8.0+"
+"telegramDesc" = "Будь ласка, вкажіть ID чату Telegram. (використовуйте команду '/id' у боті) або (@userinfobot)"
+"subscriptionDesc" = "Щоб знайти URL-адресу вашої підписки, перейдіть до «Деталі». Крім того, ви можете використовувати одне ім'я для кількох клієнтів."
+"info" = "Інформація"
+"same" = "Те саме"
+"inboundData" = "Вхідні дані"
+"exportInbound" = "Експортувати вхідні"
+"import" = "Імпорт"
+"importInbound" = "Імпортувати вхідний"
+
+[pages.client]
+"add" = "Додати клієнта"
+"edit" = "Редагувати клієнта"
+"submitAdd" = "Додати клієнта"
+"submitEdit" = "Зберегти зміни"
+"clientCount" = "Кількість клієнтів"
+"bulk" = "Додати групу"
+"method" = "Метод"
+"first" = "Перший"
+"last" = "Останній"
+"prefix" = "Префікс"
+"postfix" = "Постфікс"
+"delayedStart" = "Початок використання"
+"expireDays" = "Тривалість"
+"days" = "Дні(в)"
+"renew" = "Автоматичне оновлення"
+"renewDesc" = "Автоматичне поновлення після закінчення терміну дії. (0 = вимкнено)(одиниця: день)"
+
+[pages.inbounds.toasts]
+"obtain" = "Отримати"
+
+[pages.inbounds.stream.general]
+"request" = "Запит"
+"response" = "Відповідь"
+"name" = "Ім'я"
+"value" = "Значення"
+
+[pages.inbounds.stream.tcp]
+"version" = "Версія"
+"method" = "Метод"
+"path" = "Шлях"
+"status" = "Статус"
+"statusDescription" = "Опис стану"
+"requestHeader" = "Заголовок запиту"
+"responseHeader" = "Заголовок відповіді"
+
+[pages.inbounds.stream.quic]
+"encryption" = "Шифрування"
+
+[pages.settings]
+"title" = "Параметри панелі"
+"save" = "Зберегти"
+"infoDesc" = "Кожна внесена тут зміна повинна бути збережена. Перезапустіть панель, щоб застосувати зміни."
+"restartPanel" = "Перезапустити панель"
+"restartPanelDesc" = "Ви впевнені, що бажаєте перезапустити панель? Якщо ви не можете отримати доступ до панелі після перезапуску, будь ласка, перегляньте інформацію журналу панелі на сервері."
+"actions" = "Дії"
+"resetDefaultConfig" = "Відновити значення за замовчуванням"
+"panelSettings" = "Загальні"
+"securitySettings" = "Автентифікація"
+"TGBotSettings" = "Telegram Бот"
+"panelListeningIP" = "Слухати IP"
+"panelListeningIPDesc" = "IP-адреса для веб-панелі. (залиште порожнім, щоб слухати всі IP-адреси)"
+"panelListeningDomain" = "Домен прослуховування"
+"panelListeningDomainDesc" = "Доменне ім'я для веб-панелі. (залиште порожнім, щоб слухати всі домени та IP-адреси)"
+"panelPort" = "Порт прослуховування"
+"panelPortDesc" = "Номер порту для веб-панелі. (має бути невикористаний порт)"
+"publicKeyPath" = "Шлях відкритого ключа"
+"publicKeyPathDesc" = "Шлях до файлу відкритого ключа для веб-панелі. (починається з ‘/‘)"
+"privateKeyPath" = "Шлях приватного ключа"
+"privateKeyPathDesc" = "Шлях до файлу приватного ключа для веб-панелі. (починається з ‘/‘)"
+"panelUrlPath" = "Шлях URL"
+"panelUrlPathDesc" = "Шлях URL для веб-панелі. (починається з ‘/‘ і закінчується ‘/‘)"
+"pageSize" = "Розмір сторінки"
+"pageSizeDesc" = "Визначити розмір сторінки для вхідної таблиці. (0 = вимкнено)"
+"remarkModel" = "Модель зауваження та роздільний символ"
+"datepicker" = "Тип календаря"
+"datepickerPlaceholder" = "Виберіть дату"
+"datepickerDescription" = "Заплановані завдання виконуватимуться на основі цього календаря."
+"sampleRemark" = "Зразок зауваження"
+"oldUsername" = "Поточне ім'я користувача"
+"currentPassword" = "Поточний пароль"
+"newUsername" = "Нове ім'я користувача"
+"newPassword" = "Новий пароль"
+"telegramBotEnable" = "Увімкнути Telegram Bot"
+"telegramBotEnableDesc" = "Вмикає бота Telegram."
+"telegramToken" = "Telegram Токен"
+"telegramTokenDesc" = "Токен бота Telegram, отриманий від '@BotFather'."
+"telegramProxy" = "SOCKS Проксі"
+"telegramProxyDesc" = "Вмикає проксі-сервер SOCKS5 для підключення до Telegram. (відкоригуйте параметри відповідно до посібника)"
+"telegramChatId" = "Ідентифікатор чату адміністратора"
+"telegramChatIdDesc" = "Ідентифікатори чату адміністратора Telegram. (розділені комами) (отримайте тут @userinfobot) або (використовуйте команду '/id' у боті)"
+"telegramNotifyTime" = "Час сповіщення"
+"telegramNotifyTimeDesc" = "Час повідомлення бота Telegram, встановлений для періодичних звітів. (використовуйте формат часу crontab)"
+"tgNotifyBackup" = "Резервне копіювання бази даних"
+"tgNotifyBackupDesc" = "Надіслати файл резервної копії бази даних зі звітом."
+"tgNotifyLogin" = "Сповіщення про вхід"
+"tgNotifyLoginDesc" = "Отримувати сповіщення про ім'я користувача, IP-адресу та час щоразу, коли хтось намагається увійти у вашу веб-панель."
+"sessionMaxAge" = "Тривалість сеансу"
+"sessionMaxAgeDesc" = "Тривалість, протягом якої ви можете залишатися в системі. (одиниця: хвилина)"
+"expireTimeDiff" = "Повідомлення про дату закінчення"
+"expireTimeDiffDesc" = "Отримувати сповіщення про термін дії при досягненні цього порогу. (одиниця: день)"
+"trafficDiff" = "Повідомлення про обмеження трафіку"
+"trafficDiffDesc" = "Отримувати сповіщення про обмеження трафіку при досягненні цього порогу. (одиниця: ГБ)"
+"tgNotifyCpu" = "Сповіщення про завантаження ЦП"
+"tgNotifyCpuDesc" = "Отримувати сповіщення, якщо навантаження ЦП перевищує це порогове значення. (одиниця: %)"
+"timeZone" = "Часовий пояс"
+"timeZoneDesc" = "Заплановані завдання виконуватимуться на основі цього часового поясу."
+"subSettings" = "Підписка"
+"subEnable" = "Увімкнути службу підписки"
+"subEnableDesc" = "Вмикає службу підписки."
+"subListen" = "Слухати IP"
+"subListenDesc" = "IP-адреса для служби підписки. (залиште порожнім, щоб слухати всі IP-адреси)"
+"subPort" = "Слухати порт"
+"subPortDesc" = "Номер порту для служби підписки. (має бути невикористаний порт)"
+"subCertPath" = "Шлях відкритого ключа"
+"subCertPathDesc" = "Шлях до файлу відкритого ключа для служби підписки. (починається з ‘/‘)"
+"subKeyPath" = "Шлях приватного ключа"
+"subKeyPathDesc" = "Шлях до файлу приватного ключа для служби підписки. (починається з ‘/‘)"
+"subPath" = "Шлях URI"
+"subPathDesc" = "Шлях URI для служби підписки. (починається з ‘/‘ і закінчується ‘/‘)"
+"subDomain" = "Домен прослуховування"
+"subDomainDesc" = "Ім'я домену для служби підписки. (залиште порожнім, щоб слухати всі домени та IP-адреси)"
+"subUpdates" = "Інтервали оновлення"
+"subUpdatesDesc" = "Інтервали оновлення URL-адреси підписки в клієнтських програмах. (одиниця: година)"
+"subEncrypt" = "Закодувати"
+"subEncryptDesc" = "Повернений вміст послуги підписки матиме кодування Base64."
+"subShowInfo" = "Показати інформацію про використання"
+"subShowInfoDesc" = "Залишок трафіку та дата відображатимуться в клієнтських програмах."
+"subURI" = "URI зворотного проксі"
+"subURIDesc" = "URI до URL-адреси підписки для використання за проксі."
+"fragment" = "Фрагментація"
+"fragmentDesc" = "Увімкнути фрагментацію для пакету привітання TLS"
+"fragmentSett" = "Параметри фрагментації"
+"mux" = "Mux"
+"muxDesc" = "Передавати кілька незалежних потоків даних у межах встановленого потоку даних."
+"muxSett" = "Налаштування Mux"
+"direct" = "Пряме підключення"
+"directDesc" = "Безпосередньо встановлює з’єднання з доменами або діапазонами IP певної країни."
+"directSett" = "Параметри прямого підключення"
+
+[pages.xray]
+"title" = "Xray конфігурації"
+"save" = "Зберегти"
+"restart" = "Перезапустити Xray"
+"basicTemplate" = "Базовий шаблон"
+"advancedTemplate" = "Додатково"
+"generalConfigs" = "Загальні конфігурації"
+"generalConfigsDesc" = "Ці параметри визначатимуть загальні налаштування."
+"logConfigs" = "Журнал"
+"logConfigsDesc" = "Журнали можуть вплинути на ефективність вашого сервера. Рекомендується вмикати його з розумом лише у випадку ваших потреб"
+"blockConfigs" = "Захисний екран"
+"blockConfigsDesc" = "Ці параметри блокуватимуть трафік на основі конкретних запитуваних протоколів і веб-сайтів."
+"blockCountryConfigs" = "Заблокувати країну"
+"blockCountryConfigsDesc" = "Ці параметри блокуватимуть трафік на основі конкретної запитуваної країни."
+"directCountryConfigs" = "Пряма країна"
+"directCountryConfigsDesc" = "Пряме підключення забезпечує, що конкретний трафік не маршрутизується через інший сервер."
+"ipv4Configs" = "Маршрутизація IPv4"
+"ipv4ConfigsDesc" = "Ці параметри спрямовуватимуть трафік на основі певного призначення через IPv4."
+"warpConfigs" = "WARP маршрутизація"
+"warpConfigsDesc" = "Ці параметри маршрутизуватимуть трафік на основі певного пункту призначення через WARP."
+"Template" = "Шаблон розширеної конфігурації Xray"
+"TemplateDesc" = "Остаточний конфігураційний файл Xray буде створено на основі цього шаблону."
+"FreedomStrategy" = "Стратегія протоколу свободи"
+"FreedomStrategyDesc" = "Установити стратегію виведення для мережі в протоколі свободи."
+"RoutingStrategy" = "Загальна стратегія маршрутизації"
+"RoutingStrategyDesc" = "Установити загальну стратегію маршрутизації трафіку для вирішення всіх запитів."
+"Torrent" = "Блокувати протокол BitTorrent"
+"TorrentDesc" = "Блокує протокол BitTorrent."
+"PrivateIp" = "Блокувати підключення до приватних IP-адрес"
+"PrivateIpDesc" = "Блокує встановлення підключень до приватних діапазонів IP."
+"Ads" = "Блокувати рекламу"
+"AdsDesc" = "Блокує рекламні веб-сайти."
+"Family" = "Захист сім'ї"
+"FamilyDesc" = "Блокує вміст для дорослих і веб-сайти з шкідливими програмами."
+"Security" = "Щит безпеки"
+"SecurityDesc" = "Блокує веб-сайти шкідливого програмного забезпечення, фішингу та майнерів."
+"Speedtest" = "Заблокувати Speedtest"
+"SpeedtestDesc" = "Блокує підключення до веб-сайтів для тестування швидкості."
+"IRIp" = "Блокувати підключення до IP-адрес Ірану"
+"IRIpDesc" = "Блокує встановлення з'єднань з діапазонами IP Ірану."
+"IRDomain" = "Блокувати підключення до доменів Ірану"
+"IRDomainDesc" = "Блокує встановлення з'єднань з доменами Ірану."
+"ChinaIp" = "Блокувати підключення до IP-адрес Китаю"
+"ChinaIpDesc" = "Блокує встановлення з'єднань із діапазонами IP-адрес Китаю."
+"ChinaDomain" = "Блокувати підключення до китайських доменів"
+"ChinaDomainDesc" = "Блокує встановлення підключень до доменів Китаю."
+"RussiaIp" = "Блокувати підключення до російських IP-адрес"
+"RussiaIpDesc" = "Блокує встановлення з'єднань з діапазонами IP-адрес Росії."
+"RussiaDomain" = "Блокувати підключення до російських доменів"
+"RussiaDomainDesc" = "Блокує встановлення з'єднань з російськими доменами."
+"VNIp" = "Блокувати підключення до IP-адрес В'єтнаму"
+"VNIpDesc" = "Блокує встановлення з'єднань із діапазонами IP-адрес В'єтнаму."
+"VNDomain" = "Блокувати підключення до доменів В'єтнаму"
+"VNDomainDesc" = "Блокує встановлення з'єднань із доменами В'єтнаму."
+"DirectIRIp" = "Пряме підключення до IP-адрес Ірану"
+"DirectIRIpDesc" = "Безпосередньо встановлює з'єднання з діапазонами IP Ірану."
+"DirectIRDomain" = "Пряме підключення до доменів Ірану"
+"DirectIRDomainDesc" = "Безпосередньо встановлює підключення до доменів Ірану."
+"DirectChinaIp" = "Пряме підключення до китайських IP-адрес"
+"DirectChinaIpDesc" = "Безпосередньо встановлює підключення до IP-діапазонів Китаю."
+"DirectChinaDomain" = "Пряме підключення до китайських доменів"
+"DirectChinaDomainDesc" = "Безпосередньо встановлює підключення до доменів Китаю."
+"DirectRussiaIp" = "Пряме підключення до IP-адрес Росії"
+"DirectRussiaIpDesc" = "Безпосередньо встановлює з'єднання з діапазонами IP-адрес Росії."
+"DirectRussiaDomain" = "Пряме підключення до російських доменів"
+"DirectRussiaDomainDesc" = "Безпосередньо встановлює підключення до російських доменів."
+"DirectVNIp" = "Пряме підключення до IP-адрес В'єтнаму"
+"DirectVNIpDesc" = "Безпосередньо встановлює з'єднання з діапазонами IP-адрес В'єтнаму."
+"DirectVNDomain" = "Пряме підключення до доменів В'єтнаму"
+"DirectVNDomainDesc" = "Безпосередньо встановлює з'єднання з доменами В'єтнаму."
+"GoogleIPv4" = "Google"
+"GoogleIPv4Desc" = "Направляє трафік до Google через IPv4."
+"NetflixIPv4" = "Netflix"
+"NetflixIPv4Desc" = "Направляє трафік до Netflix через IPv4."
+"GoogleWARP" = "Google"
+"GoogleWARPDesc" = "Додати маршрутизацію для Google через WARP."
+"OpenAIWARP" = "ChatGPT"
+"OpenAIWARPDesc" = "Направляє трафік до ChatGPT через WARP."
+"NetflixWARP" = "Netflix"
+"NetflixWARPDesc" = "Направляє трафік до Netflix через WARP."
+"MetaWARP" = "Meta"
+"MetaWARPDesc" = "Направляє трафік до Meta (Instagram, Facebook, WhatsApp, Threads,...) через WARP."
+"AppleWARP" = "Apple"
+"AppleWARPDesc" = "Направляє трафік до Apple через WARP."
+"RedditWARP" = "Reddit"
+"RedditWARPDesc" = "Направляє трафік до Reddit через WARP."
+"SpotifyWARP" = "Spotify"
+"SpotifyWARPDesc" = "Направляє трафік до Spotify через WARP."
+"IRWARP" = "Іранські домени"
+"IRWARPDesc" = "Направляє трафік до доменів Ірану через WARP"
+"Inbounds" = "Вхідні"
+"InboundsDesc" = "Прийняття певних клієнтів."
+"Outbounds" = "Вихід"
+"Balancers" = "Балансери"
+"OutboundsDesc" = "Встановити шлях вихідного трафіку."
+"Routings" = "Правила маршрутизації"
+"RoutingsDesc" = "Пріоритет кожного правила важливий!"
+"completeTemplate" = "Усі"
+"logLevel" = "Рівень журналу"
+"logLevelDesc" = "Рівень журналу для журналів помилок із зазначенням інформації, яку потрібно записати."
+"accessLog" = "Журнал доступу"
+"accessLogDesc" = "Шлях до файлу журналу доступу. Спеціальне значення 'none' вимикає журнали доступу"
+"errorLog" = "Журнал помилок"
+"errorLogDesc" = "Шлях до файлу журналу помилок. Спеціальне значення 'none' вимикає журнали помилок"
+
+[pages.xray.rules]
+"first" = "Перший"
+"last" = "Останній"
+"up" = "Вгору"
+"down" = "Вниз"
+"source" = "Джерело"
+"dest" = "Пункт призначення"
+"inbound" = "Вхідний"
+"outbound" = "Вихідний"
+"balancer" = "Балансувальник"
+"info" = "Інформація"
+"add" = "Додати правило"
+"edit" = "Редагувати правило"
+"useComma" = "Елементи, розділені комами"
+
+[pages.xray.outbound]
+"addOutbound" = "Додати вихідний"
+"addReverse" = "Додати реверс"
+"editOutbound" = "Редагувати вихідні"
+"editReverse" = "Редагувати реверс"
+"tag" = "Тег"
+"tagDesc" = "Унікальний тег"
+"address" = "Адреса"
+"reverse" = "Зворотний"
+"domain" = "Домен"
+"type" = "Тип"
+"bridge" = "Міст"
+"portal" = "Портал"
+"intercon" = "Взаємозв'язок"
+"settings" = "Налаштування"
+"accountInfo" = "Інформація про обліковий запис"
+"outboundStatus" = "Статус виходу"
+"sendThrough" = "Надіслати через"
+
+[pages.xray.balancer]
+"addBalancer" = "Додати балансир"
+"editBalancer" = "Редагувати балансир"
+"balancerStrategy" = "Стратегія"
+"balancerSelectors" = "Селектори"
+"tag" = "Тег"
+"tagDesc" = "Унікальний тег"
+"balancerDesc" = "Неможливо використовувати balancerTag і outboundTag одночасно. Якщо використовувати одночасно, працюватиме лише outboundTag."
+
+[pages.xray.wireguard]
+"secretKey" = "Приватний ключ"
+"publicKey" = "Публічний ключ"
+"allowedIPs" = "Дозволені IP-адреси"
+"endpoint" = "Кінцева точка"
+"psk" = "Спільний ключ"
+"domainStrategy" = "Стратегія домену"
+
+[pages.xray.dns]
+"enable" = "Увімкнути DNS"
+"enableDesc" = "Увімкнути вбудований DNS-сервер"
+"tag" = "Мітка вхідного DNS"
+"tagDesc" = "Ця мітка буде доступна як вхідна мітка в правилах маршрутизації."
+"strategy" = "Стратегія запиту"
+"strategyDesc" = "Загальна стратегія вирішення доменних імен"
+"add" = "Додати сервер"
+"edit" = "Редагувати сервер"
+"domains" = "Домени"
+
+[pages.xray.fakedns]
+"add" = "Додати підроблений DNS"
+"edit" = "Редагувати підроблений DNS"
+"ipPool" = "Підмережа IP-пулу"
+"poolSize" = "Розмір пулу"
+
+[pages.settings.security]
+"admin" = "Адміністратор"
+"secret" = "Секретний маркер"
+"loginSecurity" = "Безпечний вхід"
+"loginSecurityDesc" = "Додає додатковий рівень автентифікації для забезпечення більшої безпеки."
+"secretToken" = "Секретний маркер"
+"secretTokenDesc" = "Будь ласка, надійно зберігайте цей маркер у безпечному місці. Цей маркер потрібен для входу, і його неможливо відновити."
+
+[pages.settings.toasts]
+"modifySettings" = "Змінити налаштування"
+"getSettings" = "Отримати налаштування"
+"modifyUser" = "Змінити адміністратора"
+"originalUserPassIncorrect" = "Поточне ім'я користувача або пароль недійсні"
+"userPassMustBeNotEmpty" = "Нове ім'я користувача та пароль порожні"
+
+[tgbot]
+"keyboardClosed" = "❌ Спеціальна клавіатура закрита!"
+"noResult" = "❗ Немає результату!"
+"noQuery" = "❌ Запит не знайдено! Скористайтеся командою ще раз!"
+"wentWrong" = "❌ Щось пішло не так!"
+"noIpRecord" = "❗ Немає IP-запису!"
+"noInbounds" = "❗ Вхідних не знайдено!"
+"unlimited" = "♾ Необмежений (скинути)"
+"add" = "Додати"
+"month" = "Місяць"
+"months" = "Місяці"
+"day" = "День"
+"days" = "Дні"
+"hours" = "Годинник"
+"unknown" = "Невідомо"
+"inbounds" = "Вхідні"
+"clients" = "Клієнти"
+"offline" = "🔴 Офлайн"
+"online" = "🟢 Онлайн"
+
+[tgbot.commands]
+"unknown" = "❗ Невідома команда."
+"pleaseChoose" = "👇 Будь ласка, виберіть:\r\n"
+"help" = "🤖 Ласкаво просимо до цього бота! Він розроблений, щоб надавати певні дані з веб-панелі та дозволяє вносити зміни за потреби.\r\n\r\n"
+"start" = "👋 Привіт {{ .Firstname }}.\r\n"
+"welcome" = "🤖 Ласкаво просимо до {{ .Hostname }} бота керування.\r\n"
+"status" = "✅ Бот в порядку!"
+"usage" = "❗ Введіть текст для пошуку!"
+"getID" = "🆔 Ваш ідентифікатор: {{ .ID }}
"
+"helpAdminCommands" = "Для пошуку електронної пошти клієнта:\r\n/usage [Електронна пошта]
\r\n\r\nДля пошуку вхідних (зі статистикою клієнта):\r\n/inbound [Примітка]
\r\n\r\nID чату Telegram:\r\n/id
"
+"helpClientCommands" = "Для пошуку статистики використовуйте наступну команду:\r\n/usage [Електронна пошта]
\r\n\r\nID чату Telegram:\r\n/id
"
+
+[tgbot.messages]
+"cpuThreshold" = "🔴 Навантаження ЦП {{ .Percent }}% перевищує порогове значення {{ .Threshold }}%"
+"selectUserFailed" = "❌ Помилка під час вибору користувача!"
+"userSaved" = "✅ Користувача Telegram збережено."
+"loginSuccess" = "✅ Успішно ввійшли в панель\r\n"
+"loginFailed" = "❗️ Помилка входу в панель.\r\n"
+"report" = "🕰 Заплановані звіти: {{ .RunTime }}\r\n"
+"datetime" = "⏰ Дата й час: {{ .DateTime }}\r\n"
+"hostname" = "💻 Хост: {{ .Hostname }}\r\n"
+"version" = "🚀 3X-UI Версія: {{ .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" = "📋 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"
+"username" = "👤 Ім'я користувача: {{ .Username }}\r\n"
+"time" = "⏰ Час: {{ .Time }}\r\n"
+"inbound" = "📍 Inbound: {{ .Remark }}\r\n"
+"port" = "🔌 Порт: {{ .Port }}\r\n"
+"expire" = "📅 Дата закінчення: {{ .Time }}\r\n"
+"expireIn" = "📅 Термін дії: {{ .Time }}\r\n"
+"active" = "💡 Активний: {{ .Enable }}\r\n"
+"enabled" = "🚨 Увімкнено: {{ .Enable }}\r\n"
+"online" = "🌐 Стан підключення: {{ .Status }}\r\n"
+"email" = "📧 Електронна пошта: {{ .Email }}\r\n"
+"upload" = "🔼 Upload: ↑{{ .Upload }}\r\n"
+"download" = "🔽 Download: ↓{{ .Download }}\r\n"
+"total" = "📊 Всього: ↑↓{{ .UpDown }} / {{ .Total }}\r\n"
+"TGUser" = "👤 Користувач Telegram: {{ .TelegramID }}\r\n"
+"exhaustedMsg" = "🚨 Вичерпано {{ .Type }}:\r\n"
+"exhaustedCount" = "🚨 Вичерпано кількість {{ .Type }} count:\r\n"
+"onlinesCount" = "🌐 Онлайн-клієнти: {{ .Count }}\r\n"
+"disabled" = "🛑 Вимкнено: {{ .Disabled }}\r\n"
+"depleteSoon" = "🔜 Скоро вичерпається: {{ .Deplete }}\r\n\r\n"
+"backupTime" = "🗄 Час резервного копіювання: {{ .Time }}\r\n"
+"refreshedOn" = "\r\n📋🔄 Оновлено: {{ .Time }}\r\n\r\n"
+"yes" = "✅ Так"
+"no" = "❌ Ні"
+
+[tgbot.buttons]
+"closeKeyboard" = "❌ Закрити клавіатуру"
+"cancel" = "❌ Скасувати"
+"cancelReset" = "❌ Скасувати скидання"
+"cancelIpLimit" = "❌ Скасувати обмеження IP"
+"confirmResetTraffic" = "✅ Підтвердити скидання трафіку?"
+"confirmClearIps" = "✅ Підтвердити очищення IP-адрес?"
+"confirmRemoveTGUser" = "✅ Підтвердити видалення користувача Telegram?"
+"confirmToggle" = "✅ Підтвердити ввімкнути/вимкнути користувача?"
+"dbBackup" = "Отримати резервну копію БД"
+"serverUsage" = "Використання сервера"
+"getInbounds" = "Отримати вхідні"
+"depleteSoon" = "Скоро вичерпати"
+"clientUsage" = "Отримати використання"
+"onlines" = "Онлайн-клієнти"
+"commands" = "Команди"
+"refresh" = "🔄 Оновити"
+"clearIPs" = "❌ Очистити IP-адреси"
+"removeTGUser" = "❌ Видалити користувача Telegram"
+"selectTGUser" = "👤 Виберіть користувача Telegram"
+"selectOneTGUser" = "👤 Виберіть користувача Telegram:"
+"resetTraffic" = "📈 Скинути трафік"
+"resetExpire" = "📅 Змінити термін дії"
+"ipLog" = "🔢 IP журнал"
+"ipLimit" = "🔢 IP Ліміт"
+"setTGUser" = "👤 Встановити користувача Telegram"
+"toggle" = "🔘 Увімкнути / Вимкнути"
+"custom" = "🔢 Custom"
+"confirmNumber" = "✅ Підтвердити: {{ .Num }}"
+"confirmNumberAdd" = "✅ Підтвердити додавання: {{ .Num }}"
+"limitTraffic" = "🚧 Ліміт трафіку"
+"getBanLogs" = "Отримати журнали заборон"
+
+[tgbot.answers]
+"successfulOperation" = "✅ Операція успішна!"
+"errorOperation" = "❗ Помилка в роботі."
+"getInboundsFailed" = "❌ Не вдалося отримати вхідні повідомлення."
+"canceled" = "❌ {{ .Email }}: Операцію скасовано."
+"clientRefreshSuccess" = "✅ {{ .Email }}: Клієнт успішно оновлено."
+"IpRefreshSuccess" = "✅ {{ .Email }}: IP-адреси успішно оновлено."
+"TGIdRefreshSuccess" = "✅ {{ .Email }}: Користувач Telegram клієнта успішно оновлено."
+"resetTrafficSuccess" = "✅ {{ .Email }}: Трафік скинуто успішно."
+"setTrafficLimitSuccess" = "✅ {{ .Email }}: Ліміт трафіку успішно збережено."
+"expireResetSuccess" = "✅ {{ .Email }}: Успішно скинуто дні закінчення терміну дії."
+"resetIpSuccess" = "✅ {{ .Email }}: IP обмеження {{ .Count }} успішно збережено."
+"clearIpSuccess" = "✅ {{ .Email }}: IP успішно очищено."
+"getIpLog" = "✅ {{ .Email }}: Отримати IP-журнал."
+"getUserInfo" = "✅ {{ .Email }}: Отримати інформацію про користувача Telegram."
+"removedTGUserSuccess" = "✅ {{ .Email }}: Користувача Telegram видалено успішно."
+"enableSuccess" = "✅ {{ .Email }}: Увімкнути успішно."
+"disableSuccess" = "✅ {{ .Email }}: Успішно вимкнено."
+"askToAddUserId" = "Вашу конфігурацію не знайдено!\r\nБудь ласка, попросіть свого адміністратора використовувати ваш ідентифікатор Telegram у вашій конфігурації.\r\n\r\nВаш ідентифікатор користувача: {{ .TgUserID }}
"
diff --git a/translate.vi_VN.toml b/translate.vi_VN.toml
new file mode 100644
index 00000000..5b3a98d2
--- /dev/null
+++ b/translate.vi_VN.toml
@@ -0,0 +1,638 @@
+"username" = "Tên người dùng"
+"password" = "Mật khẩu"
+"login" = "Đăng nhập"
+"confirm" = "Xác nhận"
+"cancel" = "Hủy bỏ"
+"close" = "Đóng"
+"copy" = "Sao chép"
+"copied" = "Đã sao chép"
+"download" = "Tải xuống"
+"remark" = "Ghi chú"
+"enable" = "Kích hoạt"
+"protocol" = "Giao thức"
+"search" = "Tìm kiếm"
+"filter" = "Bộ lọc"
+"loading" = "Đang tải"
+"second" = "Giây"
+"minute" = "Phút"
+"hour" = "Giờ"
+"day" = "Ngày"
+"check" = "Kiểm tra"
+"indefinite" = "Không xác định"
+"unlimited" = "Không giới hạn"
+"none" = "None"
+"qrCode" = "Mã QR"
+"info" = "Thông tin thêm"
+"edit" = "Chỉnh sửa"
+"delete" = "Xóa"
+"reset" = "Đặt lại"
+"copySuccess" = "Đã sao chép thành công"
+"sure" = "Chắc chắn"
+"encryption" = "Mã hóa"
+"transmission" = "Truyền tải"
+"host" = "Máy chủ"
+"path" = "Đường dẫn"
+"camouflage" = "Ngụy trang"
+"status" = "Trạng thái"
+"enabled" = "Đã kích hoạt"
+"disabled" = "Đã tắt"
+"depleted" = "Depleted"
+"depletingSoon" = "Depleting..."
+"offline" = "Ngoại tuyến"
+"online" = "Trực tuyến"
+"domainName" = "Tên miền"
+"monitor" = "Listening IP"
+"certificate" = "Chứng chỉ số"
+"fail" = "Thất bại"
+"success" = "Thành công"
+"getVersion" = "Lấy phiên bản"
+"install" = "Cài đặt"
+"clients" = "Các khách hàng"
+"usage" = "Sử dụng"
+"secretToken" = "Mã bí mật"
+"remained" = "Còn lại"
+"security" = "Bảo vệ"
+"secAlertTitle" = "Cảnh báo an ninh-Tiếng Việt by Ohoang7"
+"secAlertSsl" = "Kết nối này không an toàn; Vui lòng không nhập thông tin nhạy cảm cho đến khi TLS được kích hoạt để bảo vệ dữ liệu của Bạn"
+"secAlertConf" = "Một số cài đặt có thể dễ bị tấn công. Đề xuất tăng cường các giao thức bảo mật để ngăn chặn các vi phạm tiềm ẩn."
+"secAlertSSL" = "Bảng điều khiển thiếu kết nối an toàn. Vui lòng cài đặt chứng chỉ TLS để bảo vệ dữ liệu."
+"secAlertPanelPort" = "Cổng mặc định của bảng điều khiển có thể dễ bị tấn công. Vui lòng cấu hình một cổng ngẫu nhiên hoặc cụ thể."
+"secAlertPanelURI" = "Đường dẫn URI mặc định của bảng điều khiển không an toàn. Vui lòng cấu hình một đường dẫn URI phức tạp."
+"secAlertSubURI" = "Đường dẫn URI mặc định của đăng ký không an toàn. Vui lòng cấu hình một đường dẫn URI phức tạp."
+"secAlertSubJsonURI" = "Đường dẫn URI JSON mặc định của đăng ký không an toàn. Vui lòng cấu hình một đường dẫn URI phức tạp."
+
+[menu]
+"dashboard" = "Trạng thái hệ thống"
+"inbounds" = "Đầu vào khách hàng"
+"settings" = "Cài đặt bảng điều khiển"
+"logout" = "Đăng xuất"
+"xray" = "Cài đặt Xray"
+"link" = "Quản lý"
+
+[pages.login]
+"hello" = "Xin chào"
+"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]
+"invalidFormData" = "Dạng dữ liệu nhập không hợp lệ."
+"emptyUsername" = "Vui lòng nhập tên người dùng."
+"emptyPassword" = "Vui lòng nhập mật khẩu."
+"wrongUsernameOrPassword" = "Tên người dùng hoặc mật khẩu không đúng."
+"successLogin" = "Đăng nhập thành công."
+
+[pages.index]
+"title" = "Trạng thái hệ thống"
+"memory" = "Ram"
+"hard" = "Dung lượng"
+"xrayStatus" = "Xray"
+"stopXray" = "Dừng lại"
+"restartXray" = "Khởi động lại"
+"xraySwitch" = "Phiên bản"
+"xraySwitchClick" = "Chọn phiên bản mà bạn muốn chuyển đổi sang."
+"xraySwitchClickDesk" = "Hãy lựa chọn thận trọng, vì các phiên bản cũ có thể không tương thích với các cấu hình hiện tại."
+"operationHours" = "Thời gian hoạt động"
+"systemLoad" = "Tải hệ thống"
+"systemLoadDesc" = "trung bình tải hệ thống trong 1, 5 và 15 phút qua"
+"connectionTcpCountDesc" = "Tổng số kết nối TCP trên tất cả các thẻ mạng."
+"connectionUdpCountDesc" = "Tổng số kết nối UDP trên tất cả các thẻ mạng."
+"connectionCount" = "Số lượng kết nối"
+"upSpeed" = "Tổng tốc độ tải lên cho tất cả các thẻ mạng."
+"downSpeed" = "Tổng tốc độ tải xuống cho tất cả các thẻ mạng."
+"totalSent" = "Tổng lưu lượng tải lên của tất cả các thẻ mạng kể từ khi hệ thống khởi động."
+"totalReceive" = "Tổng lưu lượng tải xuống trên tất cả các thẻ mạng kể từ khi hệ thống khởi động."
+"xraySwitchVersionDialog" = "Chuyển đổi Phiên bản Xray"
+"xraySwitchVersionDialogDesc" = "Bạn có chắc chắn muốn chuyển đổi phiên bản Xray sang"
+"dontRefresh" = "Đang tiến hành cài đặt, vui lòng không làm mới trang này."
+"logs" = "Nhật ký"
+"config" = "Cấu hình"
+"backup" = "Sao lưu & Khôi phục"
+"backupTitle" = "Sao lưu & Khôi phục Cơ sở dữ liệu"
+"backupDescription" = "Hãy nhớ sao lưu trước khi nhập cơ sở dữ liệu mới."
+"exportDatabase" = "Tải về Cơ sở dữ liệu"
+"importDatabase" = "Tải lên Cơ sở dữ liệu"
+
+[pages.inbounds]
+"title" = "Điểm vào (Inbounds)"
+"totalDownUp" = "Tổng tải lên/tải xuống"
+"totalUsage" = "Tổng sử dụng"
+"inboundCount" = "Số lượng điểm vào"
+"operate" = "Thao tác"
+"enable" = "Kích hoạt"
+"remark" = "Chú thích"
+"protocol" = "Giao thức"
+"port" = "Cổng"
+"traffic" = "Lưu lượng"
+"details" = "Chi tiết"
+"transportConfig" = "Giao vận"
+"expireDate" = "Ngày hết hạn"
+"resetTraffic" = "Đặt lại lưu lượng"
+"addInbound" = "Thêm điểm vào"
+"generalActions" = "Hành động chung"
+"create" = "Tạo mới"
+"update" = "Cập nhật"
+"modifyInbound" = "Chỉnh sửa điểm vào (Inbound)"
+"deleteInbound" = "Xóa điểm vào (Inbound)"
+"deleteInboundContent" = "Xác nhận xóa điểm vào? (Inbound)"
+"deleteClient" = "Xóa người dùng"
+"deleteClientContent" = "Bạn có chắc chắn muốn xóa người dùng không?"
+"resetTrafficContent" = "Xác nhận đặt lại lưu lượng?"
+"copyLink" = "Sao chép liên kết"
+"address" = "Địa chỉ"
+"network" = "Mạng"
+"destinationPort" = "Cổng đích"
+"targetAddress" = "Địa chỉ mục tiêu"
+"monitorDesc" = "Mặc định để trống"
+"meansNoLimit" = " = Không giới hạn (đơn vị: GB)"
+"totalFlow" = "Tổng lưu lượng"
+"leaveBlankToNeverExpire" = "Để trống để không bao giờ hết hạn"
+"noRecommendKeepDefault" = "Không yêu cầu đặc biệt để giữ nguyên cài đặt mặc định"
+"certificatePath" = "Đường dẫn tập"
+"certificateContent" = "Nội dung tập"
+"publicKey" = "Khóa công khai"
+"privatekey" = "Khóa cá nhân"
+"clickOnQRcode" = "Nhấn vào Mã QR để sao chép"
+"client" = "Người dùng"
+"export" = "Xuất liên kết"
+"clone" = "Sao chép"
+"cloneInbound" = "Sao chép điểm vào (Inbound)"
+"cloneInboundContent" = "Tất cả cài đặt của điểm vào này, trừ Cổng, IP nghe và máy khách, sẽ được áp dụng cho bản sao."
+"cloneInboundOk" = "Sao chép"
+"resetAllTraffic" = "Đặt lại lưu lượng cho tất cả điểm vào"
+"resetAllTrafficTitle" = "Đặt lại lưu lượng cho tất cả điểm vào"
+"resetAllTrafficContent" = "Bạn có chắc chắn muốn đặt lại lưu lượng cho tất cả điểm vào không?"
+"resetInboundClientTraffics" = "Đặt lại lưu lượng toàn bộ người dùng của điểm vào"
+"resetInboundClientTrafficTitle" = "Đặt lại lưu lượng cho toàn bộ người dùng của điểm vào"
+"resetInboundClientTrafficContent" = "Bạn có chắc chắn muốn đặt lại tất cả lưu lượng cho các người dùng của điểm vào này không?"
+"resetAllClientTraffics" = "Đặt lại lưu lượng cho toàn bộ người dùng"
+"resetAllClientTrafficTitle" = "Đặt lại lưu lượng cho toàn bộ người dùng"
+"resetAllClientTrafficContent" = "Bạn có chắc chắn muốn đặt lại tất cả lưu lượng cho toàn bộ người dùng không?"
+"delDepletedClients" = "Xóa các người dùng đã cạn kiệt"
+"delDepletedClientsTitle" = "Xóa các người dùng đã cạn kiệt"
+"delDepletedClientsContent" = "Bạn có chắc chắn muốn xóa toàn bộ người dùng đã cạn kiệt không?"
+"email" = "Email"
+"emailDesc" = "Vui lòng cung cấp một địa chỉ email duy nhất."
+"IPLimit" = "Giới hạn IP"
+"IPLimitDesc" = "Vô hiệu hóa điểm vào nếu số lượng vượt quá giá trị đã nhập (nhập 0 để vô hiệu hóa giới hạn IP)."
+"IPLimitlog" = "Lịch sử IP"
+"IPLimitlogDesc" = "Lịch sử đăng nhập IP (trước khi kích hoạt điểm vào sau khi bị vô hiệu hóa bởi giới hạn IP, bạn nên xóa lịch sử)."
+"IPLimitlogclear" = "Xóa Lịch sử"
+"setDefaultCert" = "Đặt chứng chỉ từ bảng điều khiển"
+"xtlsDesc" = "Xray core cần phiên bản 1.7.5"
+"realityDesc" = "Xray core cần phiên bản 1.8.0 hoặc cao hơn."
+"telegramDesc" = "Vui lòng cung cấp ID Trò chuyện Telegram. (sử dụng lệnh '/id' trong bot) hoặc (@userinfobot)"
+"subscriptionDesc" = "Bạn có thể tìm liên kết gói đăng ký của mình trong Chi tiết, cũng như bạn có thể sử dụng cùng tên cho nhiều cấu hình khác nhau"
+"info" = "Thông tin"
+"same" = "Giống nhau"
+"inboundData" = "Dữ liệu gửi đến"
+"exportInbound" = "Xuất nhập khẩu"
+"import" = "Nhập"
+"importInbound" = "Nhập inbound"
+
+[pages.client]
+"add" = "Thêm người dùng"
+"edit" = "Chỉnh sửa người dùng"
+"submitAdd" = "Thêm"
+"submitEdit" = "Lưu thay đổi"
+"clientCount" = "Số lượng người dùng"
+"bulk" = "Thêm hàng loạt"
+"method" = "Phương pháp"
+"first" = "Đầu tiên"
+"last" = "Cuối cùng"
+"prefix" = "Tiền tố"
+"postfix" = "Hậu tố"
+"delayedStart" = "Bắt đầu ở Lần Đầu"
+"expireDays" = "Khoảng thời gian"
+"days" = "ngày"
+"renew" = "Tự động gia hạn"
+"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"
+
+[pages.inbounds.stream.general]
+"request" = "Lời yêu cầu"
+"response" = "Phản ứng"
+"name" = "Tên"
+"value" = "Giá trị"
+
+[pages.inbounds.stream.tcp]
+"version" = "Phiên bản"
+"method" = "Phương pháp"
+"path" = "Đường dẫn"
+"status" = "Trạng thái"
+"statusDescription" = "Tình trạng Mô tả"
+"requestHeader" = "Header yêu cầu"
+"responseHeader" = "Header phản hồi"
+
+[pages.inbounds.stream.quic]
+"encryption" = "Mã hóa"
+
+[pages.settings]
+"title" = "Cài đặt"
+"save" = "Lưu"
+"infoDesc" = "Mọi thay đổi được thực hiện ở đây cần phải được lưu. Vui lòng khởi động lại bảng điều khiển để áp dụng các thay đổi."
+"restartPanel" = "Khởi động lại bảng điều khiển"
+"restartPanelDesc" = "Bạn có chắc chắn muốn khởi động lại bảng điều khiển? Nhấn OK để khởi động lại sau 3 giây. Nếu bạn không thể truy cập bảng điều khiển sau khi khởi động lại, vui lòng xem thông tin nhật ký của bảng điều khiển trên máy chủ."
+"actions" = "Hành động"
+"resetDefaultConfig" = "Đặt lại cấu hình mặc định"
+"panelSettings" = "Bảng điều khiển"
+"securitySettings" = "Bảo mật"
+"TGBotSettings" = "Bot Telegram"
+"panelListeningIP" = "IP Nghe của bảng điều khiển"
+"panelListeningIPDesc" = "Mặc định để trống để nghe tất cả các IP."
+"panelListeningDomain" = "Tên miền của nghe bảng điều khiển"
+"panelListeningDomainDesc" = "Mặc định để trống để nghe tất cả các tên miền và IP"
+"panelPort" = "Cổng bảng điều khiển"
+"panelPortDesc" = "Cổng được sử dụng để kết nối với bảng điều khiển này"
+"publicKeyPath" = "Đường dẫn file chứng chỉ bảng điều khiển"
+"publicKeyPathDesc" = "Điền vào đường dẫn đầy đủ (bắt đầu từ '/')"
+"privateKeyPath" = "Đường dẫn file khóa của chứng chỉ bảng điều khiển"
+"privateKeyPathDesc" = "Điền vào đường dẫn đầy đủ (bắt đầu từ '/')"
+"panelUrlPath" = "Đường dẫn gốc URL bảng điều khiển"
+"panelUrlPathDesc" = "Phải bắt đầu và kết thúc bằng '/'"
+"pageSize" = "Kích thước phân trang"
+"pageSizeDesc" = "Xác định kích thước trang cho bảng gửi đến. Đặt 0 để tắt"
+"remarkModel" = "Ghi chú mô hình và ký tự phân tách"
+"datepicker" = "Kiểu lịch"
+"datepickerPlaceholder" = "Chọn ngày"
+"datepickerDescription" = "Tác vụ chạy theo lịch trình sẽ chạy theo kiểu lịch này."
+"sampleRemark" = "Nhận xét mẫu"
+"oldUsername" = "Tên người dùng hiện tại"
+"currentPassword" = "Mật khẩu hiện tại"
+"newUsername" = "Tên người dùng mới"
+"newPassword" = "Mật khẩu mới"
+"telegramBotEnable" = "Bật Bot Telegram"
+"telegramBotEnableDesc" = "Kết nối với các tính năng của bảng điều khiển này thông qua bot Telegram"
+"telegramToken" = "Token Telegram"
+"telegramTokenDesc" = "Bạn phải nhận token từ quản lý bot Telegram @botfather"
+"telegramProxy" = "Socks5 Proxy"
+"telegramProxyDesc" = "Nếu bạn cần socks5 proxy để kết nối với Telegram. Điều chỉnh cài đặt của nó theo hướng dẫn."
+"telegramChatId" = "Chat ID Telegram của quản trị viên"
+"telegramChatIdDesc" = "Nhiều Chat ID phân tách bằng dấu phẩy. Sử dụng @userinfobot hoặc sử dụng lệnh '/id' trong bot để lấy Chat ID của bạn."
+"telegramNotifyTime" = "Thời gian thông báo của bot Telegram"
+"telegramNotifyTimeDesc" = "Sử dụng định dạng thời gian Crontab."
+"tgNotifyBackup" = "Sao lưu Cơ sở dữ liệu"
+"tgNotifyBackupDesc" = "Bao gồm tệp sao lưu cơ sở dữ liệu với thông báo báo cáo."
+"tgNotifyLogin" = "Thông báo Đăng nhập"
+"tgNotifyLoginDesc" = "Hiển thị tên người dùng, địa chỉ IP và thời gian khi ai đó cố gắng đăng nhập vào bảng điều khiển của bạn."
+"sessionMaxAge" = "Thời gian tối đa của phiên"
+"sessionMaxAgeDesc" = "Thời gian của phiên đăng nhập (đơn vị: phút)"
+"expireTimeDiff" = "Ngưỡng hết hạn cho thông báo"
+"expireTimeDiffDesc" = "Nhận thông báo về việc hết hạn tài khoản trước ngưỡng này (đơn vị: ngày)"
+"trafficDiff" = "Ngưỡng lưu lượng cho thông báo"
+"trafficDiffDesc" = "Nhận thông báo về việc cạn kiệt lưu lượng trước khi đạt đến ngưỡng này (đơn vị: GB)"
+"tgNotifyCpu" = "Ngưỡng cảnh báo tỷ lệ CPU"
+"tgNotifyCpuDesc" = "Nhận thông báo nếu tỷ lệ sử dụng CPU vượt quá ngưỡng này (đơn vị: %)"
+"timeZone" = "Múi giờ"
+"timeZoneDesc" = "Các tác vụ được lên lịch chạy theo thời gian trong múi giờ này."
+"subSettings" = "Gói đăng ký"
+"subEnable" = "Bật dịch vụ"
+"subEnableDesc" = "Tính năng gói đăng ký với cấu hình riêng"
+"subListen" = "Listening IP"
+"subListenDesc" = "Mặc định để trống để nghe tất cả các IP"
+"subPort" = "Cổng gói đăng ký"
+"subPortDesc" = "Số cổng dịch vụ đăng ký phải chưa được sử dụng trên máy chủ"
+"subCertPath" = "Đường dẫn file chứng chỉ gói đăng ký"
+"subCertPathDesc" = "Điền vào đường dẫn đầy đủ (bắt đầu với '/')"
+"subKeyPath" = "Đường dẫn file khóa của chứng chỉ gói đăng ký"
+"subKeyPathDesc" = "Điền vào đường dẫn đầy đủ (bắt đầu với '/')"
+"subPath" = "Đường dẫn gốc URL gói đăng ký"
+"subPathDesc" = "Phải bắt đầu và kết thúc bằng '/'"
+"subDomain" = "Tên miền con"
+"subDomainDesc" = "Mặc định để trống để nghe tất cả các tên miền và IP"
+"subUpdates" = "Khoảng thời gian cập nhật gói đăng ký"
+"subUpdatesDesc" = "Số giờ giữa các cập nhật trong ứng dụng khách"
+"subEncrypt" = "Mã hóa cấu hình"
+"subEncryptDesc" = "Mã hóa các cấu hình được trả về trong gói đăng ký"
+"subShowInfo" = "Hiển thị thông tin sử dụng"
+"subShowInfoDesc" = "Hiển thị lưu lượng truy cập còn lại và ngày sau tên cấu hình"
+"subURI" = "URI proxy trung gian"
+"subURIDesc" = "Thay đổi URI cơ sở của URL gói đăng ký để sử dụng cho proxy trung gian"
+"fragment" = "Sự phân mảnh"
+"fragmentDesc" = "Kích hoạt phân mảnh cho gói TLS hello"
+"fragmentSett" = "Cài đặt phân mảnh"
+"mux" = "Mux"
+"muxDesc" = "Truyền nhiều luồng dữ liệu độc lập trong luồng dữ liệu đã thiết lập."
+"muxSett" = "Mux Cài đặt"
+"direct" = "Kết nối trực tiếp"
+"directDesc" = "Trực tiếp thiết lập kết nối với tên miền hoặc dải IP của một quốc gia cụ thể."
+"directSett" = "Tùy chọn kết nối trực tiếp"
+
+[pages.xray]
+"title" = "Cài đặt Xray"
+"save" = "Lưu cài đặt"
+"restart" = "Khởi động lại Xray"
+"basicTemplate" = "Mẫu Cơ bản"
+"advancedTemplate" = "Mẫu Nâng cao"
+"generalConfigs" = "Cấu hình Chung"
+"generalConfigsDesc" = "Những tùy chọn này sẽ cung cấp điều chỉnh tổng quát."
+"logConfigs" = "Nhật ký"
+"logConfigsDesc" = "Nhật ký có thể ảnh hưởng đến hiệu suất máy chủ của bạn. Bạn chỉ nên kích hoạt nó một cách khôn ngoan trong trường hợp bạn cần"
+"blockConfigs" = "Cấu hình Chặn"
+"blockConfigsDesc" = "Những tùy chọn này sẽ ngăn người dùng kết nối đến các giao thức và trang web cụ thể."
+"blockCountryConfigs" = "Cấu hình Chặn Quốc gia"
+"blockCountryConfigsDesc" = "Những tùy chọn này sẽ ngăn người dùng kết nối đến các tên miền quốc gia cụ thể."
+"directCountryConfigs" = "Cấu hình Kết nối Trực tiếp Quốc gia"
+"directCountryConfigsDesc" = "Một kết nối trực tiếp đảm bảo rằng lưu lượng cụ thể không được định tuyến qua một máy chủ khác."
+"ipv4Configs" = "Cấu hình IPv4"
+"ipv4ConfigsDesc" = "Những tùy chọn này sẽ chỉ định kết nối đến các tên miền mục tiêu qua IPv4."
+"warpConfigs" = "Cấu hình WARP"
+"warpConfigsDesc" = "Cảnh báo: Trước khi sử dụng những tùy chọn này, hãy cài đặt WARP ở chế độ proxy socks5 trên máy chủ của bạn bằng cách làm theo các bước trên GitHub của bảng điều khiển. WARP sẽ định tuyến lưu lượng đến các trang web qua máy chủ Cloudflare."
+"Template" = "Mẫu Cấu hình Xray"
+"TemplateDesc" = "Tạo tệp cấu hình Xray cuối cùng dựa trên mẫu này."
+"FreedomStrategy" = "Cấu hình Chiến lược cho Giao thức Freedom"
+"FreedomStrategyDesc" = "Đặt chiến lược đầu ra của mạng trong Giao thức Freedom."
+"RoutingStrategy" = "Cấu hình Chiến lược Định tuyến Tên miền"
+"RoutingStrategyDesc" = "Đặt chiến lược định tuyến tổng thể cho việc giải quyết DNS."
+"Torrent" = "Cấu hình sử dụng BitTorrent"
+"TorrentDesc" = "Thay đổi mẫu cấu hình để tránh việc người dùng sử dụng BitTorrent."
+"PrivateIp" = "Cấm kết nối đến dải IP Riêng tư"
+"PrivateIpDesc" = "Thay đổi mẫu cấu hình để tránh kết nối đến dải IP riêng tư."
+"Ads" = "Chặn Quảng cáo"
+"AdsDesc" = "Thay đổi mẫu cấu hình để chặn quảng cáo."
+"Family" = "Chặn phần mềm độc hại và nội dung người lớn"
+"FamilyDesc" = "Trình phân giải DNS của Cloudflare để chặn phần mềm độc hại và nội dung người lớn để bảo vệ gia đình."
+"Security" = "Chặn các trang web chứa phần mềm độc hại, lừa đảo và khai thác tiền điện tử"
+"SecurityDesc" = "Thay đổi mẫu cấu hình để bảo vệ Bảo mật."
+"Speedtest" = "Chặn Trang web Speedtest"
+"SpeedtestDesc" = "Thay đổi mẫu cấu hình để tránh kết nối đến các trang web Speedtest."
+"IRIp" = "Vô hiệu hóa kết nối đến dải IP của Iran"
+"IRIpDesc" = "Thay đổi mẫu cấu hình để tránh kết nối đến dải IP của Iran."
+"IRDomain" = "Vô hiệu hóa kết nối đến tên miền của Iran"
+"IRDomainDesc" = "Thay đổi mẫu cấu hình để tránh kết nối đến các tên miền của Iran."
+"ChinaIp" = "Vô hiệu hóa kết nối đến dải IP của Trung Quốc"
+"ChinaIpDesc" = "Thay đổi mẫu cấu hình để tránh kết nối đến dải IP của Trung Quốc."
+"ChinaDomain" = "Vô hiệu hóa kết nối đến tên miền của Trung Quốc"
+"ChinaDomainDesc" = "Thay đổi mẫu cấu hình để tránh kết nối đến các tên miền của Trung Quốc."
+"RussiaIp" = "Vô hiệu hóa kết nối đến dải IP của Nga"
+"RussiaIpDesc" = "Thay đổi mẫu cấu hình để tránh kết nối đến dải IP của Nga."
+"RussiaDomain" = "Vô hiệu hóa kết nối đến tên miền của Nga"
+"RussiaDomainDesc" = "Thay đổi mẫu cấu hình để tránh kết nối đến các tên miền của Nga."
+"VNIp" = "Vô hiệu hóa kết nối đến dải IP của Việt Nam"
+"VNIpDesc" = "Thay đổi mẫu cấu hình để tránh kết nối đến dải IP của Việt Nam."
+"VNDomain" = "Vô hiệu hóa kết nối đến tên miền của Việt Nam"
+"VNDomainDesc" = "Thay đổi mẫu cấu hình để tránh kết nối đến các tên miền của Việt Nam."
+"DirectIRIp" = "Kết nối trực tiếp đến dải IP của Iran"
+"DirectIRIpDesc" = "Thay đổi mẫu cấu hình cho kết nối trực tiếp đến dải IP của Iran."
+"DirectIRDomain" = "Kết nối trực tiếp đến tên miền của Iran"
+"DirectIRDomainDesc" = "Thay đổi mẫu cấu hình cho kết nối trực tiếp đến các tên miền của Iran."
+"DirectChinaIp" = "Kết nối trực tiếp đến dải IP của Trung Quốc"
+"DirectChinaIpDesc" = "Thay đổi mẫu cấu hình cho kết nối trực tiếp đến dải IP của Trung Quốc."
+"DirectChinaDomain" = "Kết nối trực tiếp đến tên miền của Trung Quốc"
+"DirectChinaDomainDesc" = "Thay đổi mẫu cấu hình cho kết nối trực tiếp đến các tên miền của Trung Quốc."
+"DirectRussiaIp" = "Kết nối trực tiếp đến dải IP của Nga"
+"DirectRussiaIpDesc" = "Thay đổi mẫu cấu hình cho kết nối trực tiếp đến dải IP của Nga."
+"DirectRussiaDomain" = "Kết nối trực tiếp đến tên miền của Nga"
+"DirectRussiaDomainDesc" = "Thay đổi mẫu cấu hình cho kết nối trực tiếp đến các tên miền của Nga."
+"DirectVNIp" = "Kết nối trực tiếp đến dải IP của Việt Nam"
+"DirectVNIpDesc" = "Thay đổi mẫu cấu hình cho kết nối trực tiếp đến dải IP của Việt Nam"
+"DirectVNDomain" = "Kết nối trực tiếp đến tên miền của Việt Nam"
+"DirectVNDomainDesc" = "Thay đổi mẫu cấu hình cho kết nối trực tiếp đến các tên miền của Việt Nam."
+"GoogleIPv4" = "Sử dụng IPv4 cho Google"
+"GoogleIPv4Desc" = "Thêm định tuyến cho Google để kết nối qua IPv4."
+"NetflixIPv4" = "Sử dụng IPv4 cho Netflix"
+"NetflixIPv4Desc" = "Thêm định tuyến cho Netflix để kết nối qua IPv4."
+"GoogleWARP" = "Google"
+"GoogleWARPDesc" = "Định tuyến lưu lượng truy cập tới Google thông qua WARP."
+"OpenAIWARP" = "OpenAI (ChatGPT)"
+"OpenAIWARPDesc" = "Định tuyến lưu lượng truy cập tới OpenAI (ChatGPT) thông qua WARP."
+"NetflixWARP" = "Netflix"
+"NetflixWARPDesc" = "Định tuyến lưu lượng truy cập tới Netflix thông qua WARP."
+"MetaWARP" = "Meta"
+"MetaWARPDesc" = "Định tuyến lưu lượng truy cập tới Meta (Instagram, Facebook, WhatsApp, Threads,...) thông qua WARP."
+"AppleWARP" = "Apple"
+"AppleWARPDesc" = "Định tuyến lưu lượng truy cập tới Apple thông qua WARP."
+"RedditWARP" = "Reddit"
+"RedditWARPDesc" = "Định tuyến lưu lượng truy cập tới Reddit thông qua WARP."
+"SpotifyWARP" = "Spotify"
+"SpotifyWARPDesc" = "Định tuyến lưu lượng truy cập tới Spotify thông qua WARP."
+"IRWARP" = "Định tuyến tên miền của Iran qua WARP."
+"IRWARPDesc" = "Thêm định tuyến cho các tên miền của Iran qua WARP."
+"Inbounds" = "Đầu vào"
+"InboundsDesc" = "Thay đổi mẫu cấu hình để chấp nhận các máy khách cụ thể."
+"Outbounds" = "Đầu ra"
+"Balancers" = "Cân bằng"
+"OutboundsDesc" = "Thay đổi mẫu cấu hình để xác định các cách ra đi cho máy chủ này."
+"Routings" = "Quy tắc định tuyến"
+"RoutingsDesc" = "Mức độ ưu tiên của mỗi quy tắc đều quan trọng!"
+"completeTemplate" = "All"
+"logLevel" = "Mức đăng nhập"
+"logLevelDesc" = "Cấp độ nhật ký cho nhật ký lỗi, cho biết thông tin cần được ghi lại."
+"accessLog" = "Nhật ký truy cập"
+"accessLogDesc" = "Đường dẫn tệp cho nhật ký truy cập. Nhật ký truy cập bị vô hiệu hóa có giá trị đặc biệt 'không'"
+"errorLog" = "Nhật ký lỗi"
+"errorLogDesc" = "Đường dẫn tệp cho nhật ký lỗi. Nhật ký lỗi bị vô hiệu hóa có giá trị đặc biệt 'không'"
+
+[pages.xray.rules]
+"first" = "Đầu tiên"
+"last" = "Cuối cùng"
+"up" = "Lên"
+"down" = "Xuống"
+"source" = "Nguồn"
+"dest" = "Đích"
+"inbound" = "Vào"
+"outbound" = "Ra"
+"balancer" = "Cân bằng"
+"info" = "Thông tin"
+"add" = "Thêm quy tắc"
+"edit" = "Chỉnh sửa quy tắc"
+"useComma" = "Các mục được phân tách bằng dấu phẩy"
+
+[pages.xray.outbound]
+"addOutbound" = "Thêm thư đi"
+"addReverse" = "Thêm đảo ngược"
+"editOutbound" = "Chỉnh sửa gửi đi"
+"editReverse" = "Chỉnh sửa ngược lại"
+"tag" = "Thẻ"
+"tagDesc" = "thẻ duy nhất"
+"address" = "Địa chỉ"
+"reverse" = "Đảo ngược"
+"domain" = "Miền"
+"type" = "Loại"
+"bridge" = "Cầu"
+"portal" = "Cổng thông tin"
+"intercon" = "Kết nối"
+"settings" = "cài đặt"
+"accountInfo" = "Thông tin tài khoản"
+"outboundStatus" = "Trạng thái đầu ra"
+"sendThrough" = "Gửi qua"
+
+[pages.xray.balancer]
+"addBalancer" = "Thêm cân bằng"
+"editBalancer" = "Chỉnh sửa cân bằng"
+"balancerStrategy" = "Chiến lược"
+"balancerSelectors" = "Bộ chọn"
+"tag" = "Thẻ"
+"tagDesc" = "thẻ duy nhất"
+"balancerDesc" = "Không thể sử dụng balancerTag và outboundTag cùng một lúc. Nếu sử dụng cùng lúc thì chỉ outboundTag mới hoạt động."
+
+[pages.xray.wireguard]
+"secretKey" = "Khoá bí mật"
+"publicKey" = "Khóa công khai"
+"allowedIPs" = "IP được phép"
+"endpoint" = "Điểm cuối"
+"psk" = "Khóa chia sẻ"
+"domainStrategy" = "Chiến lược tên miền"
+
+[pages.xray.dns]
+"enable" = "Kích hoạt DNS"
+"enableDesc" = "Kích hoạt máy chủ DNS tích hợp"
+"tag" = "Thẻ gửi đến DNS"
+"tagDesc" = "Thẻ này sẽ có sẵn dưới dạng thẻ Gửi đến trong quy tắc định tuyến."
+"strategy" = "Chiến lược truy vấn"
+"strategyDesc" = "Chiến lược tổng thể để phân giải tên miền"
+"add" = "Thêm máy chủ"
+"edit" = "Chỉnh sửa máy chủ"
+"domains" = "Tên miền"
+
+[pages.xray.fakedns]
+"add" = "Thêm DNS giả"
+"edit" = "Chỉnh sửa DNS giả"
+"ipPool" = "Mạng con nhóm IP"
+"poolSize" = "Kích thước bể bơi"
+
+[pages.settings.security]
+"admin" = "Quản trị viên"
+"secret" = "Mã thông báo bí mật"
+"loginSecurity" = "Bảo mật đăng nhập"
+"loginSecurityDesc" = "Bật bước bảo mật đăng nhập bổ sung cho người dùng"
+"secretToken" = "Mã bí mật"
+"secretTokenDesc" = "Vui lòng sao chép và lưu trữ mã này một cách an toàn ở nơi an toàn. Mã này cần thiết để đăng nhập và không thể phục hồi từ công cụ lệnh x-ui."
+
+[pages.settings.toasts]
+"modifySettings" = "Chỉnh sửa cài đặt "
+"getSettings" = "Lấy cài đặt "
+"modifyUser" = "Chỉnh sửa người dùng "
+"originalUserPassIncorrect" = "Tên người dùng hoặc mật khẩu gốc không đúng"
+"userPassMustBeNotEmpty" = "Tên người dùng mới và mật khẩu mới không thể để trống"
+
+[tgbot]
+"keyboardClosed" = "❌ Bàn phím tùy chỉnh đã đóng!"
+"noResult" = "❗ Không có kết quả!"
+"noQuery" = "❌ Không tìm thấy truy vấn! Vui lòng sử dụng lệnh lại!"
+"wentWrong" = "❌ Đã xảy ra lỗi!"
+"noIpRecord" = "❗ Không có bản ghi IP!"
+"noInbounds" = "❗ Không tìm thấy inbound!"
+"unlimited" = "♾ Không giới hạn"
+"add" = "Thêm"
+"month" = "Tháng"
+"months" = "Tháng"
+"day" = "Ngày"
+"days" = "Ngày"
+"hours" = "Giờ"
+"unknown" = "Không rõ"
+"inbounds" = "Vào"
+"clients" = "Các người dùng"
+"offline" = "🔴 Ngoại tuyến"
+"online" = "🟢 Trực tuyến"
+
+[tgbot.commands]
+"unknown" = "❗ Lệnh không rõ"
+"pleaseChoose" = "👇 Vui lòng chọn:\r\n"
+"help" = "🤖 Chào mừng bạn đến với bot này! Bot được thiết kế để cung cấp cho bạn dữ liệu cụ thể từ máy chủ và cho phép bạn thực hiện các thay đổi cần thiết.\r\n\r\n"
+"start" = "👋 Xin chào {{ .Firstname }}.\r\n"
+"welcome" = "🤖 Chào mừng đến với bot quản lý của {{ .Hostname }}.\r\n"
+"status" = "✅ Bot hoạt động bình thường!"
+"usage" = "❗ Vui lòng cung cấp văn bản để tìm kiếm!"
+"getID" = "🆔 ID của bạn: {{ .ID }}
"
+"helpAdminCommands" = "Để tìm kiếm email của khách hàng:\r\n/usage [Email]
\r\n\r\nĐể tìm kiếm các nhập (với số liệu thống kê của khách hàng):\r\n/inbound [Ghi chú]
\r\n\r\nID Trò chuyện Telegram:\r\n/id
"
+"helpClientCommands" = "Để tìm kiếm thống kê, sử dụng lệnh sau:\r\n/usage [Email]
\r\n\r\nID Trò chuyện Telegram:\r\n/id
"
+
+[tgbot.messages]
+"cpuThreshold" = "🔴 Sử dụng CPU {{ .Percent }}% vượt quá ngưỡng {{ .Threshold }}%"
+"selectUserFailed" = "❌ Lỗi khi chọn người dùng!"
+"userSaved" = "✅ Người dùng Telegram đã được lưu."
+"loginSuccess" = "✅ Đăng nhập thành công vào bảng điều khiển.\r\n"
+"loginFailed" = "❗️ Đăng nhập vào bảng điều khiển thất bại.\r\n"
+"report" = "🕰 Báo cáo định kỳ: {{ .RunTime }}\r\n"
+"datetime" = "⏰ Ngày-Giờ: {{ .DateTime }}\r\n"
+"hostname" = "💻 Tên máy chủ: {{ .Hostname }}\r\n"
+"version" = "🚀 Phiên bản X-UI: {{ .Version }}\r\n"
+"ipv6" = "🌐 IPv6: {{ .IPv6 }}\r\n"
+"ipv4" = "🌐 IPv4: {{ .IPv4 }}\r\n"
+"ip" = "🌐 IP: {{ .IP }}\r\n"
+"ips" = "🔢 Các IP:\r\n{{ .IPs }}\r\n"
+"serverUpTime" = "⏳ Thời gian hoạt động của máy chủ: {{ .UpTime }} {{ .Unit }}\r\n"
+"serverLoad" = "📈 Tải máy chủ: {{ .Load1 }}, {{ .Load2 }}, {{ .Load3 }}\r\n"
+"serverMemory" = "📋 Bộ nhớ máy chủ: {{ .Current }}/{{ .Total }}\r\n"
+"tcpCount" = "🔹 Số lượng kết nối TCP: {{ .Count }}\r\n"
+"udpCount" = "🔸 Số lượng kết nối UDP: {{ .Count }}\r\n"
+"traffic" = "🚦 Lưu lượng: {{ .Total }} (↑{{ .Upload }},↓{{ .Download }})\r\n"
+"xrayStatus" = "ℹ️ Trạng thái Xray: {{ .State }}\r\n"
+"username" = "👤 Tên người dùng: {{ .Username }}\r\n"
+"time" = "⏰ Thời gian: {{ .Time }}\r\n"
+"inbound" = "📍 Inbound: {{ .Remark }}\r\n"
+"port" = "🔌 Cổng: {{ .Port }}\r\n"
+"expire" = "📅 Ngày hết hạn: {{ .Time }}\r\n"
+"expireIn" = "📅 Hết hạn sau: {{ .Time }}\r\n"
+"active" = "💡 Đang hoạt động: {{ .Enable }}\r\n"
+"enabled" = "🚨 Đã bật: {{ .Enable }}\r\n"
+"online" = "🌐 Trạng thái kết nối: {{ .Status }}\r\n"
+"email" = "📧 Email: {{ .Email }}\r\n"
+"upload" = "🔼 Tải lên: ↑{{ .Upload }}\r\n"
+"download" = "🔽 Tải xuống: ↓{{ .Download }}\r\n"
+"total" = "📊 Tổng cộng: ↑↓{{ .UpDown }} / {{ .Total }}\r\n"
+"TGUser" = "👤 Người dùng Telegram: {{ .TelegramID }}\r\n"
+"exhaustedMsg" = "🚨 Sự cạn kiệt {{ .Type }}:\r\n"
+"exhaustedCount" = "🚨 Số lần cạn kiệt {{ .Type }}:\r\n"
+"onlinesCount" = "🌐 Khách hàng trực tuyến: {{ .Count }}\r\n"
+"disabled" = "🛑 Vô hiệu hóa: {{ .Disabled }}\r\n"
+"depleteSoon" = "🔜 Sắp cạn kiệt: {{ .Deplete }}\r\n\r\n"
+"backupTime" = "🗄 Thời gian sao lưu: {{ .Time }}\r\n"
+"refreshedOn" = "\r\n📋🔄 Đã cập nhật lần cuối vào: {{ .Time }}\r\n\r\n"
+"yes" = "✅ Có"
+"no" = "❌ Không"
+
+[tgbot.buttons]
+"closeKeyboard" = "❌ Đóng Bàn Phím"
+"cancel" = "❌ Hủy"
+"cancelReset" = "❌ Hủy Đặt Lại"
+"cancelIpLimit" = "❌ Hủy Giới Hạn IP"
+"confirmResetTraffic" = "✅ Xác Nhận Đặt Lại Lưu Lượng?"
+"confirmClearIps" = "✅ Xác Nhận Xóa Các IP?"
+"confirmRemoveTGUser" = "✅ Xác Nhận Xóa Người Dùng Telegram?"
+"confirmToggle" = "✅ Xác nhận Bật/Tắt người dùng?"
+"dbBackup" = "Tải bản sao lưu cơ sở dữ liệu"
+"serverUsage" = "Sử Dụng Máy Chủ"
+"getInbounds" = "Lấy cổng vào"
+"depleteSoon" = "Depleted Soon"
+"clientUsage" = "Lấy Sử Dụng"
+"onlines" = "Khách hàng trực tuyến"
+"commands" = "Lệnh"
+"refresh" = "🔄 Cập Nhật"
+"clearIPs" = "❌ Xóa IP"
+"removeTGUser" = "❌ Xóa Người Dùng Telegram"
+"selectTGUser" = "👤 Chọn Người Dùng Telegram"
+"selectOneTGUser" = "👤 Chọn một người dùng telegram:"
+"resetTraffic" = "📈 Đặt Lại Lưu Lượng"
+"resetExpire" = "📅 Thay đổi ngày hết hạn"
+"ipLog" = "🔢 Nhật ký địa chỉ IP"
+"ipLimit" = "🔢 Giới Hạn địa chỉ IP"
+"setTGUser" = "👤 Đặt Người Dùng Telegram"
+"toggle" = "🔘 Bật / Tắt"
+"custom" = "🔢 Tùy chỉnh"
+"confirmNumber" = "✅ Xác nhận: {{ .Num }}"
+"confirmNumberAdd" = "✅ Xác nhận thêm: {{ .Num }}"
+"limitTraffic" = "🚧 Giới hạn lưu lượng"
+"getBanLogs" = "Cấm nhật ký"
+
+[tgbot.answers]
+"successfulOperation" = "✅ Thành công!"
+"errorOperation" = "❗ Lỗi Trong Quá Trình Thực Hiện."
+"getInboundsFailed" = "❌ Không Thể Lấy Được Inbounds"
+"canceled" = "❌ {{ .Email }} : Thao Tác Đã Bị Hủy."
+"clientRefreshSuccess" = "✅ {{ .Email }} : Cập Nhật Thành Công Cho Khách Hàng."
+"IpRefreshSuccess" = "✅ {{ .Email }} : Cập Nhật Thành Công Cho IPs."
+"TGIdRefreshSuccess" = "✅ {{ .Email }} : Cập Nhật Thành Công Cho Người Dùng Telegram."
+"resetTrafficSuccess" = "✅ {{ .Email }} : Đặt Lại Lưu Lượng Thành Công."
+"setTrafficLimitSuccess" = "✅ {{ .Email }} : Đã lưu thành công giới hạn lưu lượng."
+"expireResetSuccess" = "✅ {{ .Email }} : Đặt Lại Ngày Hết Hạn Thành Công."
+"resetIpSuccess" = "✅ {{ .Email }} : Giới Hạn IP {{ .Count }} Đã Được Lưu Thành Công."
+"clearIpSuccess" = "✅ {{ .Email }} : IP Đã Được Xóa Thành Công."
+"getIpLog" = "✅ {{ .Email }} : Lấy nhật ký IP Thành Công."
+"getUserInfo" = "✅ {{ .Email }} : Lấy Thông Tin Người Dùng Telegram Thành Công."
+"removedTGUserSuccess" = "✅ {{ .Email }} : Người Dùng Telegram Đã Được Xóa Thành Công."
+"enableSuccess" = "✅ {{ .Email }} : Đã Bật Thành Công."
+"disableSuccess" = "✅ {{ .Email }} : Đã Tắt Thành Công."
+"askToAddUserId" = "Cấu hình của bạn không được tìm thấy!\r\nVui lòng yêu cầu Quản trị viên sử dụng ID người dùng telegram của bạn trong cấu hình của bạn.\r\n\r\nID người dùng của bạn: {{ .TgUserID }}
"
diff --git a/translate.zh_Hans.toml b/translate.zh_Hans.toml
new file mode 100644
index 00000000..b0831bd5
--- /dev/null
+++ b/translate.zh_Hans.toml
@@ -0,0 +1,638 @@
+"username" = "用户名"
+"password" = "密码"
+"login" = "登录"
+"confirm" = "确定"
+"cancel" = "取消"
+"close" = "关闭"
+"copy" = "复制"
+"copied" = "已复制"
+"download" = "下载"
+"remark" = "备注"
+"enable" = "启用"
+"protocol" = "协议"
+"search" = "搜索"
+"filter" = "筛选"
+"loading" = "加载中..."
+"second" = "秒"
+"minute" = "分钟"
+"hour" = "小时"
+"day" = "天"
+"check" = "查看"
+"indefinite" = "无限期"
+"unlimited" = "无限制"
+"none" = "无"
+"qrCode" = "二维码"
+"info" = "更多信息"
+"edit" = "编辑"
+"delete" = "删除"
+"reset" = "重置"
+"copySuccess" = "复制成功"
+"sure" = "确定"
+"encryption" = "加密"
+"transmission" = "传输"
+"host" = "主机"
+"path" = "路径"
+"camouflage" = "伪装"
+"status" = "状态"
+"enabled" = "开启"
+"disabled" = "关闭"
+"depleted" = "耗尽"
+"depletingSoon" = "即将耗尽"
+"offline" = "离线"
+"online" = "在线"
+"domainName" = "域名"
+"monitor" = "监听"
+"certificate" = "数字证书"
+"fail" = "失败"
+"success" = "成功"
+"getVersion" = "获取版本"
+"install" = "安装"
+"clients" = "客户端"
+"usage" = "使用情况"
+"secretToken" = "安全密钥"
+"remained" = "剩余"
+"security" = "安全"
+"secAlertTitle" = "安全警报"
+"secAlertSsl" = "此连接不安全。在激活 TLS 进行数据保护之前,请勿输入敏感信息。"
+"secAlertConf" = "某些设置易受攻击。建议加强安全协议以防止潜在漏洞。"
+"secAlertSSL" = "面板缺少安全连接。请安装 TLS 证书以保护数据安全。"
+"secAlertPanelPort" = "面板默认端口存在安全风险。请配置随机端口或特定端口。"
+"secAlertPanelURI" = "面板默认 URI 路径不安全。请配置复杂的 URI 路径。"
+"secAlertSubURI" = "订阅默认 URI 路径不安全。请配置复杂的 URI 路径。"
+"secAlertSubJsonURI" = "订阅 JSON 默认 URI 路径不安全。请配置复杂的 URI 路径。"
+
+[menu]
+"dashboard" = "系统状态"
+"inbounds" = "入站列表"
+"settings" = "面板设置"
+"xray" = "Xray 设置"
+"logout" = "退出登录"
+"link" = "管理"
+
+[pages.login]
+"hello" = "你好"
+"title" = "欢迎"
+"loginAgain" = "登录时效已过,请重新登录"
+
+[pages.login.toasts]
+"invalidFormData" = "数据格式错误"
+"emptyUsername" = "请输入用户名"
+"emptyPassword" = "请输入密码"
+"wrongUsernameOrPassword" = "用户名或密码错误"
+"successLogin" = "登录"
+
+[pages.index]
+"title" = "系统状态"
+"memory" = "内存"
+"hard" = "磁盘"
+"xrayStatus" = "Xray"
+"stopXray" = "停止"
+"restartXray" = "重启"
+"xraySwitch" = "版本"
+"xraySwitchClick" = "选择你要切换到的版本"
+"xraySwitchClickDesk" = "请谨慎选择,因为较旧版本可能与当前配置不兼容"
+"operationHours" = "系统正常运行时间"
+"systemLoad" = "系统负载"
+"systemLoadDesc" = "过去 1、5 和 15 分钟的系统平均负载"
+"connectionTcpCountDesc" = "系统中所有 TCP 连接数"
+"connectionUdpCountDesc" = "系统中所有 UDP 连接数"
+"connectionCount" = "连接数"
+"upSpeed" = "总上传速度"
+"downSpeed" = "总下载速度"
+"totalSent" = "系统启动以来发送的总数据量"
+"totalReceive" = "系统启动以来接收的总数据量"
+"xraySwitchVersionDialog" = "切换 Xray 版本"
+"xraySwitchVersionDialogDesc" = "是否切换 Xray 版本至"
+"dontRefresh" = "安装中,请勿刷新此页面"
+"logs" = "日志"
+"config" = "配置"
+"backup" = "备份和恢复"
+"backupTitle" = "备份和恢复数据库"
+"backupDescription" = "恢复数据库之前建议进行备份"
+"exportDatabase" = "备份"
+"importDatabase" = "恢复"
+
+[pages.inbounds]
+"title" = "入站列表"
+"totalDownUp" = "总上传 / 下载"
+"totalUsage" = "总用量"
+"inboundCount" = "入站数量"
+"operate" = "菜单"
+"enable" = "启用"
+"remark" = "备注"
+"protocol" = "协议"
+"port" = "端口"
+"traffic" = "流量"
+"details" = "详细信息"
+"transportConfig" = "传输配置"
+"expireDate" = "到期时间"
+"resetTraffic" = "重置流量"
+"addInbound" = "添加入站"
+"generalActions" = "通用操作"
+"create" = "添加"
+"update" = "修改"
+"modifyInbound" = "修改入站"
+"deleteInbound" = "删除入站"
+"deleteInboundContent" = "确定要删除入站吗?"
+"deleteClient" = "删除客户端"
+"deleteClientContent" = "确定要删除客户端吗?"
+"resetTrafficContent" = "确定要重置流量吗?"
+"copyLink" = "复制链接"
+"address" = "地址"
+"network" = "网络"
+"destinationPort" = "目标端口"
+"targetAddress" = "目标地址"
+"monitorDesc" = "留空表示监听所有 IP"
+"meansNoLimit" = " = 无限制(单位:GB)"
+"totalFlow" = "总流量"
+"leaveBlankToNeverExpire" = "留空表示永不过期"
+"noRecommendKeepDefault" = "建议保留默认值"
+"certificatePath" = "文件路径"
+"certificateContent" = "文件内容"
+"publicKey" = "公钥"
+"privatekey" = "私钥"
+"clickOnQRcode" = "点击二维码复制"
+"client" = "客户"
+"export" = "导出链接"
+"clone" = "克隆"
+"cloneInbound" = "克隆"
+"cloneInboundContent" = "此入站规则除端口(Port)、监听 IP(Listening IP)和客户端(Clients)以外的所有配置都将应用于克隆"
+"cloneInboundOk" = "创建克隆"
+"resetAllTraffic" = "重置所有入站流量"
+"resetAllTrafficTitle" = "重置所有入站流量"
+"resetAllTrafficContent" = "确定要重置所有入站流量吗?"
+"resetInboundClientTraffics" = "重置客户端流量"
+"resetInboundClientTrafficTitle" = "重置所有客户端流量"
+"resetInboundClientTrafficContent" = "确定要重置此入站客户端的所有流量吗?"
+"resetAllClientTraffics" = "重置所有客户端流量"
+"resetAllClientTrafficTitle" = "重置所有客户端流量"
+"resetAllClientTrafficContent" = "确定要重置所有客户端的所有流量吗?"
+"delDepletedClients" = "删除流量耗尽的客户端"
+"delDepletedClientsTitle" = "删除流量耗尽的客户端"
+"delDepletedClientsContent" = "确定要删除所有流量耗尽的客户端吗?"
+"email" = "电子邮件"
+"emailDesc" = "电子邮件必须完全唯一"
+"IPLimit" = "IP 限制"
+"IPLimitDesc" = "如果数量超过设置值,则禁用入站流量。(0 = 禁用)"
+"IPLimitlog" = "IP 日志"
+"IPLimitlogDesc" = "IP 历史日志(要启用被禁用的入站流量,请清除日志)"
+"IPLimitlogclear" = "清除日志"
+"setDefaultCert" = "从面板设置证书"
+"xtlsDesc" = "Xray 核心需要 1.7.5"
+"realityDesc" = "Xray 核心需要 1.8.0 及以上版本"
+"telegramDesc" = "请提供Telegram聊天ID。(在机器人中使用'/id'命令)或(@userinfobot"
+"subscriptionDesc" = "要找到你的订阅 URL,请导航到“详细信息”。此外,你可以为多个客户端使用相同的名称。"
+"info" = "信息"
+"same" = "相同"
+"inboundData" = "入站数据"
+"exportInbound" = "导出入站规则"
+"import"="导入"
+"importInbound" = "导入入站规则"
+
+[pages.client]
+"add" = "添加客户端"
+"edit" = "编辑客户端"
+"submitAdd" = "添加客户端"
+"submitEdit" = "保存修改"
+"clientCount" = "客户端数量"
+"bulk" = "批量创建"
+"method" = "方法"
+"first" = "置顶"
+"last" = "置底"
+"prefix" = "前缀"
+"postfix" = "后缀"
+"delayedStart" = "首次使用后开始"
+"expireDays" = "期间"
+"days" = "天"
+"renew" = "自动续订"
+"renewDesc" = "到期后自动续订。(0 = 禁用)(单位: 天)"
+
+[pages.inbounds.toasts]
+"obtain" = "获取"
+
+[pages.inbounds.stream.general]
+"request" = "请求"
+"response" = "响应"
+"name" = "名称"
+"value" = "值"
+
+[pages.inbounds.stream.tcp]
+"version" = "版本"
+"method" = "方法"
+"path" = "路径"
+"status" = "状态"
+"statusDescription" = "状态说明"
+"requestHeader" = "请求头"
+"responseHeader" = "响应头"
+
+[pages.inbounds.stream.quic]
+"encryption" = "加密"
+
+[pages.settings]
+"title" = "面板设置"
+"save" = "保存"
+"infoDesc" = "此处的所有更改都需要保存并重启面板才能生效"
+"restartPanel" = "重启面板"
+"restartPanelDesc" = "确定要重启面板吗?若重启后无法访问面板,请前往服务器查看面板日志信息"
+"actions" = "操作"
+"resetDefaultConfig" = "重置为默认配置"
+"panelSettings" = "常规"
+"securitySettings" = "安全设定"
+"TGBotSettings" = "Telegram 机器人配置"
+"panelListeningIP" = "面板监听 IP"
+"panelListeningIPDesc" = "默认留空监听所有 IP"
+"panelListeningDomain" = "面板监听域名"
+"panelListeningDomainDesc" = "默认情况下留空以监视所有域名和 IP 地址"
+"panelPort" = "面板监听端口"
+"panelPortDesc" = "重启面板生效"
+"publicKeyPath" = "面板证书公钥文件路径"
+"publicKeyPathDesc" = "填写一个 '/' 开头的绝对路径"
+"privateKeyPath" = "面板证书密钥文件路径"
+"privateKeyPathDesc" = "填写一个 '/' 开头的绝对路径"
+"panelUrlPath" = "面板 url 根路径"
+"panelUrlPathDesc" = "必须以 '/' 开头,以 '/' 结尾"
+"pageSize" = "分页大小"
+"pageSizeDesc" = "定义入站表的页面大小。设置 0 表示禁用"
+"remarkModel" = "备注模型和分隔符"
+"datepicker" = "日期选择器"
+"datepickerPlaceholder" = "选择日期"
+"datepickerDescription" = "选择器日历类型指定到期日期"
+"sampleRemark" = "备注示例"
+"oldUsername" = "原用户名"
+"currentPassword" = "原密码"
+"newUsername" = "新用户名"
+"newPassword" = "新密码"
+"telegramBotEnable" = "启用 Telegram 机器人"
+"telegramBotEnableDesc" = "启用 Telegram 机器人功能"
+"telegramToken" = "Telegram 机器人令牌(token)"
+"telegramTokenDesc" = "从 '@BotFather' 获取的 Telegram 机器人令牌"
+"telegramProxy" = "SOCKS5 Proxy"
+"telegramProxyDesc" = "启用 SOCKS5 代理连接到 Telegram(根据指南调整设置)"
+"telegramChatId" = "管理员聊天 ID"
+"telegramChatIdDesc" = "Telegram 管理员聊天 ID (多个以逗号分隔)(可通过 @userinfobot 获取,或在机器人中使用 '/id' 命令获取)"
+"telegramNotifyTime" = "通知时间"
+"telegramNotifyTimeDesc" = "设置周期性的 Telegram 机器人通知时间(使用 crontab 时间格式)"
+"tgNotifyBackup" = "数据库备份"
+"tgNotifyBackupDesc" = "发送带有报告的数据库备份文件"
+"tgNotifyLogin" = "登录通知"
+"tgNotifyLoginDesc" = "当有人试图登录你的面板时显示用户名、IP 地址和时间"
+"sessionMaxAge" = "会话时长"
+"sessionMaxAgeDesc" = "保持登录状态的时长(单位:分钟)"
+"expireTimeDiff" = "到期通知阈值"
+"expireTimeDiffDesc" = "达到此阈值时,将收到有关到期时间的通知(单位:天)"
+"trafficDiff" = "流量耗尽阈值"
+"trafficDiffDesc" = "达到此阈值时,将收到有关流量耗尽的通知(单位:GB)"
+"tgNotifyCpu" = "CPU 负载通知阈值"
+"tgNotifyCpuDesc" = "CPU 负载超过此阈值时,将收到通知(单位:%)"
+"timeZone" = "时区"
+"timeZoneDesc" = "定时任务将按照该时区的时间运行"
+"subSettings" = "订阅设置"
+"subEnable" = "启用订阅服务"
+"subEnableDesc" = "启用订阅服务功能"
+"subListen" = "监听 IP"
+"subListenDesc" = "订阅服务监听的 IP 地址(留空表示监听所有 IP)"
+"subPort" = "监听端口"
+"subPortDesc" = "订阅服务监听的端口号(必须是未使用的端口)"
+"subCertPath" = "公钥路径"
+"subCertPathDesc" = "订阅服务使用的公钥文件路径(以 '/' 开头)"
+"subKeyPath" = "私钥路径"
+"subKeyPathDesc" = "订阅服务使用的私钥文件路径(以 '/' 开头)"
+"subPath" = "URI 路径"
+"subPathDesc" = "订阅服务使用的 URI 路径(以 '/' 开头,以 '/' 结尾)"
+"subDomain" = "监听域名"
+"subDomainDesc" = "订阅服务监听的域名(留空表示监听所有域名和 IP)"
+"subUpdates" = "更新间隔"
+"subUpdatesDesc" = "客户端应用中订阅 URL 的更新间隔(单位:小时)"
+"subEncrypt" = "编码"
+"subEncryptDesc" = "订阅服务返回的内容将采用 Base64 编码"
+"subShowInfo" = "显示使用信息"
+"subShowInfoDesc" = "客户端应用中将显示剩余流量和日期信息"
+"subURI" = "反向代理 URI"
+"subURIDesc" = "用于代理后面的订阅 URL 的 URI 路径"
+"fragment" = "分片"
+"fragmentDesc" = "启用 TLS hello 数据包分片"
+"fragmentSett" = "设置"
+"mux" = "多路复用器"
+"muxDesc" = "在已建立的数据流内传输多个独立的数据流"
+"muxSett" = "复用器设置"
+"direct" = "直接连接"
+"directDesc" = "直接与特定国家的域或IP范围建立连接"
+"directSett" = "直接连接选项"
+
+[pages.xray]
+"title" = "Xray 配置"
+"save" = "保存"
+"restart" = "重新启动 Xray"
+"basicTemplate" = "基础配置"
+"advancedTemplate" = "高级配置"
+"generalConfigs" = "常规配置"
+"generalConfigsDesc" = "这些选项将决定常规配置"
+"logConfigs" = "日志"
+"logConfigsDesc" = "日志可能会影响服务器的性能,建议仅在需要时启用"
+"blockConfigs" = "防护屏蔽"
+"blockConfigsDesc" = "这些选项将阻止用户连接到特定协议和网站"
+"blockCountryConfigs" = "屏蔽国家/地区"
+"blockCountryConfigsDesc" = "这些选项将阻止用户连接到特定国家/地区"
+"directCountryConfigs" = "直连国家/地区"
+"directCountryConfigsDesc" = "直接连接可确保特定流量不会通过其他服务器路由"
+"ipv4Configs" = "IPv4 路由"
+"ipv4ConfigsDesc" = "此选项将仅通过 IPv4 路由到目标域"
+"warpConfigs" = "WARP 路由"
+"warpConfigsDesc" = "注意:在使用这些选项之前,请按照面板 GitHub 上的步骤在你的服务器上以 socks5 代理模式安装 WARP。WARP 将通过 Cloudflare 服务器将流量路由到网站。"
+"Template" = "高级 Xray 配置模板"
+"TemplateDesc" = "最终的 Xray 配置文件将基于此模板生成"
+"FreedomStrategy" = "Freedom 协议策略"
+"FreedomStrategyDesc" = "设置 Freedom 协议中网络的输出策略"
+"RoutingStrategy" = "配置路由域策略"
+"RoutingStrategyDesc" = "设置 DNS 解析的整体路由策略"
+"Torrent" = "屏蔽 BitTorrent 协议"
+"TorrentDesc" = "禁止使用 BitTorrent"
+"PrivateIp" = "屏蔽私有 IP"
+"PrivateIpDesc" = "阻止连接到私有 IP"
+"Ads" = "屏蔽广告"
+"AdsDesc" = "屏蔽广告网站"
+"Family" = "家庭保护"
+"FamilyDesc" = "屏蔽成人内容和恶意网站"
+"Security" = "安全防护"
+"SecurityDesc" = "屏蔽恶意软件、网络钓鱼和挖矿网站"
+"Speedtest" = "屏蔽测速网站"
+"SpeedtestDesc" = "阻止连接到测速网站"
+"IRIp" = "屏蔽连接到伊朗 IP"
+"IRIpDesc" = "阻止建立到伊朗 IP 范围的连接"
+"IRDomain" = "屏蔽连接到伊朗域名"
+"IRDomainDesc" = "阻止建立到伊朗域名的连接"
+"ChinaIp" = "屏蔽连接到中国 IP"
+"ChinaIpDesc" = "阻止建立到中国 IP 范围的连接"
+"ChinaDomain" = "屏蔽连接到中国域名"
+"ChinaDomainDesc" = "阻止建立到中国域名的连接"
+"RussiaIp" = "屏蔽连接到俄罗斯 IP"
+"RussiaIpDesc" = "阻止建立到俄罗斯 IP 范围的连接"
+"RussiaDomain" = "屏蔽连接到俄罗斯域名"
+"RussiaDomainDesc" = "阻止建立到俄罗斯域名的连接"
+"VNIp" = "屏蔽连接到越南 IP"
+"VNIpDesc" = "阻止建立到越南 IP 范围的连接"
+"VNDomain" = "屏蔽连接到越南域名"
+"VNDomainDesc" = "阻止建立到越南域名的连接"
+"DirectIRIp" = "直连伊朗 IP"
+"DirectIRIpDesc" = "直接建立到伊朗 IP 范围的连接"
+"DirectIRDomain" = "直连伊朗域名"
+"DirectIRDomainDesc" = "直接建立到伊朗域名的连接"
+"DirectChinaIp" = "直连中国 IP"
+"DirectChinaIpDesc" = "直接建立到中国 IP 范围的连接"
+"DirectChinaDomain" = "直连中国域名"
+"DirectChinaDomainDesc" = "直接建立到中国域名的连接"
+"DirectRussiaIp" = "直连俄罗斯 IP"
+"DirectRussiaIpDesc" = "直接建立到俄罗斯 IP 范围的连接"
+"DirectRussiaDomain" = "直连俄罗斯域名"
+"DirectRussiaDomainDesc" = "直接建立到俄罗斯域名的连接"
+"DirectVNIp" = "直连越南 IP"
+"DirectVNIpDesc" = "直接建立到越南 IP 范围的连接"
+"DirectVNDomain" = "直连越南域名"
+"DirectVNDomainDesc" = "直接建立到越南域名的连接"
+"GoogleIPv4" = "Google"
+"GoogleIPv4Desc" = "通过 IPv4 将流量路由到谷歌"
+"NetflixIPv4" = "Netflix"
+"NetflixIPv4Desc" = "通过 IPv4 将流量路由到 Netflix"
+"GoogleWARP" = "Google"
+"GoogleWARPDesc" = "通过 WARP 将流量路由到 Google"
+"OpenAIWARP" = "OpenAI (ChatGPT)"
+"OpenAIWARPDesc" = "通过 WARP 将流量路由到 OpenAI (ChatGPT)"
+"NetflixWARP" = "Netflix"
+"NetflixWARPDesc" = "通过 WARP 将流量路由到 Netflix"
+"MetaWARP"="Meta"
+"MetaWARPDesc" = "通过 WARP 将流量路由到 Meta(Instagram、Facebook、WhatsApp、Threads...)"
+"AppleWARP" = "Apple"
+"AppleWARPDesc" = "通过 WARP 将流量路由到 Apple"
+"RedditWARP" = "Reddit"
+"RedditWARPDesc" = "通过 WARP 将流量路由到 Reddit"
+"SpotifyWARP" = "Spotify"
+"SpotifyWARPDesc" = "通过 WARP 将流量路由到 Spotify"
+"IRWARP" = "伊朗域名"
+"IRWARPDesc" = "通过 WARP 将流量路由到伊朗域名"
+"Inbounds" = "入站规则"
+"InboundsDesc" = "接受来自特定客户端的流量"
+"Outbounds" = "出站规则"
+"Balancers" = "负载均衡"
+"OutboundsDesc" = "设置出站流量传出方式"
+"Routings" = "路由规则"
+"RoutingsDesc" = "每条规则的优先级都很重要"
+"completeTemplate" = "全部"
+"logLevel" = "日志级别"
+"logLevelDesc" = "错误日志的日志级别,用于指示需要记录的信息"
+"accessLog" = "访问日志"
+"accessLogDesc" = "访问日志的文件路径。特殊值 'none' 禁用访问日志"
+"errorLog" = "错误日志"
+"errorLogDesc" = "错误日志的文件路径。特殊值 'none' 禁用错误日志"
+
+[pages.xray.rules]
+"first" = "置顶"
+"last" = "置底"
+"up" = "向上"
+"down" = "向下"
+"source" = "来源"
+"dest" = "目的地址"
+"inbound" = "入站"
+"outbound" = "出站"
+"balancer" = "负载均衡"
+"info" = "信息"
+"add" = "添加规则"
+"edit" = "编辑规则"
+"useComma" = "逗号分隔的项目"
+
+[pages.xray.outbound]
+"addOutbound" = "添加出站"
+"addReverse" = "添加反向"
+"editOutbound" = "编辑出站"
+"editReverse" = "编辑反向"
+"tag" = "标签"
+"tagDesc" = "唯一标签"
+"address" = "地址"
+"reverse" = "反向"
+"domain" = "域名"
+"type" = "类型"
+"bridge" = "Bridge"
+"portal" = "Portal"
+"intercon" = "互连"
+"settings" = "设置"
+"accountInfo" = "帐户信息"
+"outboundStatus" = "出站状态"
+"sendThrough" = "发送通过"
+
+[pages.xray.balancer]
+"addBalancer" = "添加负载均衡"
+"editBalancer" = "编辑负载均衡"
+"balancerStrategy" = "策略"
+"balancerSelectors" = "选择器"
+"tag" = "标签"
+"tagDesc" = "唯一标签"
+"balancerDesc" = "无法同时使用 balancerTag 和 outboundTag。如果同时使用,则只有 outboundTag 会生效。"
+
+[pages.xray.wireguard]
+"secretKey" = "密钥"
+"publicKey" = "公钥"
+"allowedIPs" = "允许的 IP"
+"endpoint" = "端点"
+"psk" = "共享密钥"
+"domainStrategy" = "域策略"
+
+[pages.xray.dns]
+"enable" = "启用 DNS"
+"enableDesc" = "启用内置 DNS 服务器"
+"tag" = "DNS 入站标签"
+"tagDesc" = "此标签将在路由规则中可用作入站标签"
+"strategy" = "查询策略"
+"strategyDesc" = "解析域名的总体策略"
+"add" = "添加服务器"
+"edit" = "编辑服务器"
+"domains" = "域"
+
+[pages.xray.fakedns]
+"add" = "添加假 DNS"
+"edit" = "编辑假 DNS"
+"ipPool" = "IP 池子网"
+"poolSize" = "池大小"
+
+[pages.settings.security]
+"admin" = "管理员"
+"secret" = "安全令牌"
+"loginSecurity" = "登录安全"
+"loginSecurityDesc" = "添加额外的身份验证以提高安全性"
+"secretToken" = "安全令牌"
+"secretTokenDesc" = "请将此令牌存储在安全的地方。此令牌用于登录,丢失无法恢复。"
+
+[pages.settings.toasts]
+"modifySettings" = "修改设置"
+"getSettings" = "获取设置"
+"modifyUser" = "修改管理员"
+"originalUserPassIncorrect" = "原用户名或原密码错误"
+"userPassMustBeNotEmpty" = "新用户名和新密码不能为空"
+
+[tgbot]
+"keyboardClosed" = "❌ 自定义键盘已关闭!"
+"noResult" = "❗ 没有结果!"
+"noQuery" = "❌ 未找到查询!请重新使用命令!"
+"wentWrong" = "❌ 出了点问题!"
+"noIpRecord" = "❗ 没有 IP 记录!"
+"noInbounds" = "❗ 没有找到入站连接!"
+"unlimited" = "♾ 无限制"
+"add" = "添加"
+"month" = "月"
+"months" = "月"
+"day" = "天"
+"days" = "天"
+"hours" = "小时"
+"unknown" = "未知"
+"inbounds" = "入站连接"
+"clients" = "客户端"
+"offline" = "🔴 离线"
+"online" = "🟢 在线"
+
+[tgbot.commands]
+"unknown" = "❗ 未知命令"
+"pleaseChoose" = "👇 请选择:\r\n"
+"help" = "🤖 欢迎使用本机器人!它旨在为您提供来自服务器的特定数据,并允许您进行必要的修改。\r\n\r\n"
+"start" = "👋 你好,{{ .Firstname }}。\r\n"
+"welcome" = "🤖 欢迎来到 {{ .Hostname }} 管理机器人。\r\n"
+"status" = "✅ 机器人正常运行!"
+"usage" = "❗ 请输入要搜索的文本!"
+"getID" = "🆔 您的 ID 为:{{ .ID }}
"
+"helpAdminCommands" = "要搜索客户电子邮件:\r\n/usage [电子邮件]
\r\n\r\n要搜索入站(带有客户统计数据):\r\n/inbound [备注]
\r\n\r\nTelegram聊天ID:\r\n/id
"
+"helpClientCommands" = "要搜索统计数据,请使用以下命令:\r\n/usage [电子邮件]
\r\n\r\nTelegram聊天ID:\r\n/id
"
+
+[tgbot.messages]
+"cpuThreshold" = "🔴 CPU 使用率为 {{ .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"
+"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"
+"traffic" = "🚦 流量:{{ .Total }} (↑{{ .Upload }},↓{{ .Download }})\r\n"
+"xrayStatus" = "ℹ️ Xray 状态:{{ .State }}\r\n"
+"username" = "👤 用户名:{{ .Username }}\r\n"
+"time" = "⏰ 时间:{{ .Time }}\r\n"
+"inbound" = "📍 入站:{{ .Remark }}\r\n"
+"port" = "🔌 端口:{{ .Port }}\r\n"
+"expire" = "📅 过期日期:{{ .Time }}\r\n"
+"expireIn" = "📅 剩余时间:{{ .Time }}\r\n"
+"active" = "💡 激活:{{ .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"
+"TGUser" = "👤 电报用户:{{ .TelegramID }}\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"
+"refreshedOn" = "\r\n📋🔄 刷新时间:{{ .Time }}\r\n\r\n"
+"yes" = "✅ 是的"
+"no" = "❌ 没有"
+
+[tgbot.buttons]
+"closeKeyboard" = "❌ 关闭键盘"
+"cancel" = "❌ 取消"
+"cancelReset" = "❌ 取消重置"
+"cancelIpLimit" = "❌ 取消 IP 限制"
+"confirmResetTraffic" = "✅ 确认重置流量?"
+"confirmClearIps" = "✅ 确认清除 IP?"
+"confirmRemoveTGUser" = "✅ 确认移除 Telegram 用户?"
+"confirmToggle" = "✅ 确认启用/禁用用户?"
+"dbBackup" = "获取数据库备份"
+"serverUsage" = "服务器使用情况"
+"getInbounds" = "获取入站信息"
+"depleteSoon" = "即将耗尽"
+"clientUsage" = "获取使用情况"
+"onlines" = "在线客户端"
+"commands" = "命令"
+"refresh" = "🔄 刷新"
+"clearIPs" = "❌ 清除 IP"
+"removeTGUser" = "❌ 移除 Telegram 用户"
+"selectTGUser" = "👤 选择 Telegram 用户"
+"selectOneTGUser" = "👤 选择一个 Telegram 用户:"
+"resetTraffic" = "📈 重置流量"
+"resetExpire" = "📅 更改到期日期"
+"ipLog" = "🔢 IP 日志"
+"ipLimit" = "🔢 IP 限制"
+"setTGUser" = "👤 设置 Telegram 用户"
+"toggle" = "🔘 启用/禁用"
+"custom" = "🔢 风俗"
+"confirmNumber" = "✅ 确认: {{ .Num }}"
+"confirmNumberAdd" = "✅ 确认添加:{{ .Num }}"
+"limitTraffic" = "🚧 流量限制"
+"getBanLogs" = "禁止日志"
+
+[tgbot.answers]
+"successfulOperation" = "✅ 成功!"
+"errorOperation" = "❗ 操作错误。"
+"getInboundsFailed" = "❌ 获取入站信息失败。"
+"canceled" = "❌ {{ .Email }}:操作已取消。"
+"clientRefreshSuccess" = "✅ {{ .Email }}:客户端刷新成功。"
+"IpRefreshSuccess" = "✅ {{ .Email }}:IP 刷新成功。"
+"TGIdRefreshSuccess" = "✅ {{ .Email }}:客户端的 Telegram 用户刷新成功。"
+"resetTrafficSuccess" = "✅ {{ .Email }}:流量已重置成功。"
+"setTrafficLimitSuccess" = "✅ {{ .Email }}: 流量限制保存成功。"
+"expireResetSuccess" = "✅ {{ .Email }}:过期天数已重置成功。"
+"resetIpSuccess" = "✅ {{ .Email }}:成功保存 IP 限制数量为 {{ .Count }}。"
+"clearIpSuccess" = "✅ {{ .Email }}:IP 已成功清除。"
+"getIpLog" = "✅ {{ .Email }}:获取 IP 日志。"
+"getUserInfo" = "✅ {{ .Email }}:获取 Telegram 用户信息。"
+"removedTGUserSuccess" = "✅ {{ .Email }}:Telegram 用户已成功移除。"
+"enableSuccess" = "✅ {{ .Email }}:已成功启用。"
+"disableSuccess" = "✅ {{ .Email }}:已成功禁用。"
+"askToAddUserId" = "未找到您的配置!\r\n请向管理员询问,在您的配置中使用您的 Telegram 用户 ID。\r\n\r\n您的用户 ID:{{ .TgUserID }}
"