msgid ""
msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"

#: src/language/generate.ts:31
msgid "[Nginx UI] ACME User: %{name}, Email: %{email}, CA Dir: %{caDir}"
msgstr ""

#: src/language/generate.ts:32
msgid "[Nginx UI] Backing up current certificate for later revocation"
msgstr ""

#: src/language/generate.ts:33
msgid "[Nginx UI] Certificate renewed successfully"
msgstr ""

#: src/language/generate.ts:34
msgid "[Nginx UI] Certificate successfully revoked"
msgstr ""

#: src/language/generate.ts:35
msgid "[Nginx UI] Certificate was used for server, reloading server TLS certificate"
msgstr ""

#: src/language/generate.ts:36
msgid "[Nginx UI] Creating client facilitates communication with the CA server"
msgstr ""

#: src/language/generate.ts:37
msgid "[Nginx UI] Environment variables cleaned"
msgstr ""

#: src/language/generate.ts:38
msgid "[Nginx UI] Finished"
msgstr ""

#: src/language/generate.ts:39
msgid "[Nginx UI] Issued certificate successfully"
msgstr ""

#: src/language/generate.ts:40
msgid "[Nginx UI] Obtaining certificate"
msgstr ""

#: src/language/generate.ts:41
msgid "[Nginx UI] Preparing for certificate revocation"
msgstr ""

#: src/language/generate.ts:42
msgid "[Nginx UI] Preparing lego configurations"
msgstr ""

#: src/language/generate.ts:43
msgid "[Nginx UI] Reloading nginx"
msgstr ""

#: src/language/generate.ts:44
msgid "[Nginx UI] Revocation completed"
msgstr ""

#: src/language/generate.ts:45
msgid "[Nginx UI] Revoking certificate"
msgstr ""

#: src/language/generate.ts:46
msgid "[Nginx UI] Revoking old certificate"
msgstr ""

#: src/language/generate.ts:47
msgid "[Nginx UI] Setting DNS01 challenge provider"
msgstr ""

#: src/language/generate.ts:49
msgid "[Nginx UI] Setting environment variables"
msgstr ""

#: src/language/generate.ts:48
msgid "[Nginx UI] Setting HTTP01 challenge provider"
msgstr ""

#: src/language/generate.ts:50
msgid "[Nginx UI] Writing certificate private key to disk"
msgstr ""

#: src/language/generate.ts:51
msgid "[Nginx UI] Writing certificate to disk"
msgstr ""

#: src/views/user/userColumns.tsx:30
msgid "2FA"
msgstr ""

#: src/views/user/UserProfile.vue:151
msgid "2FA Settings"
msgstr ""

#: src/routes/modules/system.ts:38
msgid "About"
msgstr ""

#: src/views/nginx_log/NginxLogList.vue:23
msgid "Access Log"
msgstr ""

#: src/constants/errors/self_check.ts:21
msgid "Access log path not exist"
msgstr ""

#: src/components/NgxConfigEditor/LogEntry.vue:90
#: src/routes/modules/nginx_log.ts:17
msgid "Access Logs"
msgstr ""

#: src/routes/modules/certificates.ts:20
#: src/views/certificate/ACMEUser.vue:108
#: src/views/certificate/components/ACMEUserSelector.vue:85
msgid "ACME User"
msgstr ""

#: src/views/preference/tabs/AuthSettings.vue:26
msgid "Action"
msgstr ""

#: src/views/backup/AutoBackup/AutoBackup.vue:273
#: src/views/certificate/ACMEUser.vue:90
#: src/views/certificate/CertificateList/certColumns.tsx:92
#: src/views/certificate/DNSCredential.vue:30
#: src/views/config/configColumns.tsx:41
#: src/views/environments/group/columns.ts:41
#: src/views/environments/list/envColumns.tsx:96
#: src/views/nginx_log/NginxLogList.vue:52
#: src/views/notification/notificationColumns.tsx:72
#: src/views/preference/components/ExternalNotify/columns.tsx:76
#: src/views/site/site_list/columns.tsx:141
#: src/views/stream/columns.tsx:105
#: src/views/user/userColumns.tsx:58
msgid "Actions"
msgstr ""

#: src/composables/usePerformanceMetrics.ts:84
#: src/views/dashboard/components/PerformanceTablesCard.vue:44
msgid "Active connections"
msgstr ""

#: src/views/dashboard/components/ProcessDistributionCard.vue:48
msgid "Actual worker to configured ratio"
msgstr ""

#: src/components/NgxConfigEditor/NgxServer.vue:144
#: src/components/NgxConfigEditor/NgxUpstream.vue:166
#: src/language/curd.ts:19
#: src/views/preference/tabs/CertSettings.vue:45
#: src/views/site/site_edit/components/ConfigTemplate/ConfigTemplate.vue:94
#: src/views/stream/StreamList.vue:102
msgid "Add"
msgstr ""

#: src/views/preference/components/AuthSettings/AddPasskey.vue:45
#: src/views/preference/components/AuthSettings/AddPasskey.vue:49
msgid "Add a passkey"
msgstr ""

#: src/routes/modules/config.ts:20
#: src/views/config/components/ConfigLeftPanel.vue:169
#: src/views/config/components/ConfigLeftPanel.vue:242
msgid "Add Configuration"
msgstr ""

#: src/components/NgxConfigEditor/directive/DirectiveAdd.vue:102
msgid "Add Directive Below"
msgstr ""

#: src/components/NgxConfigEditor/LocationEditor.vue:131
#: src/components/NgxConfigEditor/LocationEditor.vue:158
msgid "Add Location"
msgstr ""

#: src/components/NgxConfigEditor/NgxServer.vue:92
msgid "Add Server"
msgstr ""

#: src/routes/modules/sites.ts:26
#: src/views/site/site_add/SiteAdd.vue:75
msgid "Add Site"
msgstr ""

#: src/views/stream/StreamList.vue:139
msgid "Add Stream"
msgstr ""

#: src/components/NgxConfigEditor/NgxUpstream.vue:187
msgid "Add Upstream"
msgstr ""

#: src/views/stream/StreamList.vue:72
msgid "Added successfully"
msgstr ""

#: src/views/certificate/components/DNSChallenge.vue:110
msgid "Additional"
msgstr ""

#: src/views/site/site_edit/components/SiteEditor/SiteEditor.vue:94
#: src/views/stream/components/StreamEditor.vue:57
msgid "Advance Mode"
msgstr ""

#: src/views/preference/components/AuthSettings/AddPasskey.vue:99
msgid "Afterwards, refresh this page and click add passkey again."
msgstr ""

#: src/components/EnvGroupTabs/EnvGroupTabs.vue:115
msgid "All"
msgstr ""

#: src/components/Notification/notifications.ts:181
#: src/language/constants.ts:58
msgid "All Recovery Codes Have Been Used"
msgstr ""

#: src/views/preference/tabs/OpenAISettings.vue:32
msgid "API Base Url"
msgstr ""

#: src/views/certificate/components/DNSChallenge.vue:83
msgid "API Document"
msgstr ""

#: src/views/preference/tabs/OpenAISettings.vue:46
msgid "API Proxy"
msgstr ""

#: src/views/preference/tabs/OpenAISettings.vue:58
msgid "API Token"
msgstr ""

#: src/views/preference/tabs/OpenAISettings.vue:67
msgid "API Type"
msgstr ""

#: src/views/preference/Preference.vue:52
msgid "App"
msgstr ""

#: src/views/system/Upgrade.vue:195
msgid "Arch"
msgstr ""

#: src/views/preference/tabs/AuthSettings.vue:130
msgid "Are you sure to delete this banned IP immediately?"
msgstr ""

#: src/views/preference/components/AuthSettings/Passkey.vue:113
msgid "Are you sure to delete this passkey immediately?"
msgstr ""

#: src/views/preference/components/AuthSettings/RecoveryCodes.vue:154
msgid "Are you sure to generate new recovery codes?"
msgstr ""

#: src/views/preference/components/AuthSettings/TOTP.vue:85
msgid "Are you sure to reset 2FA?"
msgstr ""

#: src/components/Notification/Notification.vue:111
#: src/views/notification/Notification.vue:40
msgid "Are you sure you want to clear all notifications?"
msgstr ""

#: src/components/ChatGPT/ChatMessageInput.vue:19
msgid "Are you sure you want to clear the record of chat?"
msgstr ""

#: src/language/curd.ts:27
msgid "Are you sure you want to delete permanently?"
msgstr ""

#: src/language/curd.ts:25
#: src/views/site/site_list/SiteList.vue:100
#: src/views/stream/StreamList.vue:122
msgid "Are you sure you want to delete?"
msgstr ""

#: src/components/EnvGroupTabs/EnvGroupTabs.vue:129
msgid "Are you sure you want to reload Nginx on the following sync nodes?"
msgstr ""

#: src/components/NgxConfigEditor/directive/DirectiveEditorItem.vue:97
msgid "Are you sure you want to remove this directive?"
msgstr ""

#: src/views/preference/tabs/CertSettings.vue:71
msgid "Are you sure you want to remove this item?"
msgstr ""

#: src/components/NgxConfigEditor/LocationEditor.vue:87
msgid "Are you sure you want to remove this location?"
msgstr ""

#: src/components/EnvGroupTabs/EnvGroupTabs.vue:141
msgid "Are you sure you want to restart Nginx on the following sync nodes?"
msgstr ""

#: src/language/curd.ts:26
msgid "Are you sure you want to restore?"
msgstr ""

#: src/components/ChatGPT/ChatGPT.vue:55
msgid "Ask ChatGPT for Help"
msgstr ""

#: src/components/ChatGPT/ChatMessage.vue:187
msgid "Assistant"
msgstr ""

#: src/components/SelfCheck/SelfCheck.vue:30
msgid "Attempt to fix"
msgstr ""

#: src/views/preference/tabs/AuthSettings.vue:17
msgid "Attempts"
msgstr ""

#: src/views/preference/Preference.vue:82
msgid "Auth"
msgstr ""

#: src/components/TwoFA/Authorization.vue:109
msgid "Authenticate with a passkey"
msgstr ""

#: src/views/preference/tabs/AuthSettings.vue:56
msgid "Authentication Settings"
msgstr ""

#: src/views/site/site_edit/components/ConfigTemplate/ConfigTemplate.vue:71
#: src/views/site/site_edit/components/ConfigTemplate/ConfigTemplate.vue:97
msgid "Author"
msgstr ""

#: src/views/dashboard/components/ParamsOpt/PerformanceConfig.vue:31
#: src/views/dashboard/components/ParamsOpt/PerformanceConfig.vue:43
msgid "Auto"
msgstr ""

#: src/views/dashboard/components/PerformanceTablesCard.vue:201
msgid "auto = CPU cores"
msgstr ""

#: src/routes/modules/backup.ts:27
#: src/views/backup/AutoBackup/AutoBackup.vue:282
msgid "Auto Backup"
msgstr ""

#: src/components/Notification/notifications.ts:37
msgid "Auto Backup Completed"
msgstr ""

#: src/components/Notification/notifications.ts:25
msgid "Auto Backup Configuration Error"
msgstr ""

#: src/components/Notification/notifications.ts:29
msgid "Auto Backup Failed"
msgstr ""

#: src/components/Notification/notifications.ts:33
msgid "Auto Backup Storage Failed"
msgstr ""

#: src/views/nginx_log/NginxLog.vue:150
msgid "Auto Refresh"
msgstr ""

#: src/views/site/site_edit/components/Cert/ObtainCert.vue:78
msgid "Auto-renewal disabled for %{name}"
msgstr ""

#: src/views/site/site_edit/components/Cert/ObtainCert.vue:71
msgid "Auto-renewal enabled for %{name}"
msgstr ""

#: src/views/certificate/components/RenewCert.vue:49
#: src/views/site/site_edit/components/Cert/IssueCert.vue:84
msgid "AutoCert is running, please wait..."
msgstr ""

#: src/components/ProcessingStatus/ProcessingStatus.vue:39
msgid "AutoCert is running..."
msgstr ""

#: src/components/SystemRestore/SystemRestoreContent.vue:332
msgid "Automatic Restart"
msgstr ""

#: src/views/certificate/CertificateEditor.vue:259
#: src/views/config/components/ConfigLeftPanel.vue:273
#: src/views/config/ConfigList.vue:112
#: src/views/config/ConfigList.vue:195
#: src/views/nginx_log/NginxLog.vue:174
#: src/views/site/site_edit/components/SiteEditor/SiteEditor.vue:156
#: src/views/stream/components/StreamEditor.vue:111
msgid "Back"
msgstr ""

#: src/views/other/Error.vue:22
msgid "Back Home"
msgstr ""

#: src/language/curd.ts:21
msgid "Back to List"
msgstr ""

#: src/routes/modules/backup.ts:11
#: src/routes/modules/backup.ts:19
msgid "Backup"
msgstr ""

#: src/components/SystemRestore/SystemRestoreContent.vue:155
msgid "Backup file integrity check failed, it may have been tampered with"
msgstr ""

#: src/constants/errors/backup.ts:41
msgid "Backup file not found: {0}"
msgstr ""

#: src/views/backup/components/BackupCreator.vue:42
msgid "Backup has been downloaded successfully"
msgstr ""

#: src/views/backup/AutoBackup/AutoBackup.vue:50
msgid "Backup Path"
msgstr ""

#: src/constants/errors/backup.ts:75
msgid "Backup path does not exist: {0}"
msgstr ""

#: src/constants/errors/backup.ts:77
msgid "Backup path is not a directory: {0}"
msgstr ""

#: src/constants/errors/backup.ts:62
msgid "Backup path is required for custom directory backup"
msgstr ""

#: src/constants/errors/backup.ts:60
msgid "Backup path not in granted access paths: {0}"
msgstr ""

#: src/views/backup/AutoBackup/components/CronEditor.vue:141
msgid "Backup Schedule"
msgstr ""

#: src/components/Notification/notifications.ts:38
msgid "Backup task %{backup_name} completed successfully, file: %{file_path}"
msgstr ""

#: src/components/Notification/notifications.ts:34
msgid "Backup task %{backup_name} failed during storage upload, error: %{error}"
msgstr ""

#: src/components/Notification/notifications.ts:30
msgid "Backup task %{backup_name} failed to execute, error: %{error}"
msgstr ""

#: src/views/backup/AutoBackup/AutoBackup.vue:24
msgid "Backup Type"
msgstr ""

#: src/views/preference/tabs/AuthSettings.vue:97
msgid "Ban Threshold Minutes"
msgstr ""

#: src/views/preference/tabs/AuthSettings.vue:118
msgid "Banned IPs"
msgstr ""

#: src/views/preference/tabs/AuthSettings.vue:20
msgid "Banned Until"
msgstr ""

#: src/views/preference/components/ExternalNotify/bark.ts:5
msgid "Bark"
msgstr ""

#: src/views/site/site_add/SiteAdd.vue:81
msgid "Base information"
msgstr ""

#: src/views/config/components/ConfigRightPanel/ConfigRightPanel.vue:29
#: src/views/site/site_edit/components/RightPanel/RightPanel.vue:31
#: src/views/stream/components/RightPanel/RightPanel.vue:19
msgid "Basic"
msgstr ""

#: src/views/site/site_edit/components/SiteEditor/SiteEditor.vue:97
#: src/views/stream/components/StreamEditor.vue:60
msgid "Basic Mode"
msgstr ""

#: src/views/dashboard/components/ParamsOpt/ProxyCacheConfig.vue:119
msgid "Basic Settings"
msgstr ""

#: src/language/curd.ts:32
msgid "Batch Edit"
msgstr ""

#: src/language/curd.ts:34
msgid "Batch Modify"
msgstr ""

#: src/views/environments/list/BatchUpgrader.vue:152
msgid "Batch Upgrade"
msgstr ""

#: src/language/curd.ts:36
msgid "Belows are selected items that you want to batch modify"
msgstr ""

#: src/constants/errors/nginx.ts:3
msgid "Block is nil"
msgstr ""

#: src/views/system/About.vue:55
msgid "Build with"
msgstr ""

#: src/views/certificate/ACMEUser.vue:36
msgid "CA Dir"
msgstr ""

#: src/views/dashboard/components/ParamsOptimization.vue:124
msgid "Cache"
msgstr ""

#: src/views/dashboard/components/ParamsOpt/ProxyCacheConfig.vue:178
msgid "Cache items not accessed within this time will be removed"
msgstr ""

#: src/views/dashboard/components/ParamsOpt/ProxyCacheConfig.vue:350
msgid "Cache loader processing time threshold"
msgstr ""

#: src/composables/usePerformanceMetrics.ts:139
#: src/views/dashboard/components/PerformanceTablesCard.vue:95
msgid "Cache manager processes"
msgstr ""

#: src/views/dashboard/components/ParamsOpt/ProxyCacheConfig.vue:288
msgid "Cache manager processing time threshold"
msgstr ""

#: src/views/dashboard/components/ParamsOpt/ProxyCacheConfig.vue:246
msgid "Cache Manager Settings"
msgstr ""

#: src/views/dashboard/components/ParamsOpt/ProxyCacheConfig.vue:124
msgid "Cache Path"
msgstr ""

#: src/composables/usePerformanceMetrics.ts:57
#: src/views/dashboard/components/ProcessDistributionCard.vue:14
msgid "Cache Processes"
msgstr ""

#: src/views/dashboard/components/ParamsOpt/ProxyCacheConfig.vue:137
msgid "Cache subdirectory levels structure, e.g. 1:2"
msgstr ""

#: src/views/preference/tabs/CertSettings.vue:19
msgid "CADir"
msgstr ""

#: src/views/dashboard/components/PerformanceStatisticsCard.vue:43
#: src/views/dashboard/components/PerformanceTablesCard.vue:191
msgid "Calculated based on worker_processes * worker_connections. Actual performance depends on hardware, configuration, and workload"
msgstr ""

#: src/components/ChatGPT/ChatMessage.vue:216
#: src/components/NgxConfigEditor/NgxServer.vue:61
#: src/components/NgxConfigEditor/NgxUpstream.vue:37
#: src/views/preference/components/AuthSettings/Passkey.vue:141
#: src/views/site/components/SiteStatusSelect.vue:124
#: src/views/site/site_edit/components/Cert/IssueCert.vue:40
#: src/views/site/site_edit/components/Cert/ObtainCert.vue:143
#: src/views/site/site_edit/components/EnableTLS/EnableTLS.vue:21
#: src/views/stream/components/StreamStatusSelect.vue:61
msgid "Cancel"
msgstr ""

#: src/constants/errors/backup.ts:76
msgid "Cannot access backup path {0}: {1}"
msgstr ""

#: src/constants/errors/backup.ts:79
msgid "Cannot access storage path {0}: {1}"
msgstr ""

#: src/constants/errors/user.ts:11
msgid "Cannot change initial user password in demo mode"
msgstr ""

#: src/components/ConfigHistory/DiffViewer.vue:67
#: src/components/ConfigHistory/DiffViewer.vue:84
msgid "Cannot compare: Missing content"
msgstr ""

#: src/views/dashboard/NginxDashBoard.vue:129
msgid "Cannot get performance data in this state"
msgstr ""

#: src/constants/errors/user.ts:10
msgid "Cannot remove initial user"
msgstr ""

#: src/views/preference/Preference.vue:88
msgid "Cert"
msgstr ""

#: src/constants/errors/cert.ts:3
msgid "Cert path is not under the nginx conf dir"
msgstr ""

#: src/components/Notification/notifications.ts:42
msgid "Certificate %{name} has expired"
msgstr ""

#: src/components/Notification/notifications.ts:46
#: src/components/Notification/notifications.ts:50
#: src/components/Notification/notifications.ts:54
msgid "Certificate %{name} will expire in %{days} days"
msgstr ""

#: src/components/Notification/notifications.ts:58
msgid "Certificate %{name} will expire in 1 day"
msgstr ""

#: src/constants/errors/cert.ts:4
msgid "Certificate decode error"
msgstr ""

#: src/components/Notification/notifications.ts:45
msgid "Certificate Expiration Notice"
msgstr ""

#: src/components/Notification/notifications.ts:41
msgid "Certificate Expired"
msgstr ""

#: src/components/Notification/notifications.ts:49
#: src/components/Notification/notifications.ts:53
#: src/components/Notification/notifications.ts:57
msgid "Certificate Expiring Soon"
msgstr ""

#: src/language/generate.ts:4
msgid "Certificate not found: %{error}"
msgstr ""

#: src/constants/errors/cert.ts:5
msgid "Certificate parse error"
msgstr ""

