{ "appName": "Nexus Terminal", "projectName": "Nexus Terminal", "slogan":"Stir the stars, command the terminal.", "nav": { "dashboard": "Dashboard", "terminal": "Terminal", "proxies": "Proxies", "login": "Login", "logout": "Logout", "notifications": "Notifications", "auditLogs": "Audit Logs", "settings": "Settings", "customizeStyle": "Customize Style" }, "styleCustomizer": { "title": "Appearance Customizer", "uiStyles": "UI Styles", "terminalStyles": "Terminal Styles", "backgroundSettings": "Background", "uiDescription": "Adjust colors, fonts, etc. for the application interface.", "resetUiTheme": "Reset UI Theme", "saveUiTheme": "Save UI Theme", "terminalFontFamily": "Terminal Font", "terminalFontPlaceholder": "e.g., \"Fira Code\", Consolas, monospace", "terminalFontDescription": "Enter font names, separated by commas. Use quotes for names with spaces.", "terminalThemeSelection": "Terminal Theme", "activeTheme": "Active Theme", "addNewTheme": "New Theme", "importTheme": "Import Theme", "editThemeTitle": "Edit Terminal Theme", "newThemeTitle": "New Terminal Theme", "newThemeDefaultName": "New Theme", "themeName": "Theme Name", "errorThemeNameRequired": "Theme name cannot be empty.", "themeUpdatedSuccess": "Theme updated successfully.", "themeCreatedSuccess": "Theme created successfully.", "themeSaveFailed": "Failed to save theme.", "themeDeletedSuccess": "Theme deleted successfully.", "themeDeleteFailed": "Failed to delete theme: {message}", "importSuccess": "Theme imported successfully.", "importFailed": "Theme import failed.", "exportFailed": "Failed to export theme: {message}", "pageBackground": "Page Background", "terminalBackground": "Terminal Background", "noBackground": "No background", "uploadPageBg": "Upload Page Bg", "removePageBg": "Remove Page Bg", "uploadTerminalBg": "Upload Terminal Bg", "removeTerminalBg": "Remove Terminal Bg", "uploadFailed": "Upload failed: {message}", "pageBgUploadSuccess": "Page background uploaded successfully.", "terminalBgUploadSuccess": "Terminal background uploaded successfully.", "pageBgRemoved": "Page background removed.", "terminalBgRemoved": "Terminal background removed.", "removeBgFailed": "Failed to remove background: {message}", "uiThemeSaveFailed": "Failed to save UI theme: {message}", "uiThemeReset": "UI theme reset to default.", "uiThemeResetFailed": "Failed to reset UI theme: {message}", "terminalFontSaved": "Terminal font saved.", "terminalFontSaveFailed": "Failed to save terminal font: {message}", "setActiveThemeFailed": "Failed to set active terminal theme: {message}", "terminalFontSize": "Terminal Font Size", "errorInvalidFontSize": "Invalid font size. Please enter a positive number.", "terminalFontSizeSaved": "Terminal font size saved.", "terminalFontSizeSaveFailed": "Failed to save terminal font size: {message}", "otherSettings": "Other Settings", "editorFontSize": "Editor Font Size", "editorFontSizeSaved": "Editor font size saved.", "editorFontSizeSaveFailed": "Failed to save editor font size: {message}", "errorInvalidEditorFontSize": "Invalid font size. Please enter a positive number.", "uiThemeJsonEditorTitle": "UI Theme JSON Editor", "uiThemeJsonEditorDesc": "Directly edit the UI theme configuration using JSON. Changes here will reflect in the color pickers above after blurring the textarea.", "errorInvalidJsonObject": "Invalid input. Please provide a valid JSON object.", "errorInvalidJsonConfig": "Invalid JSON configuration", "editAsCopy": "Edit as Copy", "cannotDeletePreset": "Cannot delete preset theme", "applyThemeTooltip": "Apply this theme", "terminalThemeJsonEditorTitle": "Terminal Theme JSON Editor", "terminalThemeJsonEditorDesc": "Directly edit the terminal theme configuration using JSON. Changes here will reflect in the color pickers below after blurring the textarea.", "terminalThemeColorEditorTitle": "Terminal Theme Color Editor", "errorFixJsonBeforeSave": "Please fix the JSON format errors before saving.", "applyButton": "Apply", "searchThemePlaceholder": "Search theme name...", "exportActiveThemeTooltip": "Export the currently active theme as a JSON file", "exportActiveTheme": "Export Active Theme", "themeModeLabel": "Theme Mode:", "defaultMode": "Default Mode", "darkMode": "Dark Mode", "darkModeApplied": "Dark mode applied", "darkModeApplyFailed": "Failed to apply dark mode: {message}" }, "login": { "title": "User Login", "username": "Username", "password": "Password", "loginButton": "Login", "loggingIn": "Logging in...", "twoFactorPrompt": "Enter your two-factor authentication code:", "verifyButton": "Verify", "rememberMe": "Remember Me (7 days)" }, "connections": { "addConnection": "Add New Connection", "noConnections": "No connections yet. Click 'Add New Connection' to create one!", "table": { "name": "Name", "host": "Host", "port": "Port", "user": "User", "authMethod": "Auth Method", "tags": "Tags", "lastConnected": "Last Connected", "actions": "Actions" }, "actions": { "connect": "Connect", "edit": "Edit", "delete": "Delete", "test": "Test", "testing": "Testing..." }, "form": { "title": "Add New Connection", "name": "Name:", "host": "Host/IP:", "port": "Port:", "username": "Username:", "authMethod": "Authentication Method:", "authMethodPassword": "Password", "authMethodKey": "SSH Key", "password": "Password:", "privateKey": "Private Key:", "passphrase": "Passphrase:", "optional": "Optional", "confirm": "Confirm Add", "adding": "Adding...", "cancel": "Cancel", "errorRequiredFields": "Please fill in all required fields.", "errorPasswordRequired": "Password is required for password authentication.", "errorPrivateKeyRequired": "Private key is required for key authentication.", "errorPasswordRequiredOnSwitch": "Password is required when switching to password authentication.", "errorPrivateKeyRequiredOnSwitch": "Private key is required when switching to key authentication.", "errorPort": "Port must be between 1 and 65535.", "errorAdd": "Failed to add connection: {error}", "titleEdit": "Edit Connection", "confirmEdit": "Confirm Edit", "saving": "Saving...", "errorUpdate": "Failed to update connection: {error}", "keyUpdateNote": "Leave private key and passphrase blank to keep the existing key.", "proxy": "Proxy:", "noProxy": "No Proxy", "tags": "Tags:", "sectionBasic": "Basic Information", "sectionAuth": "Authentication", "sectionAdvanced": "Advanced Options", "testConnection": "Test Connection", "testing": "Testing..." }, "test": { "success": "Connection test successful!", "failed": "Connection test failed: {error}", "latencyTooltip": "This measures the time to establish a new SSH connection (TCP, Proxy, SSH Handshake, Auth). It's typically higher than interaction latency on an already established connection.", "errorMissingFields": "Please fill in Host, Port, Username, and select an Auth Method.", "errorUnknown": "An unknown error occurred during testing.", "errorNetwork": "Network error or server unreachable.", "testingInProgress": "Testing...", "errorPrefix": "Error:" }, "prompts": { "confirmDelete": "Are you sure you want to delete the connection \"{name}\"? This cannot be undone." }, "errors": { "deleteFailed": "Failed to delete connection: {error}" }, "status": { "never": "Never" }, "untaggedGroup": "Untagged", "noUntaggedConnections": "No untagged connections found." }, "proxies": { "title": "Proxy Management", "addProxy": "Add New Proxy", "loading": "Loading proxies...", "error": "Failed to load proxies: {error}", "noProxies": "No proxies yet. Click 'Add New Proxy' to create one!", "actions": { "edit": "Edit", "delete": "Delete" }, "form": { "title": "Add New Proxy", "titleEdit": "Edit Proxy", "name": "Name:", "type": "Type:", "host": "Host/IP:", "port": "Port:", "username": "Username:", "password": "Password:", "optional": "Optional", "confirm": "Confirm Add", "confirmEdit": "Confirm Edit", "adding": "Adding...", "saving": "Saving...", "cancel": "Cancel", "errorRequiredFields": "Please fill in all required fields.", "errorPort": "Port must be between 1 and 65535.", "errorAdd": "Failed to add proxy: {error}", "errorUpdate": "Failed to update proxy: {error}", "passwordUpdateNote": "Leave password blank to keep the existing password." }, "prompts": { "confirmDelete": "Are you sure you want to delete the proxy \"{name}\"? This cannot be undone." }, "errors": { "deleteFailed": "Failed to delete proxy: {error}" } }, "workspace": { "terminal": { "reconnectingMsg": "Attempting to reconnect..." } }, "fileManager": { "currentPath": "Current Path", "loading": "Loading directory...", "emptyDirectory": "Directory is empty", "uploadTasks": "Upload Tasks", "actions": { "refresh": "Refresh", "parentDirectory": "Parent Directory", "uploadFile": "Upload File", "upload": "Upload", "newFolder": "New Folder", "rename": "Rename", "changePermissions": "Change Permissions", "newFile": "New File", "delete": "Delete", "deleteMultiple": "Delete {count} items", "download": "Download", "cancel": "Cancel", "save": "Save", "closeTab": "Close Tab", "closeEditor": "Close Editor" }, "headers": { "type": "Type", "name": "Name", "size": "Size", "permissions": "Permissions", "modified": "Modified" }, "uploadStatus": { "cancelled": "Cancelled" }, "errors": { "generic": "Error", "missingConnectionId": "Cannot get current connection ID", "createFolderFailed": "Failed to create folder", "deleteFailed": "Failed to delete", "renameFailed": "Failed to rename", "chmodFailed": "Failed to change permissions", "invalidPermissionsFormat": "Invalid permissions format. Please enter 3 or 4 octal digits (e.g., 755 or 0755).", "readFileError": "Error reading file", "readFileFailed": "Failed to read file", "fileDecodeError": "File decoding failed (likely not UTF-8)", "saveFailed": "Failed to save file", "saveTimeout": "Save timed out", "fileExists": "File \"{name}\" already exists.", "loadDirectoryFailed": "Failed to load directory" }, "prompts": { "enterFolderName": "Enter the name for the new folder:", "confirmOverwrite": "File \"{name}\" already exists. Overwrite?", "confirmDeleteMultiple": "Are you sure you want to delete the selected {count} items? This cannot be undone.", "confirmDeleteFolder": "Are you sure you want to delete the directory \"{name}\" and all its contents? This cannot be undone.", "confirmDeleteFile": "Are you sure you want to delete the file \"{name}\"? This cannot be undone.", "enterNewName": "Enter the new name for \"{oldName}\":", "enterNewPermissions": "Enter new permissions for \"{name}\" (octal, e.g., 755):", "enterFileName": "Enter the name for the new file:" }, "editingFile": "Editing", "loadingFile": "Loading file...", "saving": "Saving", "saveSuccess": "Save successful", "saveError": "Save error", "editPathTooltip": "Click path to edit", "noOpenFile": "No file open", "selectFileToEdit": "Select a file from the file manager to start editing.", "searchPlaceholder": "Search files..." }, "statusMonitor": { "title": "Server Status", "errorPrefix": "Error:", "loading": "Waiting for data...", "cpuModelLabel": "CPU Model:", "osLabel": "OS:", "cpuLabel": "CPU:", "memoryLabel": "Memory:", "swapLabel": "Swap:", "diskLabel": "Disk:", "networkLabel": "Network", "notAvailable": "N/A", "bytesPerSecond": "B/s", "kiloBytesPerSecond": "KB/s", "megaBytesPerSecond": "MB/s", "gigaBytesPerSecond": "GB/s", "megaBytes": "MB", "gigaBytes": "GB", "swapNotAvailable": "Swap Unavailable" }, "tags": { "title": "Tag Management", "addTag": "Add New Tag", "loading": "Loading tags...", "error": "Failed to load tags: {error}", "noTags": "No tags yet. Click 'Add New Tag' to create one!", "prompts": { "confirmDelete": "Are you sure you want to delete the tag \"{name}\"? This cannot be undone." }, "inputPlaceholder": "Type to search or create tags...", "removeSelection": "Remove this tag selection", "deleteTagGlobally": "Delete this tag globally" }, "settings": { "title": "Settings", "category": { "security": "Security Settings", "appearance": "Appearance Settings", "system": "System Settings" }, "changePassword": { "title": "Change Password", "currentPassword": "Current Password:", "newPassword": "New Password:", "confirmPassword": "Confirm New Password:", "submit": "Change Password", "success": "Password changed successfully!", "error": { "passwordsDoNotMatch": "New password and confirmation do not match.", "generic": "Failed to change password. Please try again later." } }, "twoFactor": { "title": "Two-Factor Authentication (TOTP)", "status": { "enabled": "Two-factor authentication is enabled.", "disabled": "Two-factor authentication is currently disabled." }, "enable": { "button": "Enable Two-Factor Authentication" }, "setup": { "scanQrCode": "Scan the QR code below with your authenticator app:", "orEnterSecret": "Or manually enter the secret key:", "enterCode": "Enter the 6-digit code from your authenticator app:", "verifyButton": "Verify & Activate" }, "disable": { "button": "Disable Two-Factor Authentication", "passwordPrompt": "Enter your current password to confirm disabling:" }, "success": { "activated": "Two-factor authentication activated successfully!", "disabled": "Two-factor authentication disabled successfully." }, "error": { "setupFailed": "Failed to get two-factor setup information.", "codeRequired": "Please enter the verification code.", "verificationFailed": "Invalid or expired verification code.", "passwordRequiredForDisable": "Current password is required to disable.", "disableFailed": "Failed to disable two-factor authentication." } }, "ipWhitelist": { "title": "IP Whitelist", "description": "Configure allowed IP addresses or ranges to access this application. Leave empty to allow all IPs.", "label": "Allowed IP Addresses/Ranges (one per line or comma-separated):", "hint": "Supports IPv4, IPv6, and CIDR (e.g., 192.168.1.100, 10.0.0.0/8, 2001:db8::/32).", "saveButton": "Save Whitelist", "success": { "saved": "IP whitelist saved successfully." }, "error": { "saveFailed": "Failed to save IP whitelist." } }, "popupEditor": { "title": "Popup File Editor", "enableLabel": "Show popup editor when opening files", "saveButton": "Save Setting", "success": { "saved": "Popup editor setting saved successfully." }, "error": { "saveFailed": "Failed to save popup editor setting." } }, "shareEditorTabs": { "title": "Editor Tabs", "enableLabel": "Share editor tabs across all sessions", "description": "If enabled, all SSH sessions will share the same set of open file editor tabs. If disabled, each session will have its own independent set of tabs.", "saveButton": "Save Setting", "success": { "saved": "Editor tab sharing setting saved successfully." }, "error": { "saveFailed": "Failed to save editor tab sharing setting." } }, "language": { "title": "Language Settings", "selectLabel": "Interface Language:", "saveButton": "Save Language", "success": { "saved": "Language settings saved successfully." }, "error": { "saveFailed": "Failed to save language settings." } }, "passkey": { "title": "Passkey Settings", "description": "Use Passkeys (biometrics or security keys) for passwordless authentication to enhance security and convenience.", "nameLabel": "Passkey Name", "namePlaceholder": "e.g., My Laptop", "registerButton": "Register New Passkey", "error": { "nameRequired": "Please enter a Passkey name.", "cancelled": "Passkey registration was cancelled by the user.", "genericRegistration": "Could not register Passkey: {message}", "verificationFailed": "Registration failed: {message}" }, "success": { "registered": "Passkey registered successfully!" } }, "notifications": { "title": "Notification Settings", "addChannel": "Add Notification Channel", "noChannels": "No notification channels configured yet.", "triggers": "Triggers", "noEventsEnabled": "No events enabled", "confirmDelete": "Are you sure you want to delete the notification channel \"{name}\"? This cannot be undone.", "types": { "webhook": "Webhook", "email": "Email", "telegram": "Telegram" }, "form": { "addTitle": "Add Notification Channel", "editTitle": "Edit Notification Channel", "name": "Channel Name:", "channelType": "Channel Type:", "channelTypeEditNote": "Channel type cannot be changed after creation.", "webhookMethod": "HTTP Method:", "webhookHeaders": "Custom Headers", "webhookBodyTemplate": "Body Template (Optional)", "webhookBodyPlaceholder": "Default: JSON payload. Use {{{{event}}}}, {{{{timestamp}}}}, {{{{details}}}}.", "emailTo": "Recipient Email(s):", "emailToHelp": "Comma-separated list.", "emailSubjectTemplate": "Subject Template (Optional)", "emailSubjectPlaceholder": "Default: Notification: {{event}}", "smtpHost": "SMTP Host:", "smtpPort": "SMTP Port:", "smtpSecure": "Use TLS/SSL", "smtpUser": "SMTP Username:", "smtpPass": "SMTP Password:", "smtpFrom": "Sender Email:", "smtpFromHelp": "Email address used in the 'From' field.", "testButton": "Test Notification", "testSuccess": "Test notification sent successfully!", "testFailed": "Test notification failed", "fillRequiredToTest": "Fill required fields to enable testing.", "telegramToken": "Bot Token:", "telegramTokenHelp": "Store securely. Consider environment variables.", "telegramChatId": "Chat ID:", "telegramMessageTemplate": "Message Template (Optional)", "telegramMessagePlaceholder": "Default: Markdown format. Use {{{{event}}}}, {{{{timestamp}}}}, {{{{details}}}}.", "enabledEvents": "Enabled Events:", "templateHelp": "Placeholders: {{{{event}}}}, {{{{timestamp}}}}, {{{{details}}}} (JSON string)", "invalidJson": "Invalid JSON" }, "events": { "LOGIN_SUCCESS": "Login Success", "LOGIN_FAILURE": "Login Failure", "LOGOUT": "Logout", "PASSWORD_CHANGED": "Password Changed", "2FA_ENABLED": "2FA Enabled", "2FA_DISABLED": "2FA Disabled", "PASSKEY_REGISTERED": "Passkey Registered", "PASSKEY_DELETED": "Passkey Deleted", "CONNECTION_CREATED": "Connection Created", "CONNECTION_UPDATED": "Connection Updated", "CONNECTION_DELETED": "Connection Deleted", "CONNECTION_TESTED": "Connection Tested", "CONNECTIONS_IMPORTED": "Connections Imported", "CONNECTIONS_EXPORTED": "Connections Exported", "PROXY_CREATED": "Proxy Created", "PROXY_UPDATED": "Proxy Updated", "PROXY_DELETED": "Proxy Deleted", "TAG_CREATED": "Tag Created", "TAG_UPDATED": "Tag Updated", "TAG_DELETED": "Tag Deleted", "SETTINGS_UPDATED": "Settings Updated", "IP_WHITELIST_UPDATED": "IP Whitelist Updated", "NOTIFICATION_SETTING_CREATED": "Notification Setting Created", "NOTIFICATION_SETTING_UPDATED": "Notification Setting Updated", "NOTIFICATION_SETTING_DELETED": "Notification Setting Deleted", "SFTP_ACTION": "SFTP Action", "SSH_CONNECT_SUCCESS": "SSH Connection Successful", "SSH_CONNECT_FAILURE": "SSH Connection Failed", "SSH_SHELL_FAILURE": "SSH Shell Open Failed", "SERVER_STARTED": "Server Started", "SERVER_ERROR": "Server Error", "DATABASE_MIGRATION": "Database Migration", "ADMIN_SETUP_COMPLETE": "Initial Admin Setup Completed" } }, "appearance": { "title": "Appearance Settings", "description": "Customize the visual theme and background of the application.", "customizeButton": "Customize Appearance" }, "autoCopyOnSelect": { "title": "Terminal Auto Copy", "enableLabel": "Copy text automatically on selection release", "saveButton": "Save", "success": { "saved": "Auto copy setting saved successfully." }, "error": { "saveFailed": "Failed to save auto copy setting." } }, "docker": { "title": "Docker Manager Settings", "refreshIntervalLabel": "Status Refresh Interval (seconds):", "refreshIntervalHint": "How often to fetch Docker container status and stats (minimum 1).", "defaultExpandLabel": "Expand container details by default", "saveButton": "Save Docker Settings", "success": { "saved": "Docker settings saved successfully." }, "error": { "saveFailed": "Failed to save Docker settings.", "invalidInterval": "Refresh interval must be a positive integer." } }, "statusMonitor": { "title": "Status Monitor Settings", "refreshIntervalLabel": "Status Refresh Interval (seconds):", "refreshIntervalHint": "How often to fetch server CPU, memory, disk, etc. status (minimum 1).", "saveButton": "Save Status Monitor Settings", "success": { "saved": "Status monitor settings saved successfully." }, "error": { "saveFailed": "Failed to save status monitor settings.", "invalidInterval": "Refresh interval must be a positive integer." } }, "workspace": { "title": "Workspace & Terminal", "sidebarPersistentTitle": "Sidebar Behavior", "sidebarPersistentLabel": "Pin sidebar when opened (prevent auto-collapse)", "sidebarPersistentDescription": "When enabled, clicking outside the sidebar will not automatically collapse it.", "success": { "sidebarPersistentSaved": "Sidebar setting saved." }, "error": { "sidebarPersistentSaveFailed": "Failed to save sidebar setting." } }, "ipBlacklist": { "title": "IP Blacklist Management", "description": "Configure login attempt limits and automatic ban duration. Local addresses (127.0.0.1, ::1) will not be banned.", "maxAttemptsLabel": "Max Failed Attempts:", "banDurationLabel": "Ban Duration (seconds):", "saveConfigButton": "Save Configuration", "currentBannedTitle": "Currently Banned IP Addresses", "loadingList": "Loading blacklist...", "noBannedIps": "No IP addresses are currently in the blacklist.", "confirmRemoveIp": "Are you sure you want to remove the IP address \"{ip}\" from the blacklist?", "table": { "ipAddress": "IP Address", "attempts": "Attempts", "lastAttempt": "Last Attempt", "bannedUntil": "Banned Until", "actions": "Actions", "removeButton": "Remove", "deleting": "Deleting..." }, "success": { "configUpdated": "Blacklist configuration updated successfully." }, "error": { "fetchFailed": "Failed to fetch blacklist", "deleteFailed": "Failed to delete", "invalidMaxAttempts": "Max failed attempts must be a positive integer.", "invalidBanDuration": "Ban duration must be a positive integer (seconds).", "updateConfigFailed": "Failed to update blacklist configuration" } } }, "common": { "loading": "Loading...", "cancel": "Cancel", "save": "Save", "saving": "Saving...", "testing": "Testing...", "edit": "Edit", "delete": "Delete", "enabled": "Enabled", "disabled": "Disabled", "settings": "Settings", "errorOccurred": "An error occurred.", "close": "Close", "remove": "Remove", "expand": "Expand", "collapse": "Collapse", "search": "Search", "all": "All", "filter": "Filter" }, "layoutConfigurator": { "title": "Layout Configurator", "availablePanes": "Available Panes", "layoutPreview": "Layout Preview", "resetDefault": "Reset to Default", "noAvailablePanes": "All panes are already in the layout", "emptyLayout": "Layout is empty. Drag panes from the left or add a container.", "leftSidebar": "Left Sidebar Panes", "rightSidebar": "Right Sidebar Panes", "dropHere": "Drop panes from available list here", "saveError": "Error saving layout. Please try again later.", "confirmClearLayout": "Are you sure you want to clear the entire layout? All panes will return to the available list." }, "layoutNodeEditor": { "containerLabel": "Container ({direction})", "horizontal": "Horizontal", "vertical": "Vertical", "toggleDirection": "Toggle Direction", "addHorizontalContainer": "Add Horizontal Container", "addVerticalContainer": "Add Vertical Container", "removeNode": "Remove this node", "dragHandle": "Drag to reorder or move", "dropHere": "Drop panes or containers here" }, "auditLog": { "title": "Audit Logs", "searchPlaceholder": "Search details...", "noLogs": "No audit logs found.", "table": { "timestamp": "Timestamp", "actionType": "Action Type", "details": "Details" }, "paginationInfo": "Page {currentPage} of {totalPages} ({totalLogs} total logs)", "actions": { "LOGIN_SUCCESS": "Login Success", "LOGIN_FAILURE": "Login Failure", "LOGOUT": "Logout", "PASSWORD_CHANGED": "Password Changed", "2FA_ENABLED": "2FA Enabled", "2FA_DISABLED": "2FA Disabled", "PASSKEY_REGISTERED": "Passkey Registered", "PASSKEY_DELETED": "Passkey Deleted", "CONNECTION_CREATED": "Connection Created", "CONNECTION_UPDATED": "Connection Updated", "CONNECTION_DELETED": "Connection Deleted", "CONNECTION_TESTED": "Connection Tested", "CONNECTIONS_IMPORTED": "Connections Imported", "CONNECTIONS_EXPORTED": "Connections Exported", "PROXY_CREATED": "Proxy Created", "PROXY_UPDATED": "Proxy Updated", "PROXY_DELETED": "Proxy Deleted", "TAG_CREATED": "Tag Created", "TAG_UPDATED": "Tag Updated", "TAG_DELETED": "Tag Deleted", "SETTINGS_UPDATED": "Settings Updated", "IP_WHITELIST_UPDATED": "IP Whitelist Updated", "NOTIFICATION_SETTING_CREATED": "Notification Setting Created", "NOTIFICATION_SETTING_UPDATED": "Notification Setting Updated", "NOTIFICATION_SETTING_DELETED": "Notification Setting Deleted", "API_KEY_CREATED": "API Key Created", "API_KEY_DELETED": "API Key Deleted", "SFTP_ACTION": "SFTP Action", "SSH_CONNECT_SUCCESS": "SSH Connection Successful", "SSH_CONNECT_FAILURE": "SSH Connection Failed", "SSH_SHELL_FAILURE": "SSH Shell Open Failed", "SERVER_STARTED": "Server Started", "SERVER_ERROR": "Server Error", "DATABASE_MIGRATION": "Database Migration", "ADMIN_SETUP_COMPLETE": "Initial Admin Setup Completed", "REMOTE_DESKTOP_CONNECTING": "Remote Desktop Connecting", "REMOTE_DESKTOP_CONNECTED": "Remote Desktop Connected", "REMOTE_DESKTOP_DISCONNECTED": "Remote Desktop Disconnected" } }, "workspaceConnectionList": { "untagged": "Untagged", "searchPlaceholder": "Search name or host...", "noResults": "No connections found matching \"{searchTerm}\"." }, "commandInputBar": { "placeholder": "Enter command and press Enter to send...", "searchPlaceholder": "Search in terminal...", "openSearch": "Open terminal search", "closeSearch": "Close terminal search", "findPrevious": "Find previous", "findNext": "Find next", "configureFocusSwitch": "Configure Focus Switcher" }, "layout": { "loading": "Loading...", "configure": "Configure Layout", "pane": { "connections": "Connections", "terminal": "Terminal", "commandBar": "Command Bar", "fileManager": "File Manager", "editor": "Editor", "statusMonitor": "Status Monitor", "commandHistory": "Command History", "quickCommands": "Quick Commands", "dockerManager": "Docker Manager" }, "noActiveSession": { "title": "No Active Session", "message": "Please connect to a session first", "fileManagerSidebar": "File Manager requires an active session", "statusMonitorSidebar": "Status Monitor requires an active session" } }, "header": { "hide": "Hide" }, "commandHistory": { "searchPlaceholder": "Search history...", "clear": "Clear", "copy": "Copy", "delete": "Delete", "loading": "Loading...", "empty": "No history records", "confirmClear": "Are you sure you want to clear all history?", "copied": "Copied to clipboard", "copyFailed": "Copy failed" }, "quickCommands": { "searchPlaceholder": "Search name or command...", "add": "Add", "sortByName": "Name", "sortByUsage": "Usage Frequency", "usageCount": "Usage Count", "empty": "No quick commands. Click '+' to create one!", "confirmDelete": "Are you sure you want to delete the quick command \"{name}\"?", "form": { "titleAdd": "Add Quick Command", "titleEdit": "Edit Quick Command", "name": "Name:", "namePlaceholder": "Optional, for quick identification", "command": "Command:", "commandPlaceholder": "e.g., ls -alh /home/user", "errorCommandRequired": "Command cannot be empty", "add": "Add" } }, "setup": { "title": "Initial Setup", "description": "Create the first administrator account.", "username": "Username", "usernamePlaceholder": "Enter username", "password": "Password", "passwordPlaceholder": "Enter password", "confirmPassword": "Confirm Password", "confirmPasswordPlaceholder": "Confirm your password", "submitButton": "Create Account", "settingUp": "Creating account...", "success": "Account created successfully! Redirecting to login...", "error": { "passwordsDoNotMatch": "Passwords do not match.", "fieldsRequired": "Username and password are required.", "generic": "An error occurred during setup. Please check the server logs." } }, "focusSwitcher": { "configTitle": "Configure Focus Switcher", "availableInputs": "Available Inputs", "configuredSequence": "Configured Sequence (Drag to Sort)", "dragHere": "Drag inputs from the left here", "allInputsConfigured": "All available inputs are configured", "input": { "commandHistorySearch": "Command History Search", "quickCommandsSearch": "Quick Commands Search", "fileManagerSearch": "File Manager Search", "commandInput": "Command Input", "terminalSearch": "Terminal Search", "connectionListSearch": "Connection List Search", "fileEditorActive": "File Editor", "fileManagerPathInput": "File Manager Path Input" }, "confirmClose": "You have unsaved changes. Are you sure you want to close?", "shortcutPlaceholder": "e.g., Alt+K", "shortcutSettings": "Shortcut Settings", "noInputsAvailable": "No configurable inputs available" }, "dockerManager": { "loading": "Loading Docker Containers...", "notAvailable": "Docker Not Available on Remote Host", "installHintRemote": "Please ensure Docker is installed and running on the remote host.", "error": { "fetchFailed": "Failed to fetch remote container status", "commandFailed": "Failed to execute remote command '{command}'", "invalidResponse": "Received invalid response from server", "noActiveSession": "No active session", "connectFirst": "Please connect to a session first", "sshDisconnected": "SSH session disconnected.", "sshError": "SSH Connection Error", "sshNotConnected": "SSH session is not connected." }, "noContainers": "No running or stopped containers found on remote host.", "header": { "name": "Name", "image": "Image", "status": "Status", "ports": "Ports", "actions": "Actions" }, "action": { "restart": "Restart", "stop": "Stop", "start": "Start", "remove": "Remove" }, "waitingForSsh": "Waiting for SSH connection...", "stats": { "noData": "No stats data available.", "cpu": "CPU %", "memory": "Memory Usage / Limit", "netIO": "Network I/O", "blockIO": "Block I/O", "pids": "PIDs" } }, "dashboard": { "recentConnections": "Recent Connections", "lastConnected": "Last connected:", "noRecentConnections": "No recent connection records", "viewAllConnections": "View All Connections", "recentActivity": "Recent Activity", "noRecentActivity": "No recent activity records", "viewFullAuditLog": "View Full Audit Log" }, "terminalTabBar": { "selectServerTitle": "Select server to connect" } }