#: src/constants/errors/cert.ts:8
msgid "Certificate path is empty"
msgstr ""

#: src/views/certificate/components/RemoveCert.vue:41
#: src/views/certificate/components/RemoveCert.vue:61
msgid "Certificate removed successfully"
msgstr ""

#: src/views/preference/tabs/CertSettings.vue:27
msgid "Certificate Renewal Interval"
msgstr ""

#: src/language/constants.ts:21
msgid "Certificate renewed successfully"
msgstr ""

#: src/language/generate.ts:5
msgid "Certificate revoked successfully"
msgstr ""

#: src/views/certificate/CertificateEditor.vue:128
#: src/views/site/site_edit/components/Cert/Cert.vue:58
msgid "Certificate Status"
msgid_plural "Certificates Status"
msgstr[0] ""
msgstr[1] ""

#: src/routes/modules/certificates.ts:11
#: src/views/certificate/CertificateList/Certificate.vue:19
msgid "Certificates"
msgstr ""

#: src/routes/modules/certificates.ts:28
msgid "Certificates List"
msgstr ""

#: src/components/AutoCertForm/AutoCertForm.vue:65
msgid "Challenge Method"
msgstr ""

#: src/views/site/site_edit/components/Cert/ChangeCert.vue:51
#: src/views/site/site_edit/components/Cert/ChangeCert.vue:55
msgid "Change Certificate"
msgstr ""

#: src/views/user/UserProfile.vue:181
msgid "Change Password"
msgstr ""

#: src/views/site/site_edit/components/Cert/Cert.vue:77
msgid "Changed Certificate"
msgid_plural "Changed Certificates"
msgstr[0] ""
msgstr[1] ""

#: src/views/config/components/ConfigRightPanel/Basic.vue:47
msgid "Changed Path"
msgstr ""

#: src/views/environments/list/BatchUpgrader.vue:159
#: src/views/system/Upgrade.vue:207
msgid "Channel"
msgstr ""

#: src/views/config/components/ConfigRightPanel/ConfigRightPanel.vue:38
#: src/views/site/site_edit/components/RightPanel/RightPanel.vue:41
#: src/views/stream/components/RightPanel/RightPanel.vue:22
msgid "Chat"
msgstr ""

#: src/components/SelfCheck/SelfCheckHeaderBanner.vue:40
#: src/components/SelfCheck/SelfCheckHeaderBanner.vue:64
msgid "Check"
msgstr ""

#: src/views/system/Upgrade.vue:204
msgid "Check again"
msgstr ""

#: src/language/generate.ts:6
msgid "Check if /var/run/docker.sock exists. If you are using Nginx UI Official Docker Image, please make sure the docker socket is mounted like this: `-v /var/run/docker.sock:/var/run/docker.sock`. Nginx UI official image uses /var/run/docker.sock to communicate with the host Docker Engine via Docker Client API. This feature is used to control Nginx in another container and perform container replacement rather than binary replacement during OTA upgrades of Nginx UI to ensure container dependencies are also upgraded. If you don't need this feature, please add the environment variable NGINX_UI_IGNORE_DOCKER_SOCKET=true to the container."
msgstr ""

#: src/components/SelfCheck/tasks/frontend/https-check.ts:14
msgid "Check if HTTPS is enabled. Using HTTP outside localhost is insecure and prevents using Passkeys and clipboard features"
msgstr ""

#: src/language/generate.ts:8
msgid "Check if the nginx access log path exists. By default, this path is obtained from 'nginx -V'. If it cannot be obtained or the obtained path does not point to a valid, existing file, an error will be reported. In this case, you need to modify the configuration file to specify the access log path.Refer to the docs for more details: https://nginxui.com/zh_CN/guide/config-nginx.html#accesslogpath"
msgstr ""

#: src/language/generate.ts:9
msgid "Check if the nginx configuration directory exists"
msgstr ""

#: src/language/generate.ts:10
msgid "Check if the nginx configuration entry file exists"
msgstr ""

#: src/language/generate.ts:11
msgid "Check if the nginx error log path exists. By default, this path is obtained from 'nginx -V'. If it cannot be obtained or the obtained path does not point to a valid, existing file, an error will be reported. In this case, you need to modify the configuration file to specify the error log path. Refer to the docs for more details: https://nginxui.com/zh_CN/guide/config-nginx.html#errorlogpath"
msgstr ""

#: src/language/generate.ts:7
msgid "Check if the nginx PID path exists. By default, this path is obtained from 'nginx -V'. If it cannot be obtained, an error will be reported. In this case, you need to modify the configuration file to specify the Nginx PID path.Refer to the docs for more details: https://nginxui.com/zh_CN/guide/config-nginx.html#pidpath"
msgstr ""

#: src/language/generate.ts:12
msgid "Check if the nginx.conf includes the conf.d directory"
msgstr ""

#: src/language/generate.ts:13
msgid "Check if the nginx.conf includes the sites-enabled directory"
msgstr ""

#: src/language/generate.ts:14
msgid "Check if the nginx.conf includes the streams-enabled directory"
msgstr ""

#: src/language/generate.ts:15
msgid "Check if the sites-available and sites-enabled directories are under the nginx configuration directory"
msgstr ""

#: src/language/generate.ts:16
msgid "Check if the streams-available and streams-enabled directories are under the nginx configuration directory"
msgstr ""

#: src/constants/errors/crypto.ts:3
msgid "Cipher text is too short"
msgstr ""

#: src/language/constants.ts:13
msgid "Cleaning environment variables"
msgstr ""

#: src/components/ChatGPT/ChatMessageInput.vue:23
#: src/components/Notification/Notification.vue:116
#: src/views/notification/Notification.vue:45
msgid "Clear"
msgstr ""

#: src/components/Notification/Notification.vue:69
#: src/views/notification/Notification.vue:13
msgid "Cleared successfully"
msgstr ""

#: src/components/SystemRestore/SystemRestoreContent.vue:194
#: src/components/SystemRestore/SystemRestoreContent.vue:271
msgid "Click or drag backup file to this area to upload"
msgstr ""

#: src/language/curd.ts:49
#: src/language/curd.ts:53
msgid "Click or drag files to this area to upload"
msgstr ""

#: src/language/curd.ts:50
#: src/language/curd.ts:54
msgid "Click or drag folders to this area to upload"
msgstr ""

#: src/views/preference/components/AuthSettings/TOTP.vue:110
msgid "Click to copy"
msgstr ""

#: src/views/dashboard/components/ParamsOpt/PerformanceConfig.vue:120
msgid "Client Body Buffer Size"
msgstr ""

#: src/views/dashboard/components/ParamsOpt/PerformanceConfig.vue:113
msgid "Client Header Buffer Size"
msgstr ""

#: src/views/dashboard/components/ParamsOpt/PerformanceConfig.vue:99
msgid "Client Max Body Size"
msgstr ""

#: src/views/dashboard/components/ParamsOpt/PerformanceConfig.vue:121
msgid "Client request body buffer size"
msgstr ""

#: src/views/dashboard/components/ParamsOpt/PerformanceConfig.vue:114
msgid "Client request header buffer size"
msgstr ""

#: src/components/ConfigHistory/ConfigHistory.vue:179
#: src/language/curd.ts:14
msgid "Close"
msgstr ""

#: src/components/PortScanner/PortScannerCompact.vue:45
msgid "Closed"
msgstr ""

#: src/constants/errors/llm.ts:2
msgid "Code completion is not enabled"
msgstr ""

#: src/views/preference/tabs/OpenAISettings.vue:86
msgid "Code Completion Model"
msgstr ""

#: src/views/preference/tabs/LogrotateSettings.vue:23
msgid "Command"
msgstr ""

#: src/constants/errors/docker.ts:6
msgid "Command exited with unexpected exit code: {0}, error: {1}"
msgstr ""

#: src/components/NgxConfigEditor/directive/DirectiveEditorItem.vue:115
#: src/components/NgxConfigEditor/LocationEditor.vue:104
#: src/components/NgxConfigEditor/LocationEditor.vue:135
#: src/components/NgxConfigEditor/NgxServer.vue:123
msgid "Comments"
msgstr ""

#: src/components/ConfigHistory/ConfigHistory.vue:136
msgid "Compare"
msgstr ""

#: src/components/ConfigHistory/DiffViewer.vue:388
msgid "Compare Configurations"
msgstr ""

#: src/components/ConfigHistory/ConfigHistory.vue:139
msgid "Compare Selected"
msgstr ""

#: src/components/ConfigHistory/ConfigHistory.vue:138
msgid "Compare with Current"
msgstr ""

#: src/views/dashboard/components/ParamsOpt/PerformanceConfig.vue:88
msgid "Compression level, 1 is lowest, 9 is highest"
msgstr ""

#: src/views/preference/components/ExternalNotify/columns.tsx:46
#: src/views/preference/components/ExternalNotify/columns.tsx:58
msgid "Config"
msgstr ""

#: src/constants/errors/self_check.ts:17
msgid "Config directory not exist"
msgstr ""

#: src/constants/errors/self_check.ts:18
msgid "Config entry file not exist"
msgstr ""

#: src/constants/errors/backup.ts:14
msgid "Config path is empty"
msgstr ""

#: src/views/site/site_edit/components/RightPanel/RightPanel.vue:37
msgid "Config Template"
msgstr ""

#: src/views/config/InspectConfig.vue:32
msgid "Configuration file is test successful"
msgstr ""

#: src/components/ConfigHistory/ConfigHistory.vue:147
msgid "Configuration History"
msgstr ""

#: src/views/dashboard/components/PerformanceTablesCard.vue:168
msgid "Configuration information"
msgstr ""

#: src/views/site/site_add/SiteAdd.vue:87
msgid "Configuration Name"
msgstr ""

#: src/views/config/ConfigList.vue:104
msgid "Configurations"
msgstr ""

#: src/views/site/site_add/SiteAdd.vue:82
msgid "Configure SSL"
msgstr ""

#: src/views/user/UserProfile.vue:204
msgid "Confirm New Password"
msgstr ""

#: src/views/dashboard/Environments.vue:141
msgid "Connected"
msgstr ""

#: src/views/dashboard/NginxDashBoard.vue:82
msgid "Connection error, trying to reconnect..."
msgstr ""

#: src/views/terminal/Terminal.vue:139
msgid "Connection lost, please refresh the page."
msgstr ""

#: src/views/dashboard/components/ParamsOpt/PerformanceConfig.vue:61
msgid "Connection timeout period"
msgstr ""

#: src/constants/errors/docker.ts:7
msgid "Container status unknown"
msgstr ""

#: src/components/NgxConfigEditor/directive/DirectiveEditorItem.vue:120
#: src/components/NgxConfigEditor/LocationEditor.vue:116
#: src/components/NgxConfigEditor/LocationEditor.vue:144
msgid "Content"
msgstr ""

#: src/components/SensitiveString/SensitiveString.vue:37
#: src/views/preference/components/AuthSettings/RecoveryCodes.vue:121
msgid "Copied"
msgstr ""

#: src/views/backup/components/BackupCreator.vue:128
msgid "Copied!"
msgstr ""

#: src/components/SensitiveString/SensitiveString.vue:37
#: src/views/backup/components/BackupCreator.vue:128
msgid "Copy"
msgstr ""

#: src/views/preference/components/AuthSettings/RecoveryCodes.vue:121
msgid "Copy Codes"
msgstr ""

#: src/views/system/Upgrade.vue:162
msgid "Core Upgrade"
msgstr ""

#: src/views/dashboard/ServerAnalytic.vue:301
msgid "CPU Status"
msgstr ""

#: src/views/dashboard/components/ResourceUsageCard.vue:27
msgid "CPU Usage"
msgstr ""

#: src/views/dashboard/components/ResourceUsageCard.vue:38
msgid "CPU usage is relatively high, consider optimizing Nginx configuration"
msgstr ""

#: src/views/dashboard/ServerAnalytic.vue:195
msgid "CPU:"
msgstr ""

#: src/views/site/site_add/SiteAdd.vue:148
msgid "Create Another"
msgstr ""

#: src/views/backup/components/BackupCreator.vue:86
msgid "Create Backup"
msgstr ""

#: src/views/config/ConfigList.vue:122
msgid "Create File"
msgstr ""

#: src/views/config/components/Mkdir.vue:47
#: src/views/config/ConfigList.vue:129
msgid "Create Folder"
msgstr ""

#: src/views/backup/components/BackupCreator.vue:75
msgid "Create system backups including Nginx configuration and Nginx UI settings. Backup files will be automatically downloaded to your computer."
msgstr ""

#: src/views/backup/AutoBackup/AutoBackup.vue:229
#: src/views/environments/group/columns.ts:29
#: src/views/notification/notificationColumns.tsx:51
#: src/views/preference/components/AuthSettings/Passkey.vue:95
#: src/views/preference/components/ExternalNotify/columns.tsx:71
#: src/views/user/userColumns.tsx:46
msgid "Created at"
msgstr ""

#: src/views/config/components/Mkdir.vue:35
msgid "Created successfully"
msgstr ""

#: src/language/constants.ts:9
msgid "Creating client facilitates communication with the CA server"
msgstr ""

#: src/components/AutoCertForm/DNSChallenge.vue:104
msgid "Credential"
msgstr ""

#: src/views/certificate/components/DNSChallenge.vue:99
msgid "Credentials"
msgstr ""

#: src/views/backup/AutoBackup/components/CronEditor.vue:194
msgid "Cron Expression"
msgstr ""

#: src/views/preference/components/AuthSettings/TOTP.vue:72
msgid "Current account is enabled TOTP."
msgstr ""

#: src/views/preference/components/AuthSettings/TOTP.vue:70
msgid "Current account is not enabled TOTP."
msgstr ""

#: src/views/dashboard/components/ConnectionMetricsCard.vue:27
msgid "Current active connections"
msgstr ""

#: src/components/ConfigHistory/DiffViewer.vue:72
msgid "Current Content"
msgstr ""

#: src/views/user/UserProfile.vue:186
msgid "Current Password"
msgstr ""

#: src/views/dashboard/components/PerformanceStatisticsCard.vue:65
msgid "Current usage"
msgstr ""

#: src/views/system/Upgrade.vue:182
msgid "Current Version"
msgstr ""

#: src/components/NgxConfigEditor/NgxConfigEditor.vue:33
#: src/views/site/site_edit/components/ConfigTemplate/ConfigTemplate.vue:104
msgid "Custom"
msgstr ""

#: src/views/backup/AutoBackup/components/CronEditor.vue:131
msgid "Custom cron expression"
msgstr ""

#: src/views/backup/AutoBackup/AutoBackup.vue:29
#: src/views/backup/AutoBackup/AutoBackup.vue:41
msgid "Custom Directory"
msgstr ""

#: src/views/preference/tabs/NodeSettings.vue:19
msgid "Customize the name of local node to be displayed in the environment indicator."
msgstr ""

#: src/views/backup/AutoBackup/components/CronEditor.vue:19
msgid "Daily"
msgstr ""

#: src/views/backup/AutoBackup/AutoBackup.vue:128
msgid "Daily at %{time}"
msgstr ""

#: src/routes/modules/dashboard.ts:10
#: src/views/config/components/ConfigLeftPanel.vue:109
#: src/views/config/components/ConfigLeftPanel.vue:159
#: src/views/config/ConfigList.vue:67
msgid "Dashboard"
msgstr ""

#: src/views/backup/AutoBackup/components/CronEditor.vue:184
msgid "Day of Month"
msgstr ""

#: src/views/backup/AutoBackup/components/CronEditor.vue:180
msgid "Day of Week"
msgstr ""

#: src/views/preference/tabs/CertSettings.vue:32
msgid "Days"
msgstr ""

#: src/constants/errors/middleware.ts:3
msgid "Decryption failed"
msgstr ""

#: src/views/dashboard/components/ParamsOpt/ProxyCacheConfig.vue:150
msgid "Define shared memory zone name and size, e.g. proxy_cache:10m"
msgstr ""

#: src/components/NgxConfigEditor/NgxServer.vue:110
#: src/components/NgxConfigEditor/NgxUpstream.vue:134
#: src/language/curd.ts:9
#: src/views/certificate/components/RemoveCert.vue:88
#: src/views/site/site_list/SiteList.vue:109
#: src/views/stream/StreamList.vue:131
msgid "Delete"
msgstr ""

#: src/views/certificate/components/RemoveCert.vue:93
msgid "Delete Certificate"
msgstr ""

#: src/language/curd.ts:11
msgid "Delete Permanently"
msgstr ""

#: src/components/Notification/notifications.ts:85
#: src/language/constants.ts:50
msgid "Delete Remote Site Error"
msgstr ""

#: src/components/Notification/notifications.ts:89
#: src/language/constants.ts:49
msgid "Delete Remote Site Success"
msgstr ""

#: src/components/Notification/notifications.ts:141
msgid "Delete Remote Stream Error"
msgstr ""

#: src/components/Notification/notifications.ts:145
msgid "Delete Remote Stream Success"
msgstr ""

#: src/components/Notification/notifications.ts:86
msgid "Delete site %{name} from %{node} failed"
msgstr ""

#: src/components/Notification/notifications.ts:90
msgid "Delete site %{name} from %{node} successfully"
msgstr ""

#: src/views/site/site_list/SiteList.vue:48
msgid "Delete site: %{site_name}"
msgstr ""

#: src/components/Notification/notifications.ts:142
msgid "Delete stream %{name} from %{node} failed"
msgstr ""

#: src/components/Notification/notifications.ts:146
msgid "Delete stream %{name} from %{node} successfully"
msgstr ""

#: src/views/stream/StreamList.vue:47
msgid "Delete stream: %{stream_name}"
msgstr ""

#: src/language/curd.ts:29
msgid "Deleted successfully"
msgstr ""

#: src/views/preference/tabs/NodeSettings.vue:28
msgid "Demo"
msgstr ""

#: src/views/config/components/ConfigRightPanel/Basic.vue:60
msgid "Deploy"
msgstr ""

#: src/views/site/site_edit/components/ConfigTemplate/ConfigTemplate.vue:74
#: src/views/site/site_edit/components/ConfigTemplate/ConfigTemplate.vue:98
msgid "Description"
msgstr ""

#: src/constants/errors/site.ts:3
#: src/constants/errors/stream.ts:3
msgid "Destination file already exists"
msgstr ""

#: src/constants/errors/config.ts:3
msgid "Destination file: {0} already exists"
msgstr ""

#: src/views/notification/notificationColumns.tsx:66
msgid "Details"
msgstr ""

#: src/views/system/Upgrade.vue:216
msgid "Dev"
msgstr ""

#: src/views/system/About.vue:28
msgid "Development Mode"
msgstr ""

#: src/views/preference/components/ExternalNotify/dingtalk.ts:5
msgid "DingTalk"
msgstr ""

#: src/components/NgxConfigEditor/directive/DirectiveAdd.vue:72
msgid "Directive"
msgstr ""

#: src/constants/errors/nginx_log.ts:6
msgid "Directive params is empty"
msgstr ""

#: src/constants/errors/nginx_log.ts:5
msgid "Directive.Params neither access_log nor error_log"
msgstr ""

#: src/constants/errors/nginx_log.ts:4
msgid "DirectiveIdx out of range"
msgstr ""

#: src/components/NgxConfigEditor/directive/DirectiveEditor.vue:35
msgid "Directives"
msgstr ""

#: src/views/dashboard/components/ParamsOpt/ProxyCacheConfig.vue:135
msgid "Directory Levels"
msgstr ""

#: src/views/dashboard/components/ParamsOpt/ProxyCacheConfig.vue:127
msgid "Directory path to store cache files"
msgstr ""

#: src/views/site/components/SiteStatusSelect.vue:115
#: src/views/stream/components/StreamStatusSelect.vue:54
msgid "disable"
msgstr ""

#: src/views/site/site_edit/components/Cert/ObtainCert.vue:80
msgid "Disable auto-renewal failed for %{name}"
msgstr ""

#: src/components/Notification/notifications.ts:93
#: src/language/constants.ts:52
msgid "Disable Remote Site Error"
msgstr ""

#: src/components/Notification/notifications.ts:117
msgid "Disable Remote Site Maintenance Error"
msgstr ""

#: src/components/Notification/notifications.ts:121
msgid "Disable Remote Site Maintenance Success"
msgstr ""

#: src/components/Notification/notifications.ts:97
#: src/language/constants.ts:51
msgid "Disable Remote Site Success"
msgstr ""

#: src/components/Notification/notifications.ts:149
msgid "Disable Remote Stream Error"
msgstr ""

#: src/components/Notification/notifications.ts:153
msgid "Disable Remote Stream Success"
msgstr ""

#: src/components/Notification/notifications.ts:94
msgid "Disable site %{name} from %{node} failed"
msgstr ""

#: src/components/Notification/notifications.ts:98
msgid "Disable site %{name} from %{node} successfully"
msgstr ""

#: src/components/Notification/notifications.ts:118
msgid "Disable site %{name} maintenance on %{node} failed"
msgstr ""

#: src/components/Notification/notifications.ts:122
msgid "Disable site %{name} maintenance on %{node} successfully"
msgstr ""

#: src/components/Notification/notifications.ts:150
msgid "Disable stream %{name} from %{node} failed"
msgstr ""

#: src/components/Notification/notifications.ts:154
msgid "Disable stream %{name} from %{node} successfully"
msgstr ""

#: src/views/backup/AutoBackup/AutoBackup.vue:175
#: src/views/environments/list/envColumns.tsx:60
#: src/views/environments/list/envColumns.tsx:78
#: src/views/preference/tabs/HTTPSettings.vue:24
#: src/views/preference/tabs/NodeSettings.vue:25
#: src/views/preference/tabs/NodeSettings.vue:30
#: src/views/site/components/SiteStatusSelect.vue:162
#: src/views/site/site_edit/components/SiteEditor/SiteEditor.vue:62
#: src/views/site/site_list/columns.tsx:127
#: src/views/stream/columns.tsx:94
#: src/views/stream/components/StreamEditor.vue:32
#: src/views/user/userColumns.tsx:39
msgid "Disabled"
msgstr ""

#: src/views/site/components/SiteStatusSelect.vue:67
#: src/views/stream/components/StreamStatusSelect.vue:39
msgid "Disabled successfully"
msgstr ""

#: src/views/dashboard/ServerAnalytic.vue:366
msgid "Disk IO"
msgstr ""

#: src/routes/modules/certificates.ts:56
#: src/views/certificate/DNSCredential.vue:38
msgid "DNS Credentials"
msgstr ""

#: src/components/AutoCertForm/DNSChallenge.vue:94
#: src/views/certificate/components/DNSChallenge.vue:72
msgid "DNS Provider"
msgstr ""

#: src/components/AutoCertForm/AutoCertForm.vue:72
msgid "DNS01"
msgstr ""

#: src/components/AutoCertForm/AutoCertForm.vue:97
msgid "Do not enable this option unless you are sure that you need it."
msgstr ""

#: src/views/site/components/SiteStatusSelect.vue:120
msgid "Do you want to %{action} this site?"
msgstr ""

#: src/views/stream/components/StreamStatusSelect.vue:57
msgid "Do you want to %{action} this stream?"
msgstr ""

#: src/views/site/site_edit/components/Cert/ObtainCert.vue:139
msgid "Do you want to disable auto-cert renewal?"
msgstr ""

#: src/views/site/site_edit/components/Cert/IssueCert.vue:33
#: src/views/site/site_edit/components/EnableTLS/EnableTLS.vue:14
msgid "Do you want to enable TLS?"
msgstr ""

#: src/components/NgxConfigEditor/NgxServer.vue:57
msgid "Do you want to remove this server?"
msgstr ""

#: src/components/NgxConfigEditor/NgxUpstream.vue:33
msgid "Do you want to remove this upstream?"
msgstr ""

#: src/constants/errors/docker.ts:2
msgid "Docker client not initialized"
msgstr ""

#: src/language/generate.ts:17
msgid "Docker socket exists"
msgstr ""

#: src/constants/errors/self_check.ts:16
msgid "Docker socket not exist"
msgstr ""

#: src/components/NgxConfigEditor/directive/DirectiveAdd.vue:88
#: src/components/NgxConfigEditor/directive/DirectiveDocuments.vue:16
msgid "Document"
msgid_plural "Documents"
msgstr[0] ""
msgstr[1] ""

#: src/views/certificate/components/WildcardCertificate.vue:66
msgid "Domain"
msgstr ""

#: src/views/certificate/CertificateEditor.vue:112
msgid "Domains list is empty, try to reopen Auto Cert for %{config}"
msgstr ""

#: src/language/constants.ts:27
msgid "Download latest release error"
msgstr ""

#: src/language/constants.ts:26
msgid "Downloading latest release"
msgstr ""

#: src/views/environments/list/BatchUpgrader.vue:188
#: src/views/system/Upgrade.vue:237
msgid "Dry run mode enabled"
msgstr ""

#: src/views/preference/components/AuthSettings/AddPasskey.vue:101
msgid "Due to the security policies of some browsers, you cannot use passkeys on non-HTTPS websites, except when running on localhost."
msgstr ""

#: src/views/site/site_list/SiteDuplicate.vue:72
#: src/views/site/site_list/SiteList.vue:95
#: src/views/stream/components/StreamDuplicate.vue:64
#: src/views/stream/StreamList.vue:117
msgid "Duplicate"
msgstr ""

#: src/views/site/site_list/SiteDuplicate.vue:48
#: src/views/stream/components/StreamDuplicate.vue:40
msgid "Duplicate to local successfully"
msgstr ""

#: src/views/dashboard/components/ModulesTable.vue:87
#: src/views/dashboard/components/ModulesTable.vue:92
msgid "Dynamic"
msgstr ""

#: src/views/backup/AutoBackup/components/CronEditor.vue:197
msgid "e.g., 0 0 * * * (daily at midnight)"
msgstr ""

#: src/language/curd.ts:8
msgid "Edit"
msgstr ""

#: src/views/site/site_edit/components/SiteEditor/SiteEditor.vue:51
#: src/views/stream/components/StreamEditor.vue:21
msgid "Edit %{n}"
msgstr ""

#: src/routes/modules/config.ts:30
#: src/views/config/components/ConfigLeftPanel.vue:242
msgid "Edit Configuration"
msgstr ""

#: src/routes/modules/sites.ts:34
msgid "Edit Site"
msgstr ""

#: src/routes/modules/streams.ts:20
msgid "Edit Stream"
msgstr ""

#: src/views/certificate/ACMEUser.vue:24
#: src/views/preference/tabs/CertSettings.vue:12
msgid "Email"
msgstr ""

#: src/views/install/components/InstallForm.vue:75
msgid "Email (*)"
msgstr ""

#: src/views/site/components/SiteStatusSelect.vue:114
#: src/views/stream/components/StreamStatusSelect.vue:54
msgid "enable"
msgstr ""

#: src/views/preference/components/AuthSettings/TOTP.vue:45
msgid "Enable 2FA successfully"
msgstr ""

#: src/views/site/site_edit/components/Cert/ObtainCert.vue:73
msgid "Enable auto-renewal failed for %{name}"
msgstr ""

#: src/views/preference/tabs/OpenAISettings.vue:80
msgid "Enable Code Completion"
msgstr ""

#: src/views/dashboard/components/ParamsOpt/PerformanceConfig.vue:68
msgid "Enable compression for content transfer"
msgstr ""

#: src/views/site/site_add/SiteAdd.vue:37
msgid "Enable failed"
msgstr ""

#: src/views/preference/tabs/ServerSettings.vue:30
msgid "Enable HTTPS"
msgstr ""

#: src/views/dashboard/components/ParamsOpt/ProxyCacheConfig.vue:114
msgid "Enable Proxy Cache"
msgstr ""

#: src/components/Notification/notifications.ts:101
#: src/language/constants.ts:54
msgid "Enable Remote Site Error"
msgstr ""

#: src/components/Notification/notifications.ts:109
msgid "Enable Remote Site Maintenance Error"
msgstr ""

#: src/components/Notification/notifications.ts:113
msgid "Enable Remote Site Maintenance Success"
msgstr ""

#: src/components/Notification/notifications.ts:105
#: src/language/constants.ts:53
msgid "Enable Remote Site Success"
msgstr ""

#: src/components/Notification/notifications.ts:157
msgid "Enable Remote Stream Error"
msgstr ""

#: src/components/Notification/notifications.ts:161
msgid "Enable Remote Stream Success"
msgstr ""

#: src/components/Notification/notifications.ts:110
msgid "Enable site %{name} maintenance on %{node} failed"
msgstr ""

#: src/components/Notification/notifications.ts:114
msgid "Enable site %{name} maintenance on %{node} successfully"
msgstr ""

#: src/components/Notification/notifications.ts:102
msgid "Enable site %{name} on %{node} failed"
msgstr ""

#: src/components/Notification/notifications.ts:106
msgid "Enable site %{name} on %{node} successfully"
msgstr ""

#: src/components/Notification/notifications.ts:158
msgid "Enable stream %{name} on %{node} failed"
msgstr ""

#: src/components/Notification/notifications.ts:162
msgid "Enable stream %{name} on %{node} successfully"
msgstr ""

#: src/views/dashboard/NginxDashBoard.vue:147
msgid "Enable stub_status module"
msgstr ""

#: src/views/site/site_edit/components/EnableTLS/EnableTLS.vue:115
msgid "Enable TLS"
msgstr ""

#: src/views/preference/components/AuthSettings/TOTP.vue:81
msgid "Enable TOTP"
msgstr ""

#: src/views/backup/AutoBackup/AutoBackup.vue:174
#: src/views/environments/list/envColumns.tsx:69
#: src/views/environments/list/envColumns.tsx:75
#: src/views/preference/tabs/HTTPSettings.vue:24
#: src/views/preference/tabs/LogrotateSettings.vue:20
#: src/views/preference/tabs/NodeSettings.vue:25
#: src/views/preference/tabs/NodeSettings.vue:30
#: src/views/site/components/SiteStatusSelect.vue:159
#: src/views/site/site_edit/components/SiteEditor/SiteEditor.vue:56
#: src/views/site/site_list/columns.tsx:123
#: src/views/stream/columns.tsx:90
#: src/views/stream/components/RightPanel/Basic.vue:23
#: src/views/stream/components/StreamEditor.vue:26
#: src/views/user/userColumns.tsx:36
msgid "Enabled"
msgstr ""

#: src/views/site/components/SiteStatusSelect.vue:54
#: src/views/site/site_add/SiteAdd.vue:34
#: src/views/stream/components/StreamStatusSelect.vue:26
msgid "Enabled successfully"
msgstr ""

#: src/views/site/site_edit/components/Cert/IssueCert.vue:76
msgid "Encrypt website with Let's Encrypt"
msgstr ""

#: src/components/PortScanner/PortScannerCompact.vue:164
msgid "End"
msgstr ""

#: src/language/constants.ts:22
msgid "Environment variables cleaned"
msgstr ""

#: src/routes/modules/environments.ts:11
#: src/views/dashboard/Environments.vue:83
#: src/views/environments/list/Environment.vue:82
msgid "Environments"
msgstr ""

#: src/constants/index.ts:22
#: src/views/config/InspectConfig.vue:49
#: src/views/notification/notificationColumns.tsx:14
msgid "Error"
msgstr ""

#: src/components/ConfigHistory/DiffViewer.vue:145
msgid "Error initializing diff viewer"
msgstr ""

#: src/views/nginx_log/NginxLogList.vue:27
msgid "Error Log"
msgstr ""

#: src/constants/errors/self_check.ts:22
msgid "Error log path not exist"
msgstr ""

#: src/components/NgxConfigEditor/LogEntry.vue:98
#: src/routes/modules/nginx_log.ts:24
msgid "Error Logs"
msgstr ""

#: src/components/ConfigHistory/DiffViewer.vue:97
msgid "Error processing content"
msgstr ""

#: src/views/system/Upgrade.vue:196
msgid "Executable Path"
msgstr ""

#: src/views/backup/AutoBackup/components/CronEditor.vue:127
msgid "Execute on every %{day} at %{time}"
msgstr ""

#: src/views/backup/AutoBackup/components/CronEditor.vue:125
msgid "Execute on every day at %{time}"
msgstr ""

#: src/views/backup/AutoBackup/components/CronEditor.vue:129
msgid "Execute on every month on day %{day} at %{time}"
msgstr ""

#: src/components/CertInfo/CertInfo.vue:31
#: src/views/certificate/CertificateList/certColumns.tsx:80
msgid "Expired"
msgstr ""

#: src/components/CertInfo/CertInfo.vue:38
msgid "Expired At: %{date}"
msgstr ""

#: src/language/curd.ts:22
msgid "Export Excel"
msgstr ""

#: src/views/preference/tabs/NginxSettings.vue:49
msgid "External Docker Container"
msgstr ""

#: src/views/preference/Preference.vue:58
#: src/views/preference/tabs/ExternalNotify.vue:9
msgid "External Notify"
msgstr ""

#: src/views/site/site_edit/components/Cert/ObtainCertLive.vue:80
msgid "Fail to obtain certificate"
msgstr ""

#: src/views/backup/AutoBackup/AutoBackup.vue:196
#: src/views/backup/AutoBackup/AutoBackup.vue:221
msgid "Failed"
msgstr ""

#: src/constants/errors/docker.ts:4
msgid "Failed to attach to exec instance: {0}"
msgstr ""

#: src/constants/errors/backup.ts:5
msgid "Failed to backup Nginx config files: {0}"
msgstr ""

#: src/constants/errors/backup.ts:4
msgid "Failed to backup Nginx UI files: {0}"
msgstr ""

#: src/constants/errors/backup.ts:18
msgid "Failed to calculate hash: {0}"
msgstr ""

#: src/constants/errors/backup.ts:58
msgid "Failed to calculate Nginx hash: {0}"
msgstr ""

#: src/constants/errors/backup.ts:57
msgid "Failed to calculate Nginx UI hash: {0}"
msgstr ""

#: src/constants/errors/backup.ts:13
msgid "Failed to cleanup temporary directory: {0}"
msgstr ""

#: src/constants/errors/backup.ts:15
msgid "Failed to copy config file: {0}"
msgstr ""

#: src/constants/errors/backup.ts:16
msgid "Failed to copy database directory: {0}"
msgstr ""

#: src/constants/errors/backup.ts:17
msgid "Failed to copy database file: {0}"
msgstr ""

#: src/constants/errors/backup.ts:32
msgid "Failed to copy file content: {0}"
msgstr ""

#: src/constants/errors/backup.ts:20
msgid "Failed to copy Nginx config directory: {0}"
msgstr ""

#: src/constants/errors/self_check.ts:10
msgid "Failed to create backup"
msgstr ""

#: src/constants/errors/backup.ts:65
msgid "Failed to create backup directory: {0}"
msgstr ""

#: src/constants/errors/backup.ts:12
msgid "Failed to create backup file: {0}"
msgstr ""

#: src/constants/errors/backup.ts:46
msgid "Failed to create directory: {0}"
msgstr ""

#: src/constants/errors/backup.ts:48
msgid "Failed to create file: {0}"
msgstr ""

#: src/constants/errors/backup.ts:6
msgid "Failed to create hash info file: {0}"
msgstr ""

#: src/constants/errors/backup.ts:47
msgid "Failed to create parent directory: {0}"
msgstr ""

#: src/constants/errors/backup.ts:34
msgid "Failed to create restore directory: {0}"
msgstr ""

#: src/constants/errors/backup.ts:78
msgid "Failed to create storage directory {0}: {1}"
msgstr ""

#: src/constants/errors/backup.ts:50
msgid "Failed to create symbolic link: {0}"
msgstr ""

#: src/constants/errors/docker.ts:13
msgid "Failed to create temp container: {0}"
msgstr ""

#: src/constants/errors/backup.ts:2
msgid "Failed to create temporary directory"
msgstr ""

#: src/constants/errors/backup.ts:3
msgid "Failed to create temporary subdirectory"
msgstr ""

#: src/constants/errors/backup.ts:9
msgid "Failed to create zip archive: {0}"
msgstr ""

#: src/constants/errors/backup.ts:29
msgid "Failed to create zip entry: {0}"
msgstr ""

#: src/constants/errors/backup.ts:28
msgid "Failed to create zip file: {0}"
msgstr ""

#: src/constants/errors/backup.ts:31
msgid "Failed to create zip header: {0}"
msgstr ""

#: src/constants/errors/backup.ts:26
msgid "Failed to decrypt data: {0}"
msgstr ""

#: src/constants/errors/backup.ts:54
msgid "Failed to decrypt file: {0}"
msgstr ""

#: src/constants/errors/backup.ts:37
msgid "Failed to decrypt Nginx directory: {0}"
msgstr ""

#: src/constants/errors/backup.ts:36
msgid "Failed to decrypt Nginx UI directory: {0}"
msgstr ""

#: src/views/certificate/components/RemoveCert.vue:66
msgid "Failed to delete certificate"
msgstr ""

#: src/language/generate.ts:18
msgid "Failed to delete certificate from database: %{error}"
msgstr ""

#: src/views/site/components/SiteStatusSelect.vue:73
#: src/views/stream/components/StreamStatusSelect.vue:45
msgid "Failed to disable %{msg}"
msgstr ""

#: src/views/site/components/SiteStatusSelect.vue:99
msgid "Failed to disable maintenance mode %{msg}"
msgstr ""

#: src/views/site/components/SiteStatusSelect.vue:60
#: src/views/stream/components/StreamStatusSelect.vue:32
msgid "Failed to enable %{msg}"
msgstr ""

#: src/views/site/components/SiteStatusSelect.vue:86
msgid "Failed to enable maintenance mode %{msg}"
msgstr ""

#: src/constants/errors/backup.ts:25
msgid "Failed to encrypt data: {0}"
msgstr ""

#: src/constants/errors/backup.ts:23
msgid "Failed to encrypt file: {0}"
msgstr ""

#: src/constants/errors/backup.ts:8
msgid "Failed to encrypt Nginx directory: {0}"
msgstr ""

#: src/constants/errors/backup.ts:7
msgid "Failed to encrypt Nginx UI directory: {0}"
msgstr ""

#: src/constants/errors/backup.ts:52
msgid "Failed to evaluate symbolic links: {0}"
msgstr ""

#: src/constants/errors/docker.ts:3
msgid "Failed to exec command: {0}"
msgstr ""

#: src/constants/errors/backup.ts:35
msgid "Failed to extract archive: {0}"
msgstr ""

#: src/constants/errors/backup.ts:10
msgid "Failed to generate AES key: {0}"
msgstr ""

#: src/constants/errors/backup.ts:11
msgid "Failed to generate initialization vector: {0}"
msgstr ""

#: src/language/constants.ts:5
msgid "Failed to get certificate information"
msgstr ""

#: src/constants/errors/docker.ts:10
msgid "Failed to get container id: {0}"
msgstr ""

#: src/views/dashboard/components/ParamsOptimization.vue:61
msgid "Failed to get Nginx performance settings"
msgstr ""

#: src/composables/useNginxPerformance.ts:49
msgid "Failed to get performance data"
msgstr ""

#: src/constants/errors/docker.ts:8
msgid "Failed to inspect container: {0}"
msgstr ""

#: src/constants/errors/docker.ts:12
msgid "Failed to inspect current container: {0}"
msgstr ""

#: src/components/ConfigHistory/ConfigHistory.vue:83
msgid "Failed to load history records"
msgstr ""

#: src/constants/errors/backup.ts:30
msgid "Failed to open source file: {0}"
msgstr ""

#: src/constants/errors/backup.ts:49
msgid "Failed to open zip entry: {0}"
msgstr ""

#: src/constants/errors/backup.ts:45
msgid "Failed to open zip file: {0}"
msgstr ""

#: src/constants/errors/self_check.ts:5
msgid "Failed to parse nginx.conf"
msgstr ""

#: src/constants/errors/docker.ts:11
msgid "Failed to pull image: {0}"
msgstr ""

#: src/constants/errors/backup.ts:53
msgid "Failed to read encrypted file: {0}"
msgstr ""

#: src/constants/errors/backup.ts:22
msgid "Failed to read file: {0}"
msgstr ""

#: src/constants/errors/backup.ts:56
msgid "Failed to read hash info file: {0}"
msgstr ""

#: src/constants/errors/self_check.ts:4
msgid "Failed to read nginx.conf"
msgstr ""

#: src/constants/errors/docker.ts:5
msgid "Failed to read output: {0}"
msgstr ""

#: src/constants/errors/backup.ts:21
msgid "Failed to read symlink: {0}"
msgstr ""

#: src/constants/errors/backup.ts:39
msgid "Failed to restore Nginx configs: {0}"
msgstr ""

#: src/constants/errors/backup.ts:40
msgid "Failed to restore Nginx UI files: {0}"
msgstr ""

#: src/views/certificate/components/RemoveCert.vue:48
msgid "Failed to revoke certificate"
msgstr ""

#: src/language/generate.ts:19
msgid "Failed to revoke certificate: %{error}"
msgstr ""

#: src/views/dashboard/components/ParamsOptimization.vue:90
msgid "Failed to save Nginx performance settings"
msgstr ""

#: src/constants/errors/docker.ts:14
msgid "Failed to start temp container: {0}"
msgstr ""

#: src/constants/errors/backup.ts:38
msgid "Failed to verify hashes: {0}"
msgstr ""

#: src/constants/errors/backup.ts:66
msgid "Failed to write backup file: {0}"
msgstr ""

#: src/constants/errors/backup.ts:55
msgid "Failed to write decrypted file: {0}"
msgstr ""

#: src/constants/errors/backup.ts:24
msgid "Failed to write encrypted file: {0}"
msgstr ""

#: src/constants/errors/backup.ts:67
msgid "Failed to write security key file: {0}"
msgstr ""

#: src/constants/errors/backup.ts:33
msgid "Failed to write to zip buffer: {0}"
msgstr ""

#: src/language/constants.ts:32
msgid "File exists"
msgstr ""

#: src/views/other/Error.vue:8
msgid "File Not Found"
msgstr ""

#: src/constants/errors/cert.ts:2
msgid "Filename is empty"
msgstr ""

#: src/views/nginx_log/NginxLog.vue:156
msgid "Filter"
msgstr ""

#: src/language/constants.ts:19
#: src/views/site/site_add/SiteAdd.vue:83
msgid "Finished"
msgstr ""

#: src/views/preference/components/AuthSettings/RecoveryCodes.vue:70
msgid "First View"
msgstr ""

#: src/views/preference/components/AuthSettings/AddPasskey.vue:71
msgid "Follow the instructions in the dialog to complete the passkey registration process."
msgstr ""

#: src/views/preference/tabs/NodeSettings.vue:42
#: src/views/preference/tabs/NodeSettings.vue:54
msgid "For Chinese user"
msgstr ""

#: src/views/preference/tabs/HTTPSettings.vue:19
msgid "For Chinese user: https://cloud.nginxui.com/"
msgstr ""

#: src/constants/errors/middleware.ts:4
msgid "Form parse failed"
msgstr ""

#: src/views/config/components/ConfigLeftPanel.vue:276
msgid "Format Code"
msgstr ""

#: src/views/config/components/ConfigLeftPanel.vue:219
msgid "Format successfully"
msgstr ""

#: src/views/backup/AutoBackup/components/CronEditor.vue:200
msgid "Format: minute hour day month weekday"
msgstr ""

#: src/views/backup/AutoBackup/components/CronEditor.vue:31
msgid "Friday"
msgstr ""

#: src/views/certificate/CertificateList/certColumns.tsx:30
msgid "General Certificate"
msgstr ""

#: src/language/curd.ts:17
msgid "Generate"
msgstr ""

#: src/views/preference/components/AuthSettings/RecoveryCodes.vue:138
#: src/views/preference/components/AuthSettings/RecoveryCodes.vue:161
msgid "Generate New Recovery Codes"
msgstr ""

#: src/views/preference/components/AuthSettings/RecoveryCodes.vue:161
msgid "Generate Recovery Codes"
msgstr ""

#: src/views/preference/components/AuthSettings/RecoveryCodes.vue:32
msgid "Generate recovery codes successfully"
msgstr ""

#: src/language/constants.ts:7
msgid "Generating private key for registering account"
msgstr ""

#: src/views/dashboard/NginxDashBoard.vue:138
msgid "Get data failed"
msgstr ""

#: src/views/environments/list/BatchUpgrader.vue:177
#: src/views/system/Upgrade.vue:188
msgid "Get release information error"
msgstr ""

#: src/views/site/site_edit/components/Cert/ObtainCertLive.vue:46
msgid "Getting the certificate, please wait..."
msgstr ""

#: src/views/preference/tabs/HTTPSettings.vue:11
msgid "Github Proxy"
msgstr ""

#: src/views/preference/components/ExternalNotify/gotify.ts:5
msgid "Gotify"
msgstr ""

#: src/views/dashboard/components/ParamsOpt/PerformanceConfig.vue:67
msgid "GZIP Compression"
msgstr ""

#: src/views/dashboard/components/ParamsOpt/PerformanceConfig.vue:87
msgid "GZIP Compression Level"
msgstr ""

#: src/views/dashboard/components/ParamsOpt/PerformanceConfig.vue:80
msgid "GZIP Min Length"
msgstr ""

#: src/constants/errors/backup.ts:59
msgid "Hash verification failed: file integrity compromised"
msgstr ""

#: src/components/SensitiveString/SensitiveString.vue:40
msgid "Hide"
msgstr ""

#: src/views/dashboard/components/PerformanceStatisticsCard.vue:87
msgid "Higher value means better connection reuse"
msgstr ""

#: src/views/config/components/ConfigLeftPanel.vue:254
#: src/views/site/site_edit/components/SiteEditor/SiteEditor.vue:81
#: src/views/stream/components/StreamEditor.vue:45
msgid "History"
msgstr ""

#: src/routes/index.ts:48
msgid "Home"
msgstr ""

#: src/views/preference/tabs/ServerSettings.vue:19
msgid "Host"
msgstr ""

#: src/views/backup/AutoBackup/components/CronEditor.vue:159
msgid "Hour"
msgstr ""

#: src/views/preference/Preference.vue:70
msgid "HTTP"
msgstr ""

#: src/views/preference/tabs/CertSettings.vue:15
msgid "HTTP Challenge Port"
msgstr ""

#: src/components/AutoCertForm/AutoCertForm.vue:69
msgid "HTTP01"
msgstr ""

#: src/components/SelfCheck/tasks/frontend/https-check.ts:13
msgid "HTTPS Protocol"
msgstr ""

#: src/views/preference/tabs/NodeSettings.vue:34
msgid "ICP Number"
msgstr ""

#: src/views/certificate/ACMEUser.vue:43
msgid "If left blank, the default CA Dir will be used."
msgstr ""

#: src/views/preference/tabs/AuthSettings.vue:113
msgid "If the number of login failed attempts from a ip reach the max attempts in ban threshold minutes, the ip will be banned for a period of time."
msgstr ""

#: src/components/AutoCertForm/AutoCertForm.vue:116
msgid "If you want to automatically revoke the old certificate, please enable this option."
msgstr ""

#: src/views/preference/components/AuthSettings/AddPasskey.vue:70
msgid "If your browser supports WebAuthn Passkey, a dialog box will appear."
msgstr ""

#: src/components/AutoCertForm/AutoCertForm.vue:107
msgid "If your domain has CNAME records and you cannot obtain certificates, you need to enable this option."
msgstr ""

#: src/views/certificate/CertificateList/Certificate.vue:27
msgid "Import"
msgstr ""

#: src/routes/modules/certificates.ts:46
#: src/views/certificate/CertificateEditor.vue:85
msgid "Import Certificate"
msgstr ""

#: src/views/dashboard/components/ParamsOpt/ProxyCacheConfig.vue:176
msgid "Inactive Time"
msgstr ""

#: src/views/dashboard/components/ProcessDistributionCard.vue:54
msgid "Includes master process, worker processes, cache processes, and other Nginx processes"
msgstr ""

#: src/components/ProcessingStatus/ProcessingStatus.vue:32
msgid "Indexing..."
msgstr ""

#: src/views/dashboard/components/PerformanceTablesCard.vue:16
msgid "Indicator"
msgstr ""

#: src/constants/index.ts:24
#: src/views/notification/notificationColumns.tsx:28
msgid "Info"
msgstr ""

#: src/language/constants.ts:25
msgid "Initial core upgrader error"
msgstr ""

#: src/language/constants.ts:24
msgid "Initialing core upgrader"
msgstr ""

#: src/views/preference/components/AuthSettings/TOTP.vue:119
msgid "Input the code from the app:"
msgstr ""

#: src/components/TwoFA/Authorization.vue:72
msgid "Input the recovery code:"
msgstr ""

#: src/views/preference/tabs/HTTPSettings.vue:22
msgid "Insecure Skip Verify"
msgstr ""

#: src/routes/modules/auth.ts:8
#: src/views/install/components/InstallForm.vue:110
#: src/views/install/components/InstallHeader.vue:9
#: src/views/system/Upgrade.vue:150
msgid "Install"
msgstr ""

#: src/views/install/components/InstallForm.vue:57
msgid "Install successfully"
msgstr ""

#: src/views/install/components/InstallView.vue:64
msgid "Installation"
msgstr ""

#: src/constants/errors/system.ts:3
msgid "Installation is not allowed after 10 minutes of system startup"
msgstr ""

#: src/views/install/components/TimeoutAlert.vue:11
msgid "Installation is not allowed after 10 minutes of system startup, please restart the Nginx UI."
msgstr ""

#: src/views/preference/tabs/LogrotateSettings.vue:26
msgid "Interval"
msgstr ""

#: src/views/certificate/ACMEUser.vue:125
msgid "Invalid"
msgstr ""

#: src/constants/errors/backup.ts:44
msgid "Invalid AES IV format: {0}"
msgstr ""

#: src/constants/errors/backup.ts:43
msgid "Invalid AES key format: {0}"
msgstr ""

#: src/components/SystemRestore/SystemRestoreContent.vue:121
msgid "Invalid file object"
msgstr ""

#: src/constants/errors/backup.ts:51
msgid "Invalid file path: {0}"
msgstr ""

#: src/views/config/components/ConfigRightPanel/Basic.vue:28
#: src/views/config/components/Rename.vue:66
msgid "Invalid filename"
msgstr ""

#: src/views/config/components/Mkdir.vue:57
msgid "Invalid folder name"
msgstr ""

#: src/constants/errors/notification.ts:3
msgid "Invalid notifier config"
msgstr ""

#: src/constants/errors/user.ts:4
msgid "Invalid otp code"
msgstr ""

#: src/constants/errors/backup.ts:27
msgid "Invalid padding in decrypted data"
msgstr ""

#: src/components/TwoFA/use2FAModal.ts:61
msgid "Invalid passcode or recovery code"
msgstr ""

#: src/constants/errors/backup.ts:73
msgid "Invalid path: {0}"
msgstr ""

#: src/constants/errors/user.ts:5
msgid "Invalid recovery code"
msgstr ""

#: src/constants/errors/middleware.ts:2
msgid "Invalid request format"
msgstr ""

#: src/constants/errors/backup.ts:42
msgid "Invalid security token format"
msgstr ""

#: src/views/preference/tabs/AuthSettings.vue:14
msgid "IP"
msgstr ""

#: src/views/certificate/CertificateList/Certificate.vue:37
msgid "Issue wildcard certificate"
msgstr ""

#: src/views/certificate/components/WildcardCertificate.vue:57
msgid "Issue Wildcard Certificate"
msgstr ""

#: src/language/constants.ts:20
msgid "Issued certificate successfully"
msgstr ""

#: src/components/CertInfo/CertInfo.vue:35
msgid "Issuer: %{issuer}"
msgstr ""

#: src/language/curd.ts:6
msgid "item(s)"
msgstr ""

#: src/views/preference/tabs/AppSettings.vue:11
msgid "Jwt Secret"
msgstr ""

#: src/views/preference/components/AuthSettings/RecoveryCodes.vue:74
msgid "Keep your recovery codes as safe as your password. We recommend saving them with a password manager."
msgstr ""

#: src/views/dashboard/components/ParamsOpt/PerformanceConfig.vue:60
msgid "Keepalive Timeout"
msgstr ""

#: src/components/AutoCertForm/AutoCertForm.vue:76
#: src/views/certificate/CertificateList/certColumns.tsx:57
msgid "Key Type"
msgstr ""

#: src/views/preference/components/ExternalNotify/columns.tsx:32
msgid "Language"
msgstr ""

#: src/views/preference/components/ExternalNotify/lark.ts:5
msgid "Lark"
msgstr ""

#: src/views/preference/components/ExternalNotify/lark_custom.ts:5
msgid "Lark Custom"
msgstr ""

#: src/views/backup/AutoBackup/AutoBackup.vue:190
msgid "Last Backup Status"
msgstr ""

#: src/views/backup/AutoBackup/AutoBackup.vue:183
msgid "Last Backup Time"
msgstr ""

#: src/views/system/Upgrade.vue:198
msgid "Last checked at"
msgstr ""

#: src/views/dashboard/NginxDashBoard.vue:113
msgid "Last update"
msgstr ""

#: src/views/preference/components/AuthSettings/Passkey.vue:96
msgid "Last used at"
msgstr ""

#: src/views/user/userColumns.tsx:23
msgid "Leave blank for no change"
msgstr ""

#: src/views/preference/tabs/OpenAISettings.vue:41
msgid "Leave blank for the default: https://api.openai.com/"
msgstr ""

#: src/language/curd.ts:37
msgid "Leave blank if do not want to modify"
msgstr ""

#: src/views/certificate/ACMEUser.vue:55
msgid "Leave blank if you don't need this."
msgstr ""

#: src/views/certificate/CertificateEditor.vue:223
#: src/views/certificate/CertificateEditor.vue:237
msgid "Leave blank will not change anything"
msgstr ""

#: src/constants/errors/user.ts:6
msgid "Legacy recovery code not allowed since totp is not enabled"
msgstr ""

#: src/components/AutoCertForm/AutoCertForm.vue:104
msgid "Lego disable CNAME Support"
msgstr ""

#: src/views/system/About.vue:63
msgid "License"
msgstr ""

#: src/views/dashboard/Environments.vue:141
#: src/views/dashboard/Environments.vue:156
msgid "Link Start"
msgstr ""

#: src/language/curd.ts:23
msgid "List"
msgstr ""

#: src/components/PortScanner/PortScannerCompact.vue:43
msgid "Listening"
msgstr ""

#: src/views/dashboard/ServerAnalytic.vue:183
msgid "Load Average:"
msgstr ""

#: src/views/environments/list/Environment.vue:89
msgid "Load from settings"
msgstr ""

#: src/views/environments/list/Environment.vue:20
msgid "Load successfully"
msgstr ""

#: src/views/dashboard/components/ModulesTable.vue:100
#: src/views/dashboard/components/ModulesTable.vue:105
msgid "Loaded"
msgstr ""

#: src/views/dashboard/components/ParamsOpt/ProxyCacheConfig.vue:313
msgid "Loader Files"
msgstr ""

#: src/views/dashboard/components/ParamsOpt/ProxyCacheConfig.vue:308
msgid "Loader Settings"
msgstr ""

#: src/views/dashboard/components/ParamsOpt/ProxyCacheConfig.vue:323
msgid "Loader Sleep"
msgstr ""

#: src/views/dashboard/components/ParamsOpt/ProxyCacheConfig.vue:348
msgid "Loader Threshold"
msgstr ""

#: src/views/dashboard/NginxDashBoard.vue:175
msgid "Loading data..."
msgstr ""

#: src/components/EnvIndicator/EnvIndicator.vue:39
#: src/components/NodeSelector/NodeSelector.vue:86
#: src/views/backup/AutoBackup/AutoBackup.vue:74
#: src/views/backup/AutoBackup/AutoBackup.vue:83
#: src/views/backup/AutoBackup/components/StorageConfigEditor.vue:48
#: src/views/preference/tabs/NginxSettings.vue:55
msgid "Local"
msgstr ""

#: src/views/backup/AutoBackup/components/StorageConfigEditor.vue:60
msgid "Local path (e.g., /var/backups)"
msgstr ""

#: src/components/NgxConfigEditor/LocationEditor.vue:69
msgid "Location"
msgstr ""

#: src/components/NgxConfigEditor/LocationEditor.vue:51
msgid "Locations"
msgstr ""

#: src/views/certificate/CertificateEditor.vue:247
msgid "Log"
msgstr ""

#: src/language/generate.ts:20
msgid "Log file %{log_path} is not a regular file. If you are using nginx-ui in docker container, please refer to https://nginxui.com/zh_CN/guide/config-nginx-log.html for more information."
msgstr ""

#: src/routes/modules/nginx_log.ts:39
#: src/views/nginx_log/NginxLogList.vue:72
msgid "Log List"
msgstr ""

#: src/routes/modules/auth.ts:14
#: src/views/other/Login.vue:222
msgid "Login"
msgstr ""

#: src/views/other/Login.vue:114
#: src/views/other/Login.vue:65
msgid "Login successful"
msgstr ""

#: src/layouts/HeaderLayout.vue:22
msgid "Logout successful"
msgstr ""

#: src/views/preference/Preference.vue:106
msgid "Logrotate"
msgstr ""

#: src/views/preference/tabs/LogrotateSettings.vue:13
msgid "Logrotate, by default, is enabled in most mainstream Linux distributions for users who install Nginx UI on the host machine, so you don't need to modify the parameters on this page. For users who install Nginx UI using Docker containers, you can manually enable this option. The crontab task scheduler of Nginx UI will execute the logrotate command at the interval you set in minutes."
msgstr ""

#: src/views/site/components/SiteStatusSelect.vue:165
#: src/views/site/site_edit/components/SiteEditor/SiteEditor.vue:68
#: src/views/site/site_list/columns.tsx:131
msgid "Maintenance"
msgstr ""

#: src/views/site/components/SiteStatusSelect.vue:93
msgid "Maintenance mode disabled successfully"
msgstr ""

#: src/views/site/components/SiteStatusSelect.vue:80
msgid "Maintenance mode enabled successfully"
msgstr ""

#: src/components/AutoCertForm/AutoCertForm.vue:52
msgid "Make sure you have configured a reverse proxy for .well-known directory to HTTPChallengePort before obtaining the certificate."
msgstr ""

#: src/routes/modules/config.ts:10
#: src/views/config/components/ConfigLeftPanel.vue:114
#: src/views/config/components/ConfigLeftPanel.vue:164
#: src/views/config/ConfigList.vue:72
msgid "Manage Configs"
msgstr ""

#: src/routes/modules/sites.ts:10
#: src/views/site/site_list/SiteList.vue:67
msgid "Manage Sites"
msgstr ""

#: src/routes/modules/streams.ts:10
#: src/views/stream/StreamList.vue:81
msgid "Manage Streams"
msgstr ""

#: src/routes/modules/user.ts:10
#: src/views/user/User.vue:10
msgid "Manage Users"
msgstr ""

#: src/views/certificate/CertificateList/certColumns.tsx:29
msgid "Managed Certificate"
msgstr ""

#: src/views/dashboard/components/ParamsOpt/ProxyCacheConfig.vue:251
msgid "Manager Files"
msgstr ""

#: src/views/dashboard/components/ParamsOpt/ProxyCacheConfig.vue:261
msgid "Manager Sleep"
msgstr ""

#: src/views/dashboard/components/ParamsOpt/ProxyCacheConfig.vue:286
msgid "Manager Threshold"
msgstr ""

#: src/views/dashboard/components/ParamsOpt/PerformanceConfig.vue:32
msgid "Manual"
msgstr ""

#: src/views/dashboard/components/PerformanceTablesCard.vue:202
msgid "manually set"
msgstr ""

#: src/views/dashboard/components/PerformanceStatisticsCard.vue:103
msgid "Master"
msgstr ""

#: src/composables/usePerformanceMetrics.ts:134
#: src/views/dashboard/components/PerformanceTablesCard.vue:90
msgid "Master process"
msgstr ""

#: src/composables/usePerformanceMetrics.ts:56
#: src/views/dashboard/components/ProcessDistributionCard.vue:13
msgid "Master Process"
msgstr ""

#: src/views/preference/tabs/AuthSettings.vue:103
msgid "Max Attempts"
msgstr ""

#: src/views/dashboard/components/PerformanceStatisticsCard.vue:56
msgid "Max Concurrent Connections"
msgstr ""

#: src/views/dashboard/components/PerformanceStatisticsCard.vue:42
msgid "Max Requests Per Second"
msgstr ""

#: src/views/dashboard/components/ParamsOpt/ProxyCacheConfig.vue:199
msgid "Maximum Cache Size"
msgstr ""

#: src/views/dashboard/components/ParamsOpt/PerformanceConfig.vue:100
msgid "Maximum client request body size"
msgstr ""

#: src/views/dashboard/components/ParamsOpt/PerformanceConfig.vue:49
msgid "Maximum number of concurrent connections"
msgstr ""

#: src/composables/usePerformanceMetrics.ts:174
#: src/views/dashboard/components/PerformanceTablesCard.vue:126
msgid "Maximum number of connections per worker process"
msgstr ""

#: src/views/dashboard/components/ParamsOpt/ProxyCacheConfig.vue:201
msgid "Maximum total size of the cache"
msgstr ""

#: src/views/dashboard/components/PerformanceTablesCard.vue:196
msgid "Maximum worker process number:"
msgstr ""

#: src/views/dashboard/ServerAnalytic.vue:222
#: src/views/dashboard/ServerAnalytic.vue:223
msgid "Memory"
msgstr ""

#: src/views/dashboard/ServerAnalytic.vue:212
msgid "Memory and Storage"
msgstr ""

#: src/views/dashboard/components/ResourceUsageCard.vue:51
msgid "Memory Usage (RSS)"
msgstr ""

#: src/views/dashboard/components/ParamsOpt/PerformanceConfig.vue:81
msgid "Minimum file size for compression"
msgstr ""

#: src/views/dashboard/components/ParamsOpt/ProxyCacheConfig.vue:224
msgid "Minimum Free Space"
msgstr ""

#: src/views/dashboard/components/ParamsOpt/ProxyCacheConfig.vue:226
msgid "Minimum free space in the cache directory"
msgstr ""

#: src/views/backup/AutoBackup/components/CronEditor.vue:169
msgid "Minute"
msgstr ""

#: src/views/preference/tabs/LogrotateSettings.vue:30
msgid "Minutes"
msgstr ""

#: src/views/preference/tabs/OpenAISettings.vue:20
msgid "Model"
msgstr ""

#: src/components/ConfigHistory/ConfigHistory.vue:53
msgid "Modified At"
msgstr ""

#: src/components/ChatGPT/ChatMessage.vue:212
#: src/views/config/ConfigList.vue:174
msgid "Modify"
msgstr ""

#: src/routes/modules/certificates.ts:36
#: src/views/certificate/CertificateEditor.vue:85
msgid "Modify Certificate"
msgstr ""

#: src/views/site/site_add/SiteAdd.vue:145
msgid "Modify Config"
msgstr ""

#: src/views/dashboard/components/ModulesTable.vue:27
msgid "Module"
msgstr ""

#: src/views/dashboard/components/PerformanceTablesCard.vue:215
msgid "Modules"
msgstr ""

#: src/views/backup/AutoBackup/components/CronEditor.vue:27
msgid "Monday"
msgstr ""

#: src/views/backup/AutoBackup/components/CronEditor.vue:21
msgid "Monthly"
msgstr ""

#: src/views/backup/AutoBackup/AutoBackup.vue:138
msgid "Monthly on day %{day} at %{time}"
msgstr ""

#: src/components/NgxConfigEditor/directive/DirectiveAdd.vue:51
msgid "Multi-line Directive"
msgstr ""

#: src/components/NgxConfigEditor/NgxUpstream.vue:199
#: src/views/backup/AutoBackup/AutoBackup.vue:11
#: src/views/certificate/ACMEUser.vue:11
#: src/views/certificate/CertificateEditor.vue:162
#: src/views/certificate/CertificateList/certColumns.tsx:9
#: src/views/certificate/DNSCredential.vue:8
#: src/views/config/components/ConfigRightPanel/Basic.vue:34
#: src/views/config/components/Mkdir.vue:64
#: src/views/config/configColumns.tsx:5
#: src/views/environments/group/columns.ts:7
#: src/views/environments/list/envColumns.tsx:8
#: src/views/nginx_log/NginxLogList.vue:36
#: src/views/preference/components/AuthSettings/AddPasskey.vue:75
#: src/views/site/site_edit/components/RightPanel/Basic.vue:35
#: src/views/site/site_list/columns.tsx:16
#: src/views/site/site_list/SiteDuplicate.vue:79
#: src/views/stream/columns.tsx:12
#: src/views/stream/components/RightPanel/Basic.vue:30
#: src/views/stream/components/StreamDuplicate.vue:71
#: src/views/stream/StreamList.vue:144
msgid "Name"
msgstr ""

#: src/views/dashboard/NginxDashBoard.vue:170
msgid "Need to enable the stub_status module"
msgstr ""

#: src/views/dashboard/ServerAnalytic.vue:327
msgid "Network"
msgstr ""

#: src/views/dashboard/ServerAnalytic.vue:269
msgid "Network Statistics"
msgstr ""

#: src/views/dashboard/ServerAnalytic.vue:276
msgid "Network Total Receive"
msgstr ""

#: src/views/dashboard/ServerAnalytic.vue:282
msgid "Network Total Send"
msgstr ""

#: src/views/install/components/InstallView.vue:109
msgid "New Installation"
msgstr ""

#: src/views/config/components/Rename.vue:74
msgid "New name"
msgstr ""

#: src/views/user/UserProfile.vue:195
msgid "New Password"
msgstr ""

#: src/views/config/components/ConfigRightPanel/Basic.vue:47
msgid "New Path"
msgstr ""

#: src/views/system/Upgrade.vue:230
msgid "New version released"
msgstr ""

#: src/views/certificate/components/WildcardCertificate.vue:89
#: src/views/install/components/InstallView.vue:96
#: src/views/site/site_add/SiteAdd.vue:132
#: src/views/site/site_edit/components/Cert/ObtainCert.vue:214
msgid "Next"
msgstr ""

#: src/routes/modules/dashboard.ts:27
#: src/views/preference/Preference.vue:94
msgid "Nginx"
msgstr ""

#: src/views/preference/tabs/NginxSettings.vue:13
msgid "Nginx Access Log Path"
msgstr ""

#: src/language/generate.ts:22
msgid "Nginx access log path exists"
msgstr ""

#: src/views/backup/AutoBackup/AutoBackup.vue:28
#: src/views/backup/AutoBackup/AutoBackup.vue:40
msgid "Nginx and Nginx UI Config"
msgstr ""

#: src/constants/errors/self_check.ts:6
msgid "Nginx conf no http block"
msgstr ""

#: src/constants/errors/self_check.ts:8
msgid "Nginx conf no stream block"
msgstr ""

#: src/constants/errors/self_check.ts:15
msgid "Nginx conf not include conf.d directory"
msgstr ""

#: src/constants/errors/self_check.ts:7
msgid "Nginx conf not include sites-enabled"
msgstr ""

#: src/constants/errors/self_check.ts:9
msgid "Nginx conf not include stream-enabled"
msgstr ""

#: src/constants/errors/backup.ts:19
msgid "Nginx config directory is not set"
msgstr ""

#: src/language/generate.ts:23
msgid "Nginx configuration directory exists"
msgstr ""

#: src/language/generate.ts:24
msgid "Nginx configuration entry file exists"
msgstr ""

#: src/components/SystemRestore/SystemRestoreContent.vue:138
msgid "Nginx configuration has been restored"
msgstr ""

#: src/views/site/site_edit/components/SiteEditor/SiteEditor.vue:115
#: src/views/stream/components/StreamEditor.vue:75
msgid "Nginx Configuration Parse Error"
msgstr ""

#: src/views/preference/tabs/NginxSettings.vue:22
msgid "Nginx Configuration Path"
msgstr ""

#: src/views/preference/tabs/NginxSettings.vue:19
msgid "Nginx Configurations Directory"
msgstr ""

#: src/components/NginxControl/NginxControl.vue:64
msgid "Nginx Control"
msgstr ""

#: src/views/preference/tabs/NginxSettings.vue:46
msgid "Nginx Control Mode"
msgstr ""

#: src/composables/usePerformanceMetrics.ts:149
#: src/views/dashboard/components/PerformanceTablesCard.vue:105
msgid "Nginx CPU usage rate"
msgstr ""

#: src/views/preference/tabs/NginxSettings.vue:16
msgid "Nginx Error Log Path"
msgstr ""

#: src/language/generate.ts:25
msgid "Nginx error log path exists"
msgstr ""

#: src/constants/errors/nginx.ts:2
msgid "Nginx error: {0}"
msgstr ""

#: src/components/NgxConfigEditor/NginxStatusAlert.vue:15
#: src/composables/useNginxPerformance.ts:43
#: src/views/dashboard/NginxDashBoard.vue:109
#: src/views/dashboard/NginxDashBoard.vue:128
#: src/views/dashboard/NginxDashBoard.vue:77
msgid "Nginx is not running"
msgstr ""

#: src/constants/errors/docker.ts:9
msgid "Nginx is not running in another container"
msgstr ""

#: src/views/dashboard/NginxDashBoard.vue:109
msgid "Nginx is running"
msgstr ""

#: src/routes/modules/nginx_log.ts:9
#: src/views/nginx_log/NginxLog.vue:144
msgid "Nginx Log"
msgstr ""

#: src/views/preference/tabs/NginxSettings.vue:25
msgid "Nginx Log Directory Whitelist"
msgstr ""

#: src/composables/usePerformanceMetrics.ts:154
#: src/views/dashboard/components/PerformanceTablesCard.vue:110
msgid "Nginx Memory usage"
msgstr ""

#: src/views/preference/tabs/NginxSettings.vue:34
msgid "Nginx PID Path"
msgstr ""

#: src/language/generate.ts:21
msgid "Nginx PID path exists"
msgstr ""

#: src/views/preference/tabs/NginxSettings.vue:40
msgid "Nginx Reload Command"
msgstr ""

#: src/constants/errors/config.ts:5
#: src/constants/errors/site.ts:7
#: src/constants/errors/stream.ts:6
msgid "Nginx reload failed: {0}"
msgstr ""

#: src/views/environments/list/Environment.vue:41
msgid "Nginx reload operations have been dispatched to remote nodes"
msgstr ""

#: src/components/NginxControl/NginxControl.vue:26
msgid "Nginx reloaded successfully"
msgstr ""

#: src/views/preference/tabs/NginxSettings.vue:43
msgid "Nginx Restart Command"
msgstr ""

#: src/views/environments/list/Environment.vue:55
msgid "Nginx restart operations have been dispatched to remote nodes"
msgstr ""

#: src/components/NginxControl/NginxControl.vue:40
msgid "Nginx restarted successfully"
msgstr ""

#: src/views/preference/tabs/NginxSettings.vue:37
msgid "Nginx Test Config Command"
msgstr ""

#: src/constants/errors/config.ts:4
#: src/constants/errors/site.ts:6
#: src/constants/errors/stream.ts:5
msgid "Nginx test failed: {0}"
msgstr ""

#: src/views/dashboard/components/PerformanceTablesCard.vue:181
msgid "Nginx theoretical maximum performance"
msgstr ""

#: src/constants/errors/system.ts:2
msgid "Nginx UI already installed"
msgstr ""

#: src/components/SystemRestore/SystemRestoreContent.vue:142
msgid "Nginx UI configuration has been restored"
msgstr ""

#: src/components/SystemRestore/SystemRestoreContent.vue:336
msgid "Nginx UI configuration has been restored and will restart automatically in a few seconds."
msgstr ""

#: src/language/generate.ts:26
msgid "Nginx.conf includes conf.d directory"
msgstr ""

#: src/language/generate.ts:27
msgid "Nginx.conf includes sites-enabled directory"
msgstr ""

#: src/language/generate.ts:28
msgid "Nginx.conf includes streams-enabled directory"
msgstr ""

#: src/components/ChatGPT/ChatMessageInput.vue:17
#: src/components/EnvGroupTabs/EnvGroupTabs.vue:131
#: src/components/EnvGroupTabs/EnvGroupTabs.vue:143
#: src/components/NgxConfigEditor/directive/DirectiveEditorItem.vue:99
#: src/components/NgxConfigEditor/LocationEditor.vue:89
#: src/components/Notification/Notification.vue:109
#: src/language/curd.ts:38
#: src/views/notification/Notification.vue:38
#: src/views/preference/tabs/AuthSettings.vue:132
#: src/views/preference/tabs/CertSettings.vue:73
#: src/views/site/site_list/SiteList.vue:98
#: src/views/stream/StreamList.vue:120
msgid "No"
msgstr ""

#: src/views/environments/group/columns.ts:19
#: src/views/environments/group/EnvGroup.vue:47
msgid "No Action"
msgstr ""

#: src/views/dashboard/NginxDashBoard.vue:177
msgid "No data"
msgstr ""

#: src/components/ConfigHistory/DiffViewer.vue:54
msgid "No records selected"
msgstr ""

#: src/components/NgxConfigEditor/NgxServer.vue:77
msgid "No servers configured"
msgstr ""

#: src/components/NgxConfigEditor/NgxUpstream.vue:172
msgid "No upstreams configured"
msgstr ""

#: src/views/preference/Preference.vue:64
msgid "Node"
msgstr ""

#: src/views/site/site_edit/components/RightPanel/Basic.vue:41
#: src/views/site/site_list/columns.tsx:76
#: src/views/stream/columns.tsx:44
#: src/views/stream/components/RightPanel/Basic.vue:38
msgid "Node Group"
msgstr ""

#: src/routes/modules/environments.ts:33
#: src/views/environments/group/EnvGroup.vue:19
msgid "Node Groups"
msgstr ""

#: src/views/preference/tabs/NodeSettings.vue:15
msgid "Node name"
msgstr ""

#: src/views/preference/tabs/NodeSettings.vue:11
msgid "Node Secret"
msgstr ""

#: src/routes/modules/environments.ts:25
msgid "Nodes"
msgstr ""

#: src/views/certificate/CertificateList/certColumns.tsx:86
msgid "Not After"
msgstr ""

#: src/routes/modules/error.ts:8
msgid "Not Found"
msgstr ""

#: src/views/dashboard/components/ModulesTable.vue:101
#: src/views/dashboard/components/ModulesTable.vue:105
msgid "Not Loaded"
msgstr ""

#: src/components/CertInfo/CertInfo.vue:41
msgid "Not Valid Before: %{date}"
msgstr ""

#: src/components/AutoCertForm/AutoCertForm.vue:38
#: src/views/certificate/DNSCredential.vue:48
msgid "Note"
msgstr ""

#: src/views/site/site_edit/components/RightPanel/Basic.vue:65
#: src/views/stream/components/RightPanel/Basic.vue:60
msgid "Note, if the configuration file include other configurations or certificates, please synchronize them to the remote nodes in advance."
msgstr ""

#: src/views/notification/Notification.vue:28
msgid "Notification"
msgstr ""

#: src/components/Notification/Notification.vue:107
#: src/routes/modules/notifications.ts:10
msgid "Notifications"
msgstr ""

#: src/constants/errors/notification.ts:2
msgid "Notifier not found"
msgstr ""

#: src/views/dashboard/components/ParamsOpt/PerformanceConfig.vue:26
msgid "Number of concurrent worker processes, auto sets to CPU core count"
msgstr ""

#: src/views/dashboard/components/ParamsOpt/ProxyCacheConfig.vue:315
msgid "Number of files processed by cache loader at once"
msgstr ""

#: src/views/dashboard/components/ParamsOpt/ProxyCacheConfig.vue:253
msgid "Number of files processed by cache manager at once"
msgstr ""

#: src/composables/usePerformanceMetrics.ts:129
#: src/composables/usePerformanceMetrics.ts:169
#: src/views/dashboard/components/PerformanceTablesCard.vue:121
#: src/views/dashboard/components/PerformanceTablesCard.vue:85
msgid "Number of worker processes"
msgstr ""

#: src/views/site/site_edit/components/Cert/ObtainCert.vue:185
msgid "Obtain certificate"
msgstr ""

#: src/language/constants.ts:15
msgid "Obtaining certificate"
msgstr ""

#: src/components/AutoCertForm/AutoCertForm.vue:94
msgid "OCSP Must Staple"
msgstr ""

#: src/components/AutoCertForm/AutoCertForm.vue:98
msgid "OCSP Must Staple may cause errors for some users on first access using Firefox."
msgstr ""

#: src/views/dashboard/components/ParamsOpt/PerformanceConfig.vue:73
#: src/views/dashboard/components/ParamsOpt/ProxyCacheConfig.vue:165
msgid "Off"
msgstr ""

#: src/components/EnvGroupTabs/EnvGroupTabs.vue:159
#: src/components/NgxConfigEditor/NgxUpstream.vue:151
#: src/components/NodeSelector/NodeSelector.vue:109
#: src/components/ProxyTargets/ProxyTargets.vue:43
#: src/views/dashboard/Environments.vue:107
#: src/views/environments/list/envColumns.tsx:55
msgid "Offline"
msgstr ""

#: src/components/ChatGPT/ChatMessageInput.vue:18
#: src/components/NgxConfigEditor/NgxServer.vue:60
#: src/components/NgxConfigEditor/NgxUpstream.vue:36
#: src/components/Notification/Notification.vue:110
#: src/language/curd.ts:15
#: src/views/backup/components/BackupCreator.vue:149
#: src/views/notification/Notification.vue:39
#: src/views/site/components/SiteStatusSelect.vue:123
#: src/views/site/site_edit/components/Cert/IssueCert.vue:39
#: src/views/site/site_edit/components/Cert/ObtainCert.vue:142
#: src/views/site/site_edit/components/EnableTLS/EnableTLS.vue:20
#: src/views/site/site_list/SiteList.vue:99
#: src/views/stream/components/StreamStatusSelect.vue:60
#: src/views/stream/StreamList.vue:121
msgid "OK"
msgstr ""

#: src/views/dashboard/components/ParamsOpt/PerformanceConfig.vue:72
#: src/views/dashboard/components/ParamsOpt/ProxyCacheConfig.vue:164
msgid "On"
msgstr ""

#: src/views/certificate/DNSCredential.vue:58
msgid "Once the verification is complete, the records will be removed."
msgstr ""

#: src/components/EnvGroupTabs/EnvGroupTabs.vue:159
#: src/components/NodeSelector/NodeSelector.vue:103
#: src/components/NodeSelector/NodeSelector.vue:89
#: src/views/dashboard/Environments.vue:100
#: src/views/environments/list/envColumns.tsx:51
msgid "Online"
msgstr ""

#: src/components/SystemRestore/SystemRestoreContent.vue:78
msgid "Only zip files are allowed"
msgstr ""

#: src/components/PortScanner/PortScannerCompact.vue:44
msgid "Open"
msgstr ""

#: src/views/preference/Preference.vue:100
msgid "OpenAI"
msgstr ""

#: src/components/TwoFA/Authorization.vue:100
#: src/views/other/Login.vue:231
msgid "Or"
msgstr ""

#: src/views/preference/components/AuthSettings/TOTP.vue:112
msgid "Or enter the secret: %{secret}"
msgstr ""

#: src/views/config/components/Rename.vue:70
msgid "Original name"
msgstr ""

#: src/views/system/Upgrade.vue:194
msgid "OS"
msgstr ""

#: src/views/dashboard/ServerAnalytic.vue:189
msgid "OS:"
msgstr ""

#: src/composables/usePerformanceMetrics.ts:144
#: src/views/dashboard/components/PerformanceTablesCard.vue:100
msgid "Other Nginx processes"
msgstr ""

#: src/composables/usePerformanceMetrics.ts:58
#: src/views/dashboard/components/ProcessDistributionCard.vue:15
msgid "Other Processes"
msgstr ""

#: src/views/dashboard/components/PerformanceStatisticsCard.vue:103
msgid "Others"
msgstr ""

#: src/constants/errors/user.ts:9
msgid "Otp or recovery code empty"
msgstr ""

#: src/views/config/components/ConfigRightPanel/Deploy.vue:18
msgid "Overwrite"
msgstr ""

#: src/views/config/components/ConfigRightPanel/Deploy.vue:22
msgid "Overwrite exist file"
msgstr ""

#: src/views/preference/tabs/AppSettings.vue:14
msgid "Page Size"
msgstr ""

#: src/components/NgxConfigEditor/directive/DirectiveAdd.vue:77
msgid "Params"
msgstr ""

#: src/views/dashboard/components/ParamsOptimization.vue:109
#: src/views/dashboard/components/ParamsOptimization.vue:115
msgid "Params Optimization"
msgstr ""

#: src/views/preference/components/AuthSettings/Passkey.vue:59
msgid "Passkey"
msgstr ""

#: src/views/preference/components/AuthSettings/Passkey.vue:62
msgid "Passkeys are webauthn credentials that validate your identity using touch, facial recognition, a device password, or a PIN. They can be used as a password replacement or as a 2FA method."
msgstr ""

#: src/views/other/Login.vue:183
#: src/views/user/userColumns.tsx:16
msgid "Password"
msgstr ""

#: src/views/install/components/InstallForm.vue:95
msgid "Password (*)"
msgstr ""

#: src/constants/errors/user.ts:2
msgid "Password incorrect"
msgstr ""

#: src/views/install/components/InstallForm.vue:45
msgid "Password length cannot exceed 20 characters"
msgstr ""

#: src/views/user/UserProfile.vue:96
msgid "Password updated successfully"
msgstr ""

#: src/views/user/UserProfile.vue:75
msgid "Passwords do not match"
msgstr ""

#: src/components/NgxConfigEditor/LocationEditor.vue:110
#: src/components/NgxConfigEditor/LocationEditor.vue:138
#: src/language/curd.ts:59
#: src/views/config/components/ConfigRightPanel/Basic.vue:41
#: src/views/nginx_log/NginxLogList.vue:44
msgid "Path"
msgstr ""

#: src/constants/errors/backup.ts:74
msgid "Path not in granted access paths: {0}"
msgstr ""

#: src/constants/errors/cert.ts:7
#: src/constants/errors/config.ts:2
msgid "Path: {0} is not under the nginx conf dir: {1}"
msgstr ""

#: src/constants/errors/cert.ts:6
msgid "Payload resource is nil"
msgstr ""

#: src/views/backup/AutoBackup/AutoBackup.vue:194
#: src/views/backup/AutoBackup/AutoBackup.vue:219
msgid "Pending"
msgstr ""

#: src/views/environments/list/BatchUpgrader.vue:232
msgid "Perform"
msgstr ""

#: src/language/constants.ts:29
msgid "Perform core upgrade error"
msgstr ""

#: src/views/dashboard/components/ParamsOptimization.vue:121
msgid "Performance"
msgstr ""

#: src/views/dashboard/NginxDashBoard.vue:182
msgid "Performance Metrics"
msgstr ""

#: src/views/dashboard/components/ParamsOptimization.vue:86
msgid "Performance settings saved successfully"
msgstr ""

#: src/language/constants.ts:28
msgid "Performing core upgrade"
msgstr ""

#: src/views/user/UserProfile.vue:121
msgid "Personal Information"
msgstr ""

#: src/constants/errors/self_check.ts:19
msgid "PID path not exist"
msgstr ""

#: src/constants/errors/crypto.ts:2
msgid "Plain text is empty"
msgstr ""

#: src/views/dashboard/NginxDashBoard.vue:171
msgid "Please enable the stub_status module to get request statistics, connection count, etc."
msgstr ""

#: src/views/preference/components/AuthSettings/AddPasskey.vue:69
msgid "Please enter a name for the passkey you wish to create and click the OK button below."
msgstr ""

#: src/components/PortScanner/PortScannerCompact.vue:85
msgid "Please enter a valid port range"
msgstr ""

#: src/components/TwoFA/Authorization.vue:85
msgid "Please enter the OTP code:"
msgstr ""

#: src/components/SystemRestore/SystemRestoreContent.vue:112
msgid "Please enter the security token"
msgstr ""

#: src/components/SystemRestore/SystemRestoreContent.vue:210
#: src/components/SystemRestore/SystemRestoreContent.vue:287
msgid "Please enter the security token received during backup"
msgstr ""

#: src/language/curd.ts:24
msgid "Please fill all fields correctly"
msgstr ""

#: src/views/backup/AutoBackup/components/StorageConfigEditor.vue:23
msgid "Please fill in required S3 configuration fields"
msgstr ""

#: src/views/certificate/DNSCredential.vue:52
msgid "Please fill in the API authentication credentials provided by your DNS provider."
msgstr ""

#: src/components/AutoCertForm/AutoCertForm.vue:56
msgid "Please first add credentials in Certification > DNS Credentials, and then select one of the credentialsbelow to request the API of the DNS provider."
msgstr ""

#: src/components/Notification/notifications.ts:182
#: src/language/constants.ts:59
msgid "Please generate new recovery codes in the preferences immediately to prevent lockout."
msgstr ""

#: src/views/config/components/ConfigRightPanel/Basic.vue:27
#: src/views/config/components/Rename.vue:65
msgid "Please input a filename"
msgstr ""

#: src/views/config/components/Mkdir.vue:56
msgid "Please input a folder name"
msgstr ""

#: src/views/stream/components/StreamDuplicate.vue:25
msgid "Please input name, this will be used as the filename of the new configuration!"
msgstr ""

#: src/views/site/site_list/SiteDuplicate.vue:33
msgid "Please input name, this will be used as the filename of the new configuration."
msgstr ""

#: src/views/install/components/InstallForm.vue:25
msgid "Please input your E-mail!"
msgstr ""

#: src/views/install/components/InstallForm.vue:41
#: src/views/other/Login.vue:47
msgid "Please input your password!"
msgstr ""

#: src/views/install/components/InstallForm.vue:31
#: src/views/other/Login.vue:41
msgid "Please input your username!"
msgstr ""

#: src/views/backup/components/SystemRestore.vue:8
#: src/views/install/components/InstallView.vue:48
msgid "Please log in."
msgstr ""

#: src/views/certificate/DNSCredential.vue:61
msgid "Please note that the unit of time configurations below are all in seconds."
msgstr ""

#: src/views/install/components/InstallView.vue:102
msgid "Please resolve all issues before proceeding with installation"
msgstr ""

#: src/views/backup/components/BackupCreator.vue:107
msgid "Please save this security token, you will need it for restoration:"
msgstr ""

#: src/components/SystemRestore/SystemRestoreContent.vue:107
msgid "Please select a backup file"
msgstr ""

#: src/language/curd.ts:33
msgid "Please select at least one item"
msgstr ""

#: src/views/environments/list/Environment.vue:121
#: src/views/environments/list/Environment.vue:35
msgid "Please select at least one node to reload Nginx"
msgstr ""

#: src/views/environments/list/Environment.vue:142
#: src/views/environments/list/Environment.vue:49
msgid "Please select at least one node to restart Nginx"
msgstr ""

#: src/views/environments/list/Environment.vue:100
msgid "Please select at least one node to upgrade"
msgstr ""

#: src/views/certificate/components/RemoveCert.vue:27
msgid "Please type \"Revoke\" to confirm"
msgstr ""

#: src/components/PortScanner/PortScannerCompact.vue:31
#: src/views/preference/tabs/ServerSettings.vue:22
msgid "Port"
msgstr ""

#: src/views/site/site_edit/components/RightPanel/RightPanel.vue:44
#: src/views/stream/components/RightPanel/RightPanel.vue:25
msgid "Port Scanner"
msgstr ""

#: src/views/environments/group/columns.ts:15
#: src/views/environments/group/EnvGroup.vue:39
msgid "Post-sync Action"
msgstr ""

#: src/views/environments/list/BatchUpgrader.vue:167
#: src/views/environments/list/BatchUpgrader.vue:220
#: src/views/system/Upgrade.vue:213
#: src/views/system/Upgrade.vue:267
msgid "Pre-release"
msgstr ""

#: src/routes/modules/preference.ts:10
#: src/views/preference/Preference.vue:41
msgid "Preference"
msgstr ""

#: src/language/constants.ts:8
msgid "Preparing lego configurations"
msgstr ""

#: src/components/PortScanner/PortScannerCompact.vue:55
msgid "Process"
msgstr ""

#: src/views/dashboard/components/ProcessDistributionCard.vue:26
msgid "Process Distribution"
msgstr ""

#: src/views/dashboard/components/PerformanceTablesCard.vue:155
msgid "Process information"
msgstr ""

#: src/language/curd.ts:58
msgid "Processing {count}/{total}"
msgstr ""

#: src/language/constants.ts:3
msgid "Prohibit changing root password in demo"
msgstr ""

#: src/language/constants.ts:4
msgid "Prohibit deleting the default user"
msgstr ""

#: src/views/system/About.vue:51
msgid "Project Team"
msgstr ""

#: src/views/certificate/DNSCredential.vue:16
msgid "Provider"
msgstr ""

#: src/views/certificate/ACMEUser.vue:48
msgid "Proxy"
msgstr ""

#: src/components/ProxyTargets/ProxyTargets.vue:48
msgid "Proxy Pass"
msgstr ""

#: src/views/site/site_list/columns.tsx:64
#: src/views/stream/columns.tsx:32
msgid "Proxy Targets"
msgstr ""

#: src/views/preference/tabs/NodeSettings.vue:46
msgid "Public Security Number"
msgstr ""

#: src/constants/errors/site.ts:8
#: src/constants/errors/stream.ts:7
msgid "Read dir failed: {0}"
msgstr ""

#: src/composables/usePerformanceMetrics.ts:104
#: src/views/dashboard/components/PerformanceTablesCard.vue:64
msgid "Read requests"
msgstr ""

#: src/views/dashboard/ServerAnalytic.vue:37
#: src/views/dashboard/ServerAnalytic.vue:383
msgid "Reads"
msgstr ""

#: src/views/dashboard/ServerAnalytic.vue:334
#: src/views/dashboard/ServerAnalytic.vue:35
msgid "Receive"
msgstr ""

#: src/components/SelfCheck/SelfCheck.vue:23
msgid "Recheck"
msgstr ""

#: src/components/TwoFA/Authorization.vue:79
msgid "Recovery"
msgstr ""

#: src/views/preference/components/AuthSettings/RecoveryCodes.vue:68
msgid "Recovery Codes"
msgstr ""

#: src/views/preference/components/AuthSettings/RecoveryCodes.vue:73
msgid "Recovery codes are used to access your account when you lose access to your 2FA device. Each code can only be used once."
msgstr ""

#: src/views/preference/tabs/CertSettings.vue:40
msgid "Recursive Nameservers"
msgstr ""

#: src/components/ChatGPT/ChatMessageInput.vue:30
msgid "Regenerate response"
msgstr ""

#: src/views/certificate/ACMEUser.vue:133
msgid "Register"
msgstr ""

#: src/views/certificate/ACMEUser.vue:53
msgid "Register a user or use this account to issue a certificate through an HTTP proxy."
msgstr ""

#: src/views/certificate/ACMEUser.vue:101
msgid "Register failed"
msgstr ""

#: src/views/certificate/ACMEUser.vue:72
msgid "Register On Startup"
msgstr ""

#: src/views/preference/components/AuthSettings/AddPasskey.vue:25
msgid "Register passkey successfully"
msgstr ""

#: src/views/certificate/ACMEUser.vue:99
msgid "Register successfully"
msgstr ""

#: src/language/constants.ts:14
msgid "Registering user"
msgstr ""

#: src/views/certificate/ACMEUser.vue:116
msgid "Registration Status"
msgstr ""

#: src/views/system/Upgrade.vue:152
msgid "Reinstall"
msgstr ""

#: src/views/system/Upgrade.vue:271
msgid "Release Note"
msgstr ""

#: src/components/ChatGPT/ChatMessage.vue:222
#: src/components/NginxControl/NginxControl.vue:99
msgid "Reload"
msgstr ""

#: src/components/EnvGroupTabs/EnvGroupTabs.vue:136
#: src/views/environments/group/columns.ts:22
#: src/views/environments/group/EnvGroup.vue:50
#: src/views/environments/list/Environment.vue:129
#: src/views/environments/list/Environment.vue:137
msgid "Reload Nginx"
msgstr ""

#: src/constants/errors/nginx.ts:4
msgid "Reload nginx failed: {0}"
msgstr ""

#: src/components/Notification/notifications.ts:10
msgid "Reload Nginx on %{node} failed, response: %{resp}"
msgstr ""

#: src/components/Notification/notifications.ts:14
msgid "Reload Nginx on %{node} successfully"
msgstr ""

#: src/components/Notification/notifications.ts:9
msgid "Reload Remote Nginx Error"
msgstr ""

#: src/components/Notification/notifications.ts:13
msgid "Reload Remote Nginx Success"
msgstr ""

#: src/components/EnvGroupTabs/EnvGroupTabs.vue:84
msgid "Reload request failed, please check your network connection"
msgstr ""

#: src/components/NginxControl/NginxControl.vue:73
msgid "Reloading"
msgstr ""

#: src/language/constants.ts:18
msgid "Reloading nginx"
msgstr ""

#: src/views/preference/tabs/AuthSettings.vue:137
msgid "Remove"
msgstr ""

#: src/views/preference/components/AuthSettings/Passkey.vue:46
#: src/views/preference/tabs/AuthSettings.vue:47
msgid "Remove successfully"
msgstr ""

#: src/components/Notification/Notification.vue:78
msgid "Removed successfully"
msgstr ""

#: src/components/NgxConfigEditor/NgxUpstream.vue:131
#: src/views/config/components/ConfigName.vue:51
#: src/views/config/components/Rename.vue:56
#: src/views/config/ConfigList.vue:181
#: src/views/site/site_edit/components/ConfigName/ConfigName.vue:44
#: src/views/stream/components/ConfigName.vue:44
msgid "Rename"
msgstr ""

#: src/components/Notification/notifications.ts:78
msgid "Rename %{orig_path} to %{new_path} on %{env_name} failed"
msgstr ""

#: src/components/Notification/notifications.ts:82
msgid "Rename %{orig_path} to %{new_path} on %{env_name} successfully"
msgstr ""

#: src/components/Notification/notifications.ts:77
#: src/language/constants.ts:42
msgid "Rename Remote Config Error"
msgstr ""

#: src/components/Notification/notifications.ts:81
#: src/language/constants.ts:41
msgid "Rename Remote Config Success"
msgstr ""

#: src/components/Notification/notifications.ts:125
#: src/language/constants.ts:56
msgid "Rename Remote Site Error"
msgstr ""

#: src/components/Notification/notifications.ts:129
#: src/language/constants.ts:55
msgid "Rename Remote Site Success"
msgstr ""

#: src/components/Notification/notifications.ts:165
msgid "Rename Remote Stream Error"
msgstr ""

#: src/components/Notification/notifications.ts:169
msgid "Rename Remote Stream Success"
msgstr ""

#: src/components/Notification/notifications.ts:126
msgid "Rename site %{name} to %{new_name} on %{node} failed"
msgstr ""

#: src/components/Notification/notifications.ts:130
msgid "Rename site %{name} to %{new_name} on %{node} successfully"
msgstr ""

#: src/components/Notification/notifications.ts:166
msgid "Rename stream %{name} to %{new_name} on %{node} failed"
msgstr ""

#: src/components/Notification/notifications.ts:170
msgid "Rename stream %{name} to %{new_name} on %{node} successfully"
msgstr ""

#: src/views/config/components/Rename.vue:43
msgid "Rename successfully"
msgstr ""

#: src/views/config/components/ConfigName.vue:30
#: src/views/site/site_edit/components/ConfigName/ConfigName.vue:27
#: src/views/stream/components/ConfigName.vue:27
msgid "Renamed successfully"
msgstr ""

#: src/views/certificate/components/RenewCert.vue:46
#: src/views/certificate/components/RenewCert.vue:53
msgid "Renew Certificate"
msgstr ""

#: src/language/constants.ts:36
msgid "Renew Certificate Error"
msgstr ""

#: src/language/constants.ts:35
msgid "Renew Certificate Success"
msgstr ""

#: src/views/certificate/components/RenewCert.vue:28
#: src/views/certificate/components/WildcardCertificate.vue:46
msgid "Renew successfully"
msgstr ""

#: src/views/dashboard/components/PerformanceTablesCard.vue:142
msgid "Request statistics"
msgstr ""

#: src/constants/errors/crypto.ts:4
msgid "Request timeout"
msgstr ""

#: src/constants/errors/validate.ts:2
#: src/language/constants.ts:33
msgid "Requested with wrong parameters"
msgstr ""

#: src/views/dashboard/components/PerformanceStatisticsCard.vue:77
msgid "Requests Per Connection"
msgstr ""

#: src/language/curd.ts:13
msgid "Reset"
msgstr ""

#: src/views/preference/components/AuthSettings/TOTP.vue:93
msgid "Reset 2FA"
msgstr ""

#: src/views/dashboard/components/ResourceUsageCard.vue:53
msgid "Resident Set Size: Actual memory resident in physical memory, including all shared library memory, which will be repeated calculated for multiple processes"
msgstr ""

#: src/composables/usePerformanceMetrics.ts:109
#: src/views/dashboard/components/PerformanceTablesCard.vue:69
msgid "Responses"
msgstr ""

#: src/components/NginxControl/NginxControl.vue:92
msgid "Restart"
msgstr ""

#: src/components/EnvGroupTabs/EnvGroupTabs.vue:148
#: src/views/environments/list/Environment.vue:150
#: src/views/environments/list/Environment.vue:158
msgid "Restart Nginx"
msgstr ""

#: src/components/Notification/notifications.ts:18
msgid "Restart Nginx on %{node} failed, response: %{resp}"
msgstr ""

#: src/components/Notification/notifications.ts:22
msgid "Restart Nginx on %{node} successfully"
msgstr ""

#: src/components/Notification/notifications.ts:17
msgid "Restart Remote Nginx Error"
msgstr ""

#: src/components/Notification/notifications.ts:21
msgid "Restart Remote Nginx Success"
msgstr ""

#: src/components/EnvGroupTabs/EnvGroupTabs.vue:104
msgid "Restart request failed, please check your network connection"
msgstr ""

#: src/components/NginxControl/NginxControl.vue:78
msgid "Restarting"
msgstr ""

#: src/language/curd.ts:10
msgid "Restore"
msgstr ""

#: src/components/SystemRestore/SystemRestoreContent.vue:135
msgid "Restore completed successfully"
msgstr ""

#: src/views/install/components/InstallView.vue:112
msgid "Restore from Backup"
msgstr ""

#: src/components/SystemRestore/SystemRestoreContent.vue:223
#: src/components/SystemRestore/SystemRestoreContent.vue:300
msgid "Restore Nginx Configuration"
msgstr ""

#: src/components/SystemRestore/SystemRestoreContent.vue:234
#: src/components/SystemRestore/SystemRestoreContent.vue:311
msgid "Restore Nginx UI Configuration"
msgstr ""

#: src/components/ConfigHistory/DiffViewer.vue:412
#: src/components/ConfigHistory/DiffViewer.vue:425
msgid "Restore this version"
msgstr ""

#: src/language/curd.ts:30
msgid "Restored successfully"
msgstr ""

#: src/views/certificate/components/RemoveCert.vue:26
#: src/views/certificate/components/RemoveCert.vue:96
msgid "Revoke"
msgstr ""

#: src/components/AutoCertForm/AutoCertForm.vue:113
msgid "Revoke Old Certificate"
msgstr ""

#: src/views/certificate/components/RemoveCert.vue:110
msgid "Revoke this certificate"
msgstr ""

#: src/views/certificate/components/RemoveCert.vue:118
msgid "Revoking a certificate will affect any services currently using it. This action cannot be undone."
msgstr ""

#: src/views/preference/tabs/AuthSettings.vue:75
msgid "RP Display Name"
msgstr ""

#: src/views/preference/tabs/AuthSettings.vue:81
msgid "RP Origins"
msgstr ""

#: src/views/preference/tabs/AuthSettings.vue:69
msgid "RPID"
msgstr ""

#: src/views/preference/tabs/ServerSettings.vue:25
msgid "Run Mode"
msgstr ""

#: src/components/NginxControl/NginxControl.vue:68
msgid "Running"
msgstr ""

#: src/views/backup/AutoBackup/AutoBackup.vue:75
#: src/views/backup/AutoBackup/AutoBackup.vue:84
#: src/views/backup/AutoBackup/components/StorageConfigEditor.vue:49
msgid "S3"
msgstr ""

#: src/views/backup/AutoBackup/components/StorageConfigEditor.vue:83
msgid "S3 access key ID"
msgstr ""

#: src/views/backup/AutoBackup/AutoBackup.vue:249
#: src/views/backup/AutoBackup/components/StorageConfigEditor.vue:77
msgid "S3 Access Key ID"
msgstr ""

#: src/views/backup/AutoBackup/components/StorageConfigEditor.vue:79
msgid "S3 access key ID is required"
msgstr ""

#: src/views/backup/AutoBackup/AutoBackup.vue:261
#: src/views/backup/AutoBackup/components/StorageConfigEditor.vue:99
msgid "S3 Bucket"
msgstr ""

#: src/constants/errors/backup.ts:70
msgid "S3 bucket access denied: {0}"
msgstr ""

#: src/views/backup/AutoBackup/components/StorageConfigEditor.vue:101
msgid "S3 bucket is required"
msgstr ""

#: src/views/backup/AutoBackup/components/StorageConfigEditor.vue:105
msgid "S3 bucket name"
msgstr ""

#: src/constants/errors/backup.ts:63
msgid "S3 configuration is incomplete: missing {0}"
msgstr ""

#: src/views/backup/AutoBackup/components/StorageConfigEditor.vue:34
msgid "S3 connection test failed"
msgstr ""

#: src/constants/errors/backup.ts:69
msgid "S3 connection test failed: {0}"
msgstr ""

#: src/views/backup/AutoBackup/components/StorageConfigEditor.vue:30
msgid "S3 connection test successful"
msgstr ""

#: src/constants/errors/backup.ts:71
msgid "S3 credentials are invalid: {0}"
msgstr ""

#: src/views/backup/AutoBackup/AutoBackup.vue:243
#: src/views/backup/AutoBackup/components/StorageConfigEditor.vue:66
msgid "S3 Endpoint"
msgstr ""

#: src/constants/errors/backup.ts:72
msgid "S3 endpoint is invalid: {0}"
msgstr ""

#: src/views/backup/AutoBackup/components/StorageConfigEditor.vue:68
msgid "S3 endpoint is required"
msgstr ""

#: src/views/backup/AutoBackup/components/StorageConfigEditor.vue:72
msgid "S3 endpoint URL"
msgstr ""

#: src/views/backup/AutoBackup/components/StorageConfigEditor.vue:126
#: src/views/backup/AutoBackup/components/StorageConfigEditor.vue:60
msgid "S3 path (e.g., backups/)"
msgstr ""

#: src/views/backup/AutoBackup/AutoBackup.vue:267
#: src/views/backup/AutoBackup/components/StorageConfigEditor.vue:110
msgid "S3 Region"
msgstr ""

#: src/views/backup/AutoBackup/components/StorageConfigEditor.vue:115
msgid "S3 region (e.g., us-east-1)"
msgstr ""

#: src/views/backup/AutoBackup/components/StorageConfigEditor.vue:94
msgid "S3 secret access key"
msgstr ""

#: src/views/backup/AutoBackup/AutoBackup.vue:255
#: src/views/backup/AutoBackup/components/StorageConfigEditor.vue:88
msgid "S3 Secret Access Key"
msgstr ""

#: src/views/backup/AutoBackup/components/StorageConfigEditor.vue:90
msgid "S3 secret access key is required"
msgstr ""

#: src/constants/errors/backup.ts:68
msgid "S3 upload failed: {0}"
msgstr ""

#: src/views/backup/AutoBackup/components/CronEditor.vue:32
msgid "Saturday"
msgstr ""

#: src/components/ChatGPT/ChatMessage.vue:215
#: src/components/NgxConfigEditor/directive/DirectiveEditorItem.vue:129
#: src/language/curd.ts:18
#: src/views/certificate/CertificateEditor.vue:266
#: src/views/config/components/ConfigLeftPanel.vue:282
#: src/views/config/components/ConfigName.vue:59
#: src/views/preference/components/AuthSettings/Passkey.vue:130
#: src/views/preference/Preference.vue:117
#: src/views/site/site_edit/components/ConfigName/ConfigName.vue:52
#: src/views/site/site_edit/components/SiteEditor/SiteEditor.vue:163
#: src/views/stream/components/ConfigName.vue:52
#: src/views/stream/components/StreamEditor.vue:118
msgid "Save"
msgstr ""

#: src/components/NgxConfigEditor/directive/DirectiveAdd.vue:112
msgid "Save Directive"
msgstr ""

#: src/components/NgxConfigEditor/directive/DirectiveEditorItem.vue:45
#: src/views/site/site_add/SiteAdd.vue:40
msgid "Save error %{msg}"
msgstr ""

#: src/components/Notification/notifications.ts:133
#: src/language/constants.ts:48
msgid "Save Remote Site Error"
msgstr ""

#: src/components/Notification/notifications.ts:137
#: src/language/constants.ts:47
msgid "Save Remote Site Success"
msgstr ""

#: src/components/Notification/notifications.ts:173
msgid "Save Remote Stream Error"
msgstr ""

#: src/components/Notification/notifications.ts:177
msgid "Save Remote Stream Success"
msgstr ""

#: src/components/Notification/notifications.ts:134
msgid "Save site %{name} to %{node} failed"
msgstr ""

#: src/components/Notification/notifications.ts:138
msgid "Save site %{name} to %{node} successfully"
msgstr ""

#: src/components/Notification/notifications.ts:174
msgid "Save stream %{name} to %{node} failed"
msgstr ""

#: src/components/Notification/notifications.ts:178
msgid "Save stream %{name} to %{node} successfully"
msgstr ""

#: src/language/curd.ts:35
#: src/views/certificate/CertificateEditor.vue:49
#: src/views/preference/store/index.ts:118
msgid "Save successfully"
msgstr ""

#: src/components/NgxConfigEditor/directive/DirectiveEditorItem.vue:43
#: src/language/curd.ts:28
#: src/views/config/components/ConfigLeftPanel.vue:198
#: src/views/site/site_add/SiteAdd.vue:31
#: src/views/site/site_edit/components/SiteEditor/SiteEditor.vue:40
#: src/views/stream/store.ts:70
msgid "Saved successfully"
msgstr ""

#: src/constants/errors/self_check.ts:20
msgid "Sbin path not exist"
msgstr ""

#: src/components/PortScanner/PortScannerCompact.vue:94
msgid "Scan completed"
msgstr ""

#: src/components/PortScanner/PortScannerCompact.vue:98
msgid "Scan failed"
msgstr ""

#: src/components/PortScanner/PortScannerCompact.vue:179
msgid "Scan Ports"
msgstr ""

#: src/components/PortScanner/PortScannerCompact.vue:204
msgid "Scan Results"
msgstr ""

#: src/views/preference/components/AuthSettings/TOTP.vue:69
msgid "Scan the QR code with your mobile phone to add the account to the app."
msgstr ""

#: src/views/backup/AutoBackup/AutoBackup.vue:113
msgid "Schedule"
msgstr ""

#: src/views/backup/AutoBackup/components/CronEditor.vue:144
msgid "Schedule Type"
msgstr ""

#: src/views/certificate/components/DNSChallenge.vue:90
msgid "SDK"
msgstr ""

#: src/language/constants.ts:62
#: src/language/curd.ts:12
msgid "Search"
msgstr ""

#: src/language/constants.ts:61
msgid "Search module name"
msgstr ""

#: src/views/preference/components/AuthSettings/TOTP.vue:109
msgid "Secret has been copied"
msgstr ""

#: src/views/user/UserProfile.vue:175
msgid "Security Settings"
msgstr ""

#: src/components/SystemRestore/SystemRestoreContent.vue:207
#: src/components/SystemRestore/SystemRestoreContent.vue:284
msgid "Security Token"
msgstr ""

#: src/views/backup/components/BackupCreator.vue:94
msgid "Security Token Information"
msgstr ""

#: src/language/curd.ts:31
msgid "Select all"
msgstr ""

#: src/views/environments/group/EnvGroup.vue:42
msgid "Select an action after sync"
msgstr ""

#: src/language/curd.ts:57
msgid "Selected {count} files"
msgstr ""

#: src/language/curd.ts:16
msgid "Selector"
msgstr ""

#: src/components/SelfCheck/SelfCheck.vue:15
#: src/routes/modules/system.ts:19
msgid "Self Check"
msgstr ""

#: src/components/SelfCheck/SelfCheckHeaderBanner.vue:37
#: src/components/SelfCheck/SelfCheckHeaderBanner.vue:60
msgid "Self check failed, Nginx UI may not work properly"
msgstr ""

#: src/views/dashboard/ServerAnalytic.vue:344
#: src/views/dashboard/ServerAnalytic.vue:35
msgid "Send"
msgstr ""

#: src/routes/modules/dashboard.ts:19
#: src/views/preference/Preference.vue:46
msgid "Server"
msgstr ""

#: src/views/dashboard/ServerAnalytic.vue:175
msgid "Server Info"
msgstr ""

#: src/views/dashboard/components/ParamsOpt/PerformanceConfig.vue:106
msgid "Server Names Hash Bucket Size"
msgstr ""

#: src/views/dashboard/components/ParamsOpt/PerformanceConfig.vue:107
msgid "Server names hash table size"
msgstr ""

#: src/views/site/site_edit/components/Cert/ObtainCert.vue:105
msgid "server_name not found in directives"
msgstr ""

#: src/constants/errors/nginx_log.ts:3
msgid "ServerIdx out of range"
msgstr ""

#: src/constants/errors/user.ts:12
msgid "Session not found"
msgstr ""

#: src/views/preference/tabs/CertSettings.vue:36
msgid "Set the recursive nameservers to override the systems nameservers for the step of DNS challenge."
msgstr ""

#: src/views/site/components/SiteStatusSelect.vue:116
msgid "set to maintenance mode"
msgstr ""

#: src/language/constants.ts:11
msgid "Setting DNS01 challenge provider"
msgstr ""

#: src/language/constants.ts:12
msgid "Setting environment variables"
msgstr ""

#: src/language/constants.ts:10
msgid "Setting HTTP01 challenge provider"
msgstr ""

#: src/constants/errors/nginx_log.ts:8
msgid "Settings.NginxLogSettings.AccessLogPath is empty, refer to https://nginxui.com/guide/config-nginx.html for more information"
msgstr ""

#: src/constants/errors/nginx_log.ts:7
msgid "Settings.NginxLogSettings.ErrorLogPath is empty, refer to https://nginxui.com/guide/config-nginx.html for more information"
msgstr ""

#: src/views/install/components/InstallView.vue:65
msgid "Setup your Nginx UI"
msgstr ""

#: src/views/dashboard/components/ParamsOpt/ProxyCacheConfig.vue:147
msgid "Shared Memory Zone"
msgstr ""

#: src/components/SensitiveString/SensitiveString.vue:40
msgid "Show"
msgstr ""

#: src/views/other/Login.vue:240
msgid "Sign in with a passkey"
msgstr ""

#: src/components/NgxConfigEditor/directive/DirectiveAdd.vue:48
msgid "Single Directive"
msgstr ""

#: src/views/site/site_add/SiteAdd.vue:138
msgid "Site Config Created Successfully"
msgstr ""

#: src/constants/errors/site.ts:4
msgid "Site is enabled"
msgstr ""

#: src/constants/errors/site.ts:5
msgid "Site is in maintenance mode"
msgstr ""

#: src/routes/modules/nginx_log.ts:31
msgid "Site Logs"
msgstr ""

#: src/constants/errors/site.ts:2
msgid "Site not found"
msgstr ""

#: src/language/generate.ts:29
msgid "Sites directory exists"
msgstr ""

#: src/routes/modules/sites.ts:19
msgid "Sites List"
msgstr ""

#: src/constants/errors/self_check.ts:11
msgid "Sites-available directory not exist"
msgstr ""

#: src/constants/errors/self_check.ts:12
msgid "Sites-enabled directory not exist"
msgstr ""

#: src/language/curd.ts:60
msgid "Size"
msgstr ""

#: src/views/preference/tabs/NodeSettings.vue:23
msgid "Skip Installation"
msgstr ""

#: src/views/dashboard/components/ParamsOpt/ProxyCacheConfig.vue:325
msgid "Sleep time between cache loader iterations"
msgstr ""

#: src/views/dashboard/components/ParamsOpt/ProxyCacheConfig.vue:263
msgid "Sleep time between cache manager iterations"
msgstr ""

#: src/views/certificate/CertificateEditor.vue:213
msgid "SSL Certificate Content"
msgstr ""

#: src/constants/errors/system.ts:8
msgid "SSL certificate file must be under Nginx configuration directory: {0}"
msgstr ""

#: src/constants/errors/system.ts:6
msgid "SSL certificate file not found"
msgstr ""

#: src/views/certificate/CertificateEditor.vue:227
msgid "SSL Certificate Key Content"
msgstr ""

#: src/views/certificate/CertificateEditor.vue:192
msgid "SSL Certificate Key Path"
msgstr ""

#: src/views/certificate/CertificateEditor.vue:177
#: src/views/preference/tabs/ServerSettings.vue:37
msgid "SSL Certificate Path"
msgstr ""

#: src/constants/errors/system.ts:4
msgid "SSL certificate path is required when HTTPS is enabled"
msgstr ""

#: src/constants/errors/system.ts:9
msgid "SSL key file must be under Nginx configuration directory: {0}"
msgstr ""

#: src/constants/errors/system.ts:7
msgid "SSL key file not found"
msgstr ""

#: src/views/preference/tabs/ServerSettings.vue:41
msgid "SSL Key Path"
msgstr ""

#: src/constants/errors/system.ts:5
msgid "SSL key path is required when HTTPS is enabled"
msgstr ""

#: src/views/other/Login.vue:197
msgid "SSO Login"
msgstr ""

#: src/views/environments/list/BatchUpgrader.vue:164
#: src/views/environments/list/BatchUpgrader.vue:214
#: src/views/system/Upgrade.vue:210
#: src/views/system/Upgrade.vue:261
msgid "Stable"
msgstr ""

#: src/components/PortScanner/PortScannerCompact.vue:151
msgid "Start"
msgstr ""

#: src/components/SystemRestore/SystemRestoreContent.vue:246
#: src/components/SystemRestore/SystemRestoreContent.vue:323
msgid "Start Restore"
msgstr ""

#: src/views/dashboard/components/ModulesTable.vue:88
#: src/views/dashboard/components/ModulesTable.vue:92
msgid "Static"
msgstr ""

#: src/components/PortScanner/PortScannerCompact.vue:37
#: src/views/backup/AutoBackup/AutoBackup.vue:160
#: src/views/certificate/ACMEUser.vue:60
#: src/views/certificate/CertificateList/certColumns.tsx:63
#: src/views/dashboard/components/ModulesTable.vue:96
#: src/views/environments/list/envColumns.tsx:43
#: src/views/site/site_edit/components/RightPanel/Basic.vue:28
#: src/views/site/site_list/columns.tsx:101
#: src/views/stream/columns.tsx:69
msgid "Status"
msgstr ""

#: src/components/NginxControl/NginxControl.vue:83
msgid "Stopped"
msgstr ""

#: src/views/dashboard/ServerAnalytic.vue:250
#: src/views/dashboard/ServerAnalytic.vue:251
msgid "Storage"
msgstr ""

#: src/views/backup/AutoBackup/AutoBackup.vue:92
msgid "Storage Configuration"
msgstr ""

#: src/components/Notification/notifications.ts:26
msgid "Storage configuration validation failed for backup task %{backup_name}, error: %{error}"
msgstr ""

#: src/views/backup/AutoBackup/components/StorageConfigEditor.vue:120
#: src/views/backup/AutoBackup/components/StorageConfigEditor.vue:54
msgid "Storage Path"
msgstr ""

#: src/views/backup/AutoBackup/components/StorageConfigEditor.vue:122
#: src/views/backup/AutoBackup/components/StorageConfigEditor.vue:56
msgid "Storage path is required"
msgstr ""

#: src/constants/errors/backup.ts:61
msgid "Storage path not in granted access paths: {0}"
msgstr ""

#: src/views/backup/AutoBackup/AutoBackup.vue:70
#: src/views/backup/AutoBackup/components/StorageConfigEditor.vue:45
msgid "Storage Type"
msgstr ""

#: src/constants/errors/stream.ts:4
msgid "Stream is enabled"
msgstr ""

#: src/constants/errors/stream.ts:2
msgid "Stream not found"
msgstr ""

#: src/language/generate.ts:30
msgid "Streams directory exists"
msgstr ""

#: src/constants/errors/self_check.ts:13
msgid "Streams-available directory not exist"
msgstr ""

#: src/constants/errors/self_check.ts:14
msgid "Streams-enabled directory not exist"
msgstr ""

#: src/views/preference/tabs/NginxSettings.vue:10
msgid "Stub Status Port"
msgstr ""

#: src/constants/index.ts:25
#: src/views/backup/AutoBackup/AutoBackup.vue:195
#: src/views/backup/AutoBackup/AutoBackup.vue:220
#: src/views/notification/notificationColumns.tsx:35
msgid "Success"
msgstr ""

#: src/views/backup/AutoBackup/components/CronEditor.vue:121
#: src/views/backup/AutoBackup/components/CronEditor.vue:26
msgid "Sunday"
msgstr ""

#: src/components/SelfCheck/tasks/frontend/sse.ts:14
msgid "Support communication with the backend through the Server-Sent Events protocol. If your Nginx UI is being used via an Nginx reverse proxy, please refer to this link to write the corresponding configuration file: https://nginxui.com/guide/nginx-proxy-example.html"
msgstr ""

#: src/components/SelfCheck/tasks/frontend/websocket.ts:13
msgid "Support communication with the backend through the WebSocket protocol. If your Nginx UI is being used via an Nginx reverse proxy, please refer to this link to write the corresponding configuration file: https://nginxui.com/guide/nginx-proxy-example.html"
msgstr ""

#: src/language/curd.ts:51
#: src/language/curd.ts:55
msgid "Support single or batch upload of files"
msgstr ""

#: src/language/curd.ts:52
#: src/language/curd.ts:56
msgid "Support uploading entire folders"
msgstr ""

#: src/components/SystemRestore/SystemRestoreContent.vue:197
#: src/components/SystemRestore/SystemRestoreContent.vue:274
msgid "Supported file type: .zip"
msgstr ""

#: src/views/dashboard/ServerAnalytic.vue:236
#: src/views/dashboard/ServerAnalytic.vue:237
msgid "Swap"
msgstr ""

#: src/components/SwitchAppearance/SwitchAppearance.vue:13
msgid "Switch to dark theme"
msgstr ""

#: src/components/SwitchAppearance/SwitchAppearance.vue:13
msgid "Switch to light theme"
msgstr ""

#: src/views/config/components/Rename.vue:81
msgid "Sync"
msgstr ""

#: src/views/certificate/CertificateList/certColumns.tsx:28
msgid "Sync Certificate"
msgstr ""

#: src/components/Notification/notifications.ts:62
msgid "Sync Certificate %{cert_name} to %{env_name} failed"
msgstr ""

#: src/components/Notification/notifications.ts:66
msgid "Sync Certificate %{cert_name} to %{env_name} successfully"
msgstr ""

#: src/components/Notification/notifications.ts:61
#: src/language/constants.ts:39
msgid "Sync Certificate Error"
msgstr ""

#: src/components/Notification/notifications.ts:65
#: src/language/constants.ts:38
msgid "Sync Certificate Success"
msgstr ""

#: src/components/Notification/notifications.ts:70
msgid "Sync config %{config_name} to %{env_name} failed"
msgstr ""

#: src/components/Notification/notifications.ts:74
msgid "Sync config %{config_name} to %{env_name} successfully"
msgstr ""

#: src/components/Notification/notifications.ts:69
#: src/language/constants.ts:45
msgid "Sync Config Error"
msgstr ""

#: src/components/Notification/notifications.ts:73
#: src/language/constants.ts:44
msgid "Sync Config Success"
msgstr ""

#: src/components/EnvGroupTabs/EnvGroupTabs.vue:122
#: src/views/environments/group/EnvGroup.vue:31
msgid "Sync Nodes"
msgstr ""

#: src/views/site/site_edit/components/RightPanel/Basic.vue:58
#: src/views/site/site_edit/components/RightPanel/Basic.vue:71
#: src/views/stream/components/RightPanel/Basic.vue:53
#: src/views/stream/components/RightPanel/Basic.vue:66
msgid "Sync strategy"
msgstr ""

#: src/views/certificate/CertificateEditor.vue:206
msgid "Sync to"
msgstr ""

#: src/views/site/site_edit/components/RightPanel/Basic.vue:56
#: src/views/stream/components/RightPanel/Basic.vue:51
msgid "Synchronization"
msgstr ""

#: src/components/PortScanner/PortScannerCompact.vue:194
#: src/routes/modules/system.ts:11
msgid "System"
msgstr ""

#: src/views/backup/components/BackupCreator.vue:71
msgid "System Backup"
msgstr ""

#: src/views/install/components/InstallView.vue:60
msgid "System Check"
msgstr ""

#: src/views/certificate/components/ACMEUserSelector.vue:88
msgid "System Initial User"
msgstr ""

#: src/components/SystemRestore/SystemRestoreContent.vue:174
msgid "System Restore"
msgstr ""

#: src/views/install/components/InstallView.vue:44
msgid "System restored successfully."
msgstr ""

#: src/constants/errors/self_check.ts:3
msgid "Task is not fixable"
msgstr ""

#: src/constants/errors/self_check.ts:2
msgid "Task not found"
msgstr ""

#: src/views/preference/components/ExternalNotify/telegram.ts:5
msgid "Telegram"
msgstr ""

#: src/routes/modules/terminal.ts:10
#: src/views/preference/Preference.vue:76
msgid "Terminal"
msgstr ""

#: src/views/preference/tabs/TerminalSettings.vue:10
msgid "Terminal Start Command"
msgstr ""

#: src/views/backup/AutoBackup/components/StorageConfigEditor.vue:141
msgid "Test S3 Connection"
msgstr ""

#: src/components/AutoCertForm/AutoCertForm.vue:48
msgid "The certificate for the domain will be checked 30 minutes, and will be renewed if it has been more than 1 week or the period you set in settings since it was last issued."
msgstr ""

#: src/views/preference/tabs/NodeSettings.vue:37
msgid "The ICP Number should only contain letters, unicode, numbers, hyphens, dashes, colons, and dots."
msgstr ""

#: src/views/certificate/CertificateEditor.vue:216
msgid "The input is not a SSL Certificate"
msgstr ""

#: src/views/certificate/CertificateEditor.vue:230
msgid "The input is not a SSL Certificate Key"
msgstr ""

#: src/constants/errors/nginx_log.ts:2
msgid "The log path is not under the paths in settings.NginxSettings.LogDirWhiteList"
msgstr ""

#: src/views/preference/tabs/OpenAISettings.vue:23
#: src/views/preference/tabs/OpenAISettings.vue:89
msgid "The model name should only contain letters, unicode, numbers, hyphens, dashes, colons, and dots."
msgstr ""

#: src/views/preference/tabs/OpenAISettings.vue:90
msgid "The model used for code completion, if not set, the chat model will be used."
msgstr ""

#: src/views/preference/tabs/NodeSettings.vue:18
msgid "The node name should only contain letters, unicode, numbers, hyphens, dashes, colons, and dots."
msgstr ""

#: src/views/site/site_add/SiteAdd.vue:97
msgid "The parameter of server_name is required"
msgstr ""

#: src/views/certificate/CertificateEditor.vue:181
msgid "The path exists, but the file is not a certificate"
msgstr ""

#: src/views/certificate/CertificateEditor.vue:196
msgid "The path exists, but the file is not a private key"
msgstr ""

#: src/views/preference/tabs/NodeSettings.vue:49
msgid "The Public Security Number should only contain letters, unicode, numbers, hyphens, dashes, colons, and dots."
msgstr ""

#: src/views/dashboard/Environments.vue:148
msgid "The remote Nginx UI version is not compatible with the local Nginx UI version. To avoid potential errors, please upgrade the remote Nginx UI to match the local version."
msgstr ""

#: src/components/AutoCertForm/AutoCertForm.vue:43
msgid "The server_name in the current configuration must be the domain name you need to get the certificate, supportmultiple domains."
msgstr ""

#: src/views/preference/tabs/CertSettings.vue:22
#: src/views/preference/tabs/HTTPSettings.vue:14
msgid "The url is invalid"
msgstr ""

#: src/views/preference/tabs/OpenAISettings.vue:35
#: src/views/preference/tabs/OpenAISettings.vue:49
msgid "The url is invalid."
msgstr ""

#: src/language/constants.ts:2
msgid "The username or password is incorrect"
msgstr ""

#: src/views/dashboard/components/PerformanceTablesCard.vue:185
msgid "Theoretical maximum concurrent connections:"
msgstr ""

#: src/views/dashboard/components/PerformanceTablesCard.vue:189
msgid "Theoretical maximum RPS (Requests Per Second):"
msgstr ""

#: src/views/preference/components/AuthSettings/RecoveryCodes.vue:104
msgid "These codes are the last resort for accessing your account in case you lose your password and second factors. If you cannot find these codes, you will lose access to your account."
msgstr ""

#: src/views/certificate/CertificateEditor.vue:102
msgid "This Auto Cert item is invalid, please remove it."
msgstr ""

#: src/views/certificate/CertificateEditor.vue:92
msgid "This certificate is managed by Nginx UI"
msgstr ""

#: src/views/certificate/CertificateEditor.vue:165
#: src/views/certificate/CertificateEditor.vue:179
#: src/views/certificate/CertificateEditor.vue:194
msgid "This field is required"
msgstr ""

#: src/constants/form_errors.ts:3
#: src/language/curd.ts:41
msgid "This field should be a valid email address"
msgstr ""

#: src/constants/form_errors.ts:5
#: src/language/curd.ts:43
msgid "This field should be a valid hostname"
msgstr ""

#: src/constants/form_errors.ts:2
#: src/language/curd.ts:40
msgid "This field should not be empty"
msgstr ""

#: src/constants/form_errors.ts:6
msgid "This field should only contain letters, unicode characters, numbers, and -_."
msgstr ""

#: src/language/curd.ts:44
msgid "This field should only contain letters, unicode characters, numbers, and -_./:"
msgstr ""

#: src/views/dashboard/NginxDashBoard.vue:150
msgid "This module provides Nginx request statistics, connection count, etc. data. After enabling it, you can view performance statistics"
msgstr ""

#: src/views/certificate/components/RemoveCert.vue:104
msgid "This operation will only remove the certificate from the database. The certificate files on the file system will not be deleted."
msgstr ""

#: src/views/backup/components/BackupCreator.vue:141
msgid "This token will only be shown once and cannot be retrieved later. Please make sure to save it in a secure location."
msgstr ""

#: src/constants/form_errors.ts:4
#: src/language/curd.ts:42
msgid "This value is already taken"
msgstr ""

#: src/components/SystemRestore/SystemRestoreContent.vue:227
#: src/components/SystemRestore/SystemRestoreContent.vue:304
msgid "This will restore all Nginx configuration files. Nginx will restart after the restoration is complete."
msgstr ""

#: src/components/SystemRestore/SystemRestoreContent.vue:238
#: src/components/SystemRestore/SystemRestoreContent.vue:315
msgid "This will restore configuration files and database. Nginx UI will restart after the restoration is complete."
msgstr ""

#: src/views/environments/list/BatchUpgrader.vue:182
msgid "This will upgrade or reinstall the Nginx UI on %{nodeNames} to %{version}."
msgstr ""

#: src/views/preference/tabs/AuthSettings.vue:92
msgid "Throttle"
msgstr ""

#: src/views/backup/AutoBackup/components/CronEditor.vue:30
msgid "Thursday"
msgstr ""

#: src/views/preference/components/AuthSettings/AddPasskey.vue:65
#: src/views/preference/tabs/AuthSettings.vue:112
#: src/views/preference/tabs/LogrotateSettings.vue:12
msgid "Tips"
msgstr ""

#: src/views/dashboard/components/PerformanceTablesCard.vue:207
msgid "Tips: You can increase the concurrency processing capacity by increasing worker_processes or worker_connections"
msgstr ""

#: src/views/notification/notificationColumns.tsx:58
msgid "Title"
msgstr ""

#: src/views/certificate/components/RemoveCert.vue:122
msgid "To confirm revocation, please type \"Revoke\" in the field below:"
msgstr ""

#: src/views/preference/components/AuthSettings/TOTP.vue:68
msgid "To enable it, you need to install the Google or Microsoft Authenticator app on your mobile phone."
msgstr ""

#: src/views/preference/components/AuthSettings/AddPasskey.vue:89
msgid "To ensure security, Webauthn configuration cannot be added through the UI. Please manually configure the following in the app.ini configuration file and restart Nginx UI."
msgstr ""

#: src/views/site/site_edit/components/Cert/IssueCert.vue:34
#: src/views/site/site_edit/components/EnableTLS/EnableTLS.vue:15
msgid "To make sure the certification auto-renewal can work normally, we need to add a location which can proxy the request from authority to backend, and we need to save this file and reload the Nginx. Are you sure you want to continue?"
msgstr ""

#: src/views/preference/tabs/OpenAISettings.vue:36
msgid "To use a local large model, deploy it with ollama, vllm or lmdeploy. They provide an OpenAI-compatible API endpoint, so just set the baseUrl to your local API."
msgstr ""

#: src/views/dashboard/NginxDashBoard.vue:55
msgid "Toggle failed"
msgstr ""

#: src/views/preference/tabs/OpenAISettings.vue:61
msgid "Token is not valid"
msgstr ""

#: src/language/curd.ts:5
msgid "Total"
msgstr ""

#: src/composables/usePerformanceMetrics.ts:94
#: src/views/dashboard/components/PerformanceTablesCard.vue:54
msgid "Total connections"
msgstr ""

#: src/composables/usePerformanceMetrics.ts:89
#: src/views/dashboard/components/PerformanceTablesCard.vue:49
msgid "Total handshakes"
msgstr ""

#: src/views/dashboard/components/ProcessDistributionCard.vue:53
msgid "Total Nginx processes"
msgstr ""

#: src/views/dashboard/components/PerformanceStatisticsCard.vue:94
msgid "Total Nginx Processes"
msgstr ""

#: src/composables/usePerformanceMetrics.ts:99
#: src/views/dashboard/components/PerformanceTablesCard.vue:59
msgid "Total requests"
msgstr ""

#: src/views/dashboard/components/PerformanceStatisticsCard.vue:78
msgid "Total Requests / Total Connections"
msgstr ""

#: src/views/preference/components/AuthSettings/TOTP.vue:66
msgid "TOTP"
msgstr ""

#: src/views/preference/components/AuthSettings/TOTP.vue:67
msgid "TOTP is a two-factor authentication method that uses a time-based one-time password algorithm."
msgstr ""

#: src/language/curd.ts:20
msgid "Trash"
msgstr ""

#: src/views/backup/AutoBackup/components/CronEditor.vue:28
msgid "Tuesday"
msgstr ""

#: src/components/TwoFA/use2FAModal.ts:67
msgid "Two-factor authentication required"
msgstr ""

#: src/components/ProxyTargets/ProxyTargets.vue:48
#: src/views/certificate/CertificateList/certColumns.tsx:24
#: src/views/dashboard/components/ModulesTable.vue:83
#: src/views/nginx_log/NginxLogList.vue:12
#: src/views/notification/notificationColumns.tsx:8
#: src/views/preference/components/ExternalNotify/columns.tsx:18
msgid "Type"
msgstr ""

#: src/components/PortScanner/PortScannerCompact.vue:47
#: src/composables/useNginxPerformance.ts:18
msgid "Unknown"
msgstr ""

#: src/constants/errors/backup.ts:64
msgid "Unsupported backup type: {0}"
msgstr ""

#: src/views/user/UserProfile.vue:218
msgid "Update Password"
msgstr ""

#: src/views/user/UserProfile.vue:142
msgid "Update Profile"
msgstr ""

#: src/views/preference/components/AuthSettings/Passkey.vue:39
msgid "Update successfully"
msgstr ""

#: src/views/backup/AutoBackup/AutoBackup.vue:236
#: src/views/certificate/ACMEUser.vue:83
#: src/views/certificate/DNSCredential.vue:24
#: src/views/config/components/ConfigRightPanel/Basic.vue:54
#: src/views/config/configColumns.tsx:34
#: src/views/environments/group/columns.ts:35
#: src/views/environments/list/envColumns.tsx:89
#: src/views/site/site_edit/components/RightPanel/Basic.vue:38
#: src/views/site/site_list/columns.tsx:94
#: src/views/stream/columns.tsx:62
#: src/views/stream/components/RightPanel/Basic.vue:34
#: src/views/user/userColumns.tsx:52
msgid "Updated at"
msgstr ""

#: src/routes/modules/system.ts:26
#: src/views/environments/list/Environment.vue:108
#: src/views/environments/list/Environment.vue:116
#: src/views/system/Upgrade.vue:154
#: src/views/system/Upgrade.vue:159
msgid "Upgrade"
msgstr ""

#: src/views/environments/list/BatchUpgrader.vue:137
msgid "Upgraded Nginx UI on %{node} successfully 🎉"
msgstr ""

#: src/language/constants.ts:30
msgid "Upgraded successfully"
msgstr ""

#: src/views/environments/list/BatchUpgrader.vue:88
#: src/views/system/Upgrade.vue:81
msgid "Upgrading Nginx UI, please wait..."
msgstr ""

#: src/language/curd.ts:47
msgid "Upload Files"
msgstr ""

#: src/language/curd.ts:48
msgid "Upload Folders"
msgstr ""

#: src/components/ProxyTargets/ProxyTargets.vue:48
msgid "Upstream"
msgstr ""

#: src/components/NgxConfigEditor/NgxUpstream.vue:194
msgid "Upstream Name"
msgstr ""

#: src/views/dashboard/ServerAnalytic.vue:179
msgid "Uptime:"
msgstr ""

#: src/views/environments/list/envColumns.tsx:18
msgid "URL"
msgstr ""

#: src/components/TwoFA/Authorization.vue:121
msgid "Use OTP"
msgstr ""

#: src/components/TwoFA/Authorization.vue:117
msgid "Use recovery code"
msgstr ""

#: src/views/dashboard/components/ParamsOpt/ProxyCacheConfig.vue:158
msgid "Use Temporary Path"
msgstr ""

#: src/components/ChatGPT/ChatMessage.vue:187
msgid "User"
msgstr ""

#: src/constants/errors/user.ts:3
msgid "User banned"
msgstr ""

#: src/views/user/UserProfile.vue:62
msgid "User info updated successfully"
msgstr ""

#: src/constants/errors/user.ts:8
msgid "User not enabled otp as 2fa"
msgstr ""

#: src/routes/modules/user.ts:19
msgid "User Profile"
msgstr ""

#: src/views/other/Login.vue:173
#: src/views/user/userColumns.tsx:7
#: src/views/user/UserProfile.vue:127
#: src/views/user/UserProfile.vue:131
msgid "Username"
msgstr ""

#: src/views/install/components/InstallForm.vue:85
msgid "Username (*)"
msgstr ""

#: src/views/install/components/InstallForm.vue:35
msgid "Username length cannot exceed 255 characters"
msgstr ""

#: src/components/CertInfo/CertInfo.vue:24
#: src/views/certificate/ACMEUser.vue:120
#: src/views/certificate/CertificateList/certColumns.tsx:76
msgid "Valid"
msgstr ""

#: src/views/dashboard/components/PerformanceTablesCard.vue:22
msgid "Value"
msgstr ""

#: src/components/SystemRestore/SystemRestoreContent.vue:216
#: src/components/SystemRestore/SystemRestoreContent.vue:293
msgid "Verify Backup File Integrity"
msgstr ""

#: src/views/install/components/InstallView.vue:61
msgid "Verify system requirements"
msgstr ""

#: src/views/environments/list/envColumns.tsx:30
msgid "Version"
msgstr ""

#: src/language/curd.ts:7
#: src/views/nginx_log/NginxLogList.vue:83
#: src/views/site/site_edit/components/ConfigTemplate/ConfigTemplate.vue:83
msgid "View"
msgstr ""

#: src/components/Notification/Notification.vue:179
msgid "View all notifications"
msgstr ""

#: src/views/preference/components/AuthSettings/RecoveryCodes.vue:134
msgid "View Recovery Codes"
msgstr ""

#: src/views/preference/components/AuthSettings/RecoveryCodes.vue:70
msgid "Viewed"
msgstr ""

#: src/composables/usePerformanceMetrics.ts:114
#: src/views/dashboard/components/PerformanceTablesCard.vue:74
msgid "Waiting processes"
msgstr ""

#: src/constants/index.ts:23
#: src/views/backup/components/BackupCreator.vue:138
#: src/views/config/InspectConfig.vue:38
#: src/views/notification/notificationColumns.tsx:21
#: src/views/preference/components/AuthSettings/AddPasskey.vue:82
msgid "Warning"
msgstr ""

#: src/components/SystemRestore/SystemRestoreContent.vue:178
#: src/components/SystemRestore/SystemRestoreContent.vue:255
msgid "Warning: Restore operation will overwrite current configurations. Make sure you have a valid backup file and security token, and carefully select what to restore."
msgstr ""

#: src/views/certificate/DNSCredential.vue:55
msgid "We will add one or more TXT records to the DNS records of your domain for ownership verification."
msgstr ""

#: src/views/site/site_edit/components/Cert/ObtainCert.vue:140
msgid "We will remove the HTTPChallenge configuration from this file and reload the Nginx. Are you sure you want to continue?"
msgstr ""

#: src/views/preference/tabs/AuthSettings.vue:65
msgid "Webauthn"
msgstr ""

#: src/constants/errors/user.ts:7
msgid "WebAuthn settings are not configured"
msgstr ""

#: src/views/certificate/components/RemoveCert.vue:54
msgid "WebSocket connection error"
msgstr ""

#: src/views/backup/AutoBackup/components/CronEditor.vue:29
msgid "Wednesday"
msgstr ""

#: src/views/backup/AutoBackup/components/CronEditor.vue:20
msgid "Weekly"
msgstr ""

#: src/views/backup/AutoBackup/AutoBackup.vue:134
msgid "Weekly on %{day} at %{time}"
msgstr ""

#: src/views/certificate/ACMEUser.vue:78
msgid "When Enabled, Nginx UI will automatically re-register users upon startup. Generally, do not enable this unless you are in a dev environment and using Pebble as CA."
msgstr ""

#: src/views/site/site_edit/components/RightPanel/Basic.vue:61
#: src/views/stream/components/RightPanel/Basic.vue:56
msgid "When you enable/disable, delete, or save this site, the nodes set in the Node Group and the nodes selected below will be synchronized."
msgstr ""

#: src/views/preference/components/AuthSettings/RecoveryCodes.vue:140
msgid "When you generate new recovery codes, you must download or print the new codes."
msgstr ""

#: src/views/dashboard/components/ParamsOpt/ProxyCacheConfig.vue:160
msgid "Whether to use a temporary path when writing temporary files"
msgstr ""

#: src/views/dashboard/components/ParamsOpt/PerformanceConfig.vue:48
msgid "Worker Connections"
msgstr ""

#: src/composables/usePerformanceMetrics.ts:55
#: src/views/dashboard/components/ConnectionMetricsCard.vue:48
#: src/views/dashboard/components/ParamsOpt/PerformanceConfig.vue:25
#: src/views/dashboard/components/ProcessDistributionCard.vue:12
msgid "Worker Processes"
msgstr ""

#: src/views/dashboard/components/PerformanceStatisticsCard.vue:103
msgid "Workers"
msgstr ""

#: src/layouts/HeaderLayout.vue:62
#: src/routes/index.ts:57
#: src/views/workspace/WorkSpace.vue:52
msgid "Workspace"
msgstr ""

#: src/views/dashboard/ServerAnalytic.vue:37
#: src/views/dashboard/ServerAnalytic.vue:373
msgid "Writes"
msgstr ""

#: src/language/constants.ts:17
msgid "Writing certificate private key to disk"
msgstr ""

#: src/language/constants.ts:16
msgid "Writing certificate to disk"
msgstr ""

#: src/components/EnvGroupTabs/EnvGroupTabs.vue:130
#: src/components/EnvGroupTabs/EnvGroupTabs.vue:142
#: src/components/NgxConfigEditor/directive/DirectiveEditorItem.vue:98
#: src/components/NgxConfigEditor/LocationEditor.vue:88
#: src/views/preference/tabs/AuthSettings.vue:131
#: src/views/preference/tabs/CertSettings.vue:72
msgid "Yes"
msgstr ""

#: src/views/terminal/Terminal.vue:132
msgid "You are accessing this terminal over an insecure HTTP connection on a non-localhost domain. This may expose sensitive information."
msgstr ""

#: src/views/system/Upgrade.vue:224
msgid "You are using the latest version"
msgstr ""

#: src/views/system/Upgrade.vue:180
msgid "You can check Nginx UI upgrade at this page."
msgstr ""

#: src/components/SystemRestore/SystemRestoreContent.vue:339
msgid "You can close this dialog in %{countdown} seconds"
msgstr ""

#: src/components/SystemRestore/SystemRestoreContent.vue:342
msgid "You can close this dialog now"
msgstr ""

#: src/views/preference/components/AuthSettings/AddPasskey.vue:87
msgid "You have not configured the settings of Webauthn, so you cannot add a passkey."
msgstr ""

#: src/views/preference/components/AuthSettings/RecoveryCodes.vue:81
msgid "You have not enabled 2FA yet. Please enable 2FA to generate recovery codes."
msgstr ""

#: src/views/preference/components/AuthSettings/RecoveryCodes.vue:94
msgid "You have not generated recovery codes yet."
msgstr ""

#: src/views/preference/components/AuthSettings/RecoveryCodes.vue:91
msgid "Your current recovery code might be outdated and insecure. Please generate new recovery codes at your earliest convenience to ensure security."
msgstr ""

#: src/views/preference/components/AuthSettings/RecoveryCodes.vue:142
#: src/views/preference/components/AuthSettings/RecoveryCodes.vue:155
msgid "Your old codes won't work anymore."
msgstr ""

#: src/views/preference/components/AuthSettings/Passkey.vue:75
msgid "Your passkeys"
msgstr ""
