mirror of
https://github.com/mofeng-git/One-KVM.git
synced 2026-09-12 18:44:25 +08:00
update: 更新前端依赖;修改前端样式
This commit is contained in:
@@ -5,10 +5,7 @@ export default {
|
||||
cancel: 'Cancel',
|
||||
confirm: 'Confirm',
|
||||
delete: 'Delete',
|
||||
upload: 'Upload',
|
||||
download: 'Download',
|
||||
refresh: 'Refresh',
|
||||
close: 'Close',
|
||||
success: 'Success',
|
||||
error: 'Error',
|
||||
warning: 'Warning',
|
||||
@@ -24,21 +21,16 @@ export default {
|
||||
connected: 'Connected',
|
||||
disconnected: 'Disconnected',
|
||||
connecting: 'Connecting...',
|
||||
disconnecting: 'Disconnecting...',
|
||||
unknown: 'Unknown',
|
||||
back: 'Back',
|
||||
next: 'Next',
|
||||
apply: 'Apply',
|
||||
menu: 'Menu',
|
||||
optional: 'Optional',
|
||||
recommended: 'Recommended',
|
||||
notSupportedYet: ' (Not Yet Supported)',
|
||||
create: 'Create',
|
||||
creating: 'Creating...',
|
||||
deleting: 'Deleting...',
|
||||
more: 'More',
|
||||
collapse: 'Collapse',
|
||||
expand: 'Expand',
|
||||
toggleTheme: 'Toggle theme',
|
||||
toggleLanguage: 'Toggle language',
|
||||
retry: 'Retry',
|
||||
@@ -55,9 +47,6 @@ export default {
|
||||
networkErrorDesc: 'Unable to connect to server. Please check your connection.',
|
||||
},
|
||||
nav: {
|
||||
console: 'Console',
|
||||
msd: 'Virtual Media',
|
||||
settings: 'Settings',
|
||||
logout: 'Logout',
|
||||
},
|
||||
auth: {
|
||||
@@ -80,8 +69,6 @@ export default {
|
||||
passwordRequired: 'Please fill in all password fields',
|
||||
passwordMismatch: 'Passwords do not match',
|
||||
passwordTooShort: 'Password must be at least 4 characters',
|
||||
passwordChanged: 'Password changed successfully',
|
||||
userNotFound: 'User not found',
|
||||
sessionExpired: 'Session expired',
|
||||
loggedInElsewhere: 'Logged in elsewhere',
|
||||
forgotPassword: 'Forgot password',
|
||||
@@ -101,10 +88,6 @@ export default {
|
||||
power: 'Power',
|
||||
keyboard: 'Virtual Keyboard',
|
||||
keyboardTip: 'Show virtual keyboard',
|
||||
mouseAbsolute: 'Absolute Mouse',
|
||||
mouseRelative: 'Relative Mouse',
|
||||
mouseAbsoluteTip: 'Absolute positioning - direct screen coordinate mapping',
|
||||
mouseRelativeTip: 'Relative positioning - sends mouse movement deltas',
|
||||
webTerminal: 'Web Terminal',
|
||||
stats: 'Stats',
|
||||
statsTip: 'View connection statistics',
|
||||
@@ -117,8 +100,7 @@ export default {
|
||||
deviceSettings: 'Device Settings',
|
||||
videoMode: 'Mode',
|
||||
selectMode: 'Select mode...',
|
||||
h264Hint: 'H.264 mode requires WebRTC support, lower latency',
|
||||
webrtcHint: 'WebRTC mode has lower latency, requires browser support',
|
||||
videoModeHint: 'HTTP uses more bandwidth but offers broad compatibility; WebRTC has stricter network requirements but uses less bandwidth',
|
||||
videoDevice: 'Device',
|
||||
videoFormat: 'Format',
|
||||
videoResolution: 'Resolution',
|
||||
@@ -129,14 +111,9 @@ export default {
|
||||
selectFps: 'Select FPS...',
|
||||
bitratePreset: 'Bitrate',
|
||||
bitrateSpeed: 'Speed',
|
||||
bitrateSpeedDesc: '1 Mbps - Lowest latency',
|
||||
bitrateBalanced: 'Balanced',
|
||||
bitrateBalancedDesc: '4 Mbps - Recommended',
|
||||
bitrateQuality: 'Quality',
|
||||
bitrateQualityDesc: '8 Mbps - Best visual',
|
||||
browserUnsupported: 'Browser unsupported',
|
||||
encoder: 'Encoder',
|
||||
changeEncoderBackend: 'Change encoder backend...',
|
||||
backendSoftware: 'Software',
|
||||
backendAuto: 'Auto',
|
||||
recommended: 'Recommended',
|
||||
@@ -158,7 +135,6 @@ export default {
|
||||
audioConfig: 'Audio',
|
||||
playbackControl: 'Playback',
|
||||
volume: 'Volume',
|
||||
mute: 'Mute',
|
||||
audioDeviceSettings: 'Device Settings',
|
||||
audioEnabled: 'Audio',
|
||||
audioDevice: 'Device',
|
||||
@@ -207,16 +183,12 @@ export default {
|
||||
macAddress: 'MAC Address',
|
||||
invalidMac: 'Invalid MAC address format',
|
||||
recentMac: 'Recent',
|
||||
send: 'Send',
|
||||
wolSent: 'WOL packet sent',
|
||||
wolFailed: 'Failed to send WOL packet',
|
||||
},
|
||||
setup: {
|
||||
title: 'Initial Setup',
|
||||
welcome: 'Welcome to One-KVM',
|
||||
description: 'Complete the initial setup to get started',
|
||||
stepAccount: 'Account Setup',
|
||||
stepVideo: 'Video Setup',
|
||||
stepAudioVideo: 'Audio/Video Setup',
|
||||
stepHid: 'HID Setup',
|
||||
setUsername: 'Set Admin Username',
|
||||
@@ -242,9 +214,7 @@ export default {
|
||||
noAudioDevices: 'No audio devices detected',
|
||||
audioDeviceHelp: 'Select the audio capture device for capturing remote host audio. Usually on the same USB device as the video capture card.',
|
||||
hidBackend: 'HID Backend',
|
||||
selectHidBackend: 'Select HID control method',
|
||||
serialHid: 'Serial HID',
|
||||
disableHid: 'Disabled',
|
||||
serialPort: 'Serial Port',
|
||||
selectSerialPort: 'Select serial port',
|
||||
noSerialDevices: 'No serial devices detected',
|
||||
@@ -252,7 +222,6 @@ export default {
|
||||
udc: 'USB Device Controller',
|
||||
selectUdc: 'Select UDC',
|
||||
noUdcDevices: 'No UDC devices detected',
|
||||
hidDisabledHint: 'Disabling HID will prevent keyboard and mouse control of the remote host',
|
||||
complete: 'Complete Setup',
|
||||
setupFailed: 'Setup failed',
|
||||
advancedEncoder: 'Advanced: Encoder Backend',
|
||||
@@ -269,10 +238,8 @@ export default {
|
||||
extensionsDescription: 'Choose which extensions to auto-start',
|
||||
ttydTitle: 'Web Terminal (ttyd)',
|
||||
ttydDescription: 'Access device command line in browser',
|
||||
ttydWindowsUnsupportedDescription: 'ttyd Web Terminal is not supported on Windows and will not be enabled.',
|
||||
extensionsHint: 'These settings can be changed later in Settings',
|
||||
notInstalled: 'Not installed',
|
||||
notSupportedOnWindows: 'Unsupported on Windows',
|
||||
passwordStrength: 'Password Strength',
|
||||
passwordWeak: 'Weak',
|
||||
passwordMedium: 'Medium',
|
||||
@@ -280,24 +247,14 @@ export default {
|
||||
passwordVeryStrong: 'Very Strong',
|
||||
},
|
||||
console: {
|
||||
title: 'Remote Console',
|
||||
videoAlt: 'KVM Video',
|
||||
videoMode: 'Video Mode',
|
||||
mjpeg: 'MJPEG',
|
||||
webrtc: 'WebRTC',
|
||||
fullscreen: 'Fullscreen',
|
||||
exitFullscreen: 'Exit Fullscreen',
|
||||
screenshot: 'Screenshot',
|
||||
reconnect: 'Refresh Page',
|
||||
noVideo: 'No video signal',
|
||||
connecting: 'Connecting...',
|
||||
streamOffline: 'Stream offline',
|
||||
connectionFailed: 'Connection Failed',
|
||||
connectionFailedDesc: 'Unable to connect to video stream, please refresh page or check device status',
|
||||
videoRestarting: 'Video stream is restarting',
|
||||
deviceSwitching: 'Switching video device...',
|
||||
configChanging: 'Applying new configuration...',
|
||||
videoRestarted: 'Video stream updated',
|
||||
streamError: 'Stream error',
|
||||
// Four canonical video states (backend StreamStateChanged: streaming /
|
||||
// no_signal / device_lost / device_busy). `reason` provides optional
|
||||
@@ -321,7 +278,7 @@ export default {
|
||||
},
|
||||
uvc_usb_error: {
|
||||
title: 'USB capture transport error',
|
||||
detail: 'The USB capture device encountered a protocol error (EPROTO). You can try resetting the device from Settings → Environment → USB Devices.',
|
||||
detail: 'The USB capture device encountered a protocol error (EPROTO). You can try resetting it from Settings → Other → USB Device Reset.',
|
||||
},
|
||||
uvc_capture_stall: {
|
||||
title: 'UVC capture stalled',
|
||||
@@ -339,14 +296,12 @@ export default {
|
||||
audio_device_lost: 'Audio capture is unavailable; recovery in progress',
|
||||
audio_reconnecting: 'Retrying audio device connection',
|
||||
uvc_usb_error:
|
||||
'Try another USB port or cable, avoid hubs, or reconnect the device. You can also reset the device from Settings → Environment → USB Devices.',
|
||||
'Try another USB port or cable, avoid hubs, or reconnect the device. You can also reset it from Settings → Other → USB Device Reset.',
|
||||
uvc_capture_stall: '',
|
||||
},
|
||||
},
|
||||
webrtcConnected: 'WebRTC Connected',
|
||||
webrtcConnectedDesc: 'Using low-latency H.264 video stream',
|
||||
webrtcFailed: 'WebRTC Connection Failed',
|
||||
fallingBackToMjpeg: 'Falling back to MJPEG mode',
|
||||
webrtcPhaseIceServers: 'Loading ICE servers...',
|
||||
webrtcPhaseCreatePeer: 'Creating peer connection...',
|
||||
webrtcPhaseCreateChannel: 'Creating data channel...',
|
||||
@@ -359,40 +314,14 @@ export default {
|
||||
mjpegPhaseStream: 'Requesting video stream...',
|
||||
mjpegPhaseFirstFrame: 'Waiting for first frame...',
|
||||
stepProgress: 'Step {current}/{total}',
|
||||
pointerLocked: 'Pointer Locked',
|
||||
pointerLockedDesc: 'Press Escape to release the pointer',
|
||||
pointerLockFailed: 'Failed to lock pointer',
|
||||
relativeModeHint: 'Relative Mouse Mode',
|
||||
relativeModeHintDesc: 'Click on the video area to lock the pointer, press Escape to release',
|
||||
metaKeyHint: 'System Key Detected',
|
||||
metaKeyHintDesc: 'Enter fullscreen mode to capture Win/Meta keys',
|
||||
streamModeChanged: 'Video Mode Changed',
|
||||
streamModeChangedDesc: 'Server switched to {mode} mode',
|
||||
deviceLost: 'Video Device Lost',
|
||||
deviceLostDesc: '{device}: {reason}',
|
||||
deviceRecovering: 'Video Device Recovering',
|
||||
deviceRecoveringDesc: 'Attempting to recover video device (attempt {attempt})',
|
||||
deviceRecovered: 'Video Device Recovered',
|
||||
deviceRecoveredDesc: 'Video device reconnected successfully',
|
||||
pleaseWait: 'Please wait...',
|
||||
retryCount: 'Retrying (attempt {count})',
|
||||
errorDetails: 'Error details',
|
||||
},
|
||||
hid: {
|
||||
title: 'HID Control',
|
||||
keyboard: 'Keyboard',
|
||||
mouse: 'Mouse',
|
||||
reset: 'Reset HID',
|
||||
sendCtrlAltDel: 'Send Ctrl+Alt+Del',
|
||||
pasteText: 'Paste Text',
|
||||
absoluteMouse: 'Absolute',
|
||||
relativeMouse: 'Relative',
|
||||
deviceLost: 'HID Device Lost',
|
||||
deviceLostDesc: '{backend}: {reason}',
|
||||
reconnecting: 'HID Reconnecting',
|
||||
reconnectingDesc: 'Attempting to reconnect (attempt {attempt})',
|
||||
recovered: 'HID Recovered',
|
||||
recoveredDesc: '{backend} HID device reconnected successfully',
|
||||
errorHints: {
|
||||
udcNotConfigured: 'OTG is ready, waiting for the target host to connect and finish USB enumeration',
|
||||
disabled: 'HID backend is disabled',
|
||||
@@ -418,10 +347,6 @@ export default {
|
||||
audio: {
|
||||
deviceLost: 'Audio Device Lost',
|
||||
deviceLostDesc: '{device}: {reason}',
|
||||
reconnecting: 'Audio Reconnecting',
|
||||
reconnectingDesc: 'Attempting to reconnect (attempt {attempt})',
|
||||
recovered: 'Audio Recovered',
|
||||
recoveredDesc: '{device} audio device reconnected successfully',
|
||||
},
|
||||
msd: {
|
||||
title: 'Virtual Media',
|
||||
@@ -438,8 +363,6 @@ export default {
|
||||
accessMode: 'Access Mode',
|
||||
readOnly: 'Read Only',
|
||||
readWrite: 'Read/Write',
|
||||
fileList: 'File List',
|
||||
uploadFile: 'Upload File',
|
||||
createFolder: 'Create Folder',
|
||||
driveNotInitialized: 'Virtual drive not initialized',
|
||||
initializeDrive: 'Initialize Drive',
|
||||
@@ -485,11 +408,8 @@ export default {
|
||||
settings: {
|
||||
title: 'Settings',
|
||||
sidebarSubtitle: 'Manage device, network and extensions',
|
||||
basic: 'Basic',
|
||||
general: 'General',
|
||||
appearance: 'Appearance',
|
||||
account: 'Account',
|
||||
access: 'Access',
|
||||
video: 'Video',
|
||||
encoder: 'Encoder',
|
||||
hid: 'HID',
|
||||
@@ -497,38 +417,31 @@ export default {
|
||||
atx: 'ATX',
|
||||
environment: 'Environment',
|
||||
network: 'Network',
|
||||
users: 'Users',
|
||||
hardware: 'Hardware',
|
||||
system: 'System',
|
||||
other: 'Other',
|
||||
extensions: 'Extensions',
|
||||
configured: 'Configured',
|
||||
security: 'Security',
|
||||
about: 'About',
|
||||
appearanceSubtitle: 'Customize interface appearance and language',
|
||||
accountSubtitle: 'Manage credentials and session policy',
|
||||
networkSubtitle: 'Configure web server ports, listen addresses and SSL certificate',
|
||||
videoSubtitle: 'Configure capture device, video encoder and WebRTC ICE servers',
|
||||
hidSubtitle: 'Configure the HID backend, device, descriptors, and USB gadget functions',
|
||||
msdSubtitle: 'Manage Mass Storage Device image directory',
|
||||
atxSubtitle: 'Configure remote power control hardware and Wake-on-LAN',
|
||||
environmentSubtitle: 'System runtime environment and USB device maintenance',
|
||||
otherSubtitle: 'Additional system hardware controls',
|
||||
aboutSubtitle: 'Online upgrade, version info and hardware overview',
|
||||
environmentSubtitle: 'View device information and system runtime diagnostics',
|
||||
otherSubtitle: 'Additional hardware controls and USB device maintenance',
|
||||
aboutSubtitle: 'Online upgrade and version information',
|
||||
extTtydSubtitle: 'Open a host Shell terminal in the browser',
|
||||
thirdPartyAccessSubtitle: 'Configure external RustDesk, VNC, RTSP, and Redfish access',
|
||||
extRemoteAccessSubtitle: 'Remote access through NAT-traversal services',
|
||||
extFrpcSubtitle: 'NAT traversal through the FRP client',
|
||||
watchdog: {
|
||||
title: 'Hardware Watchdog',
|
||||
description: 'Automatically use an available hardware watchdog while One-KVM is running.',
|
||||
description: 'The hardware watchdog can trigger a hardware reset if the system hangs or the process exits',
|
||||
status: {
|
||||
running: 'Running',
|
||||
closed: 'Off',
|
||||
unsupported: 'Unsupported',
|
||||
error: 'Error',
|
||||
},
|
||||
safety: 'If One-KVM stops feeding the watchdog, the hardware may restart the system according to its watchdog policy.',
|
||||
loadFailed: 'Failed to load hardware watchdog status',
|
||||
toggleFailed: 'Failed to update hardware watchdog',
|
||||
enableFailed: 'Failed to enable the hardware watchdog.',
|
||||
@@ -539,7 +452,6 @@ export default {
|
||||
disableFailed: 'The hardware watchdog cannot be safely disabled and keepalive will continue.',
|
||||
abnormalReason: 'The hardware watchdog is in an abnormal state.',
|
||||
},
|
||||
aboutDesc: 'Open and Lightweight IP-KVM Solution',
|
||||
deviceInfo: 'Device Info',
|
||||
deviceInfoDesc: 'Host system information',
|
||||
hostname: 'Hostname',
|
||||
@@ -557,55 +469,31 @@ export default {
|
||||
newPassword: 'New Password',
|
||||
usernameDesc: 'Change the console login username',
|
||||
passwordDesc: 'Change the console login password',
|
||||
version: 'Version',
|
||||
detectDevices: 'Detect Devices',
|
||||
detecting: 'Detecting...',
|
||||
networkSettings: 'Network Settings',
|
||||
msdSettings: 'MSD Settings',
|
||||
httpSettings: 'HTTP Settings',
|
||||
httpPort: 'HTTP Port',
|
||||
configureHttpPort: 'Configure HTTP server port',
|
||||
webServer: 'Access Address',
|
||||
webServerDesc: 'Configure HTTP/HTTPS ports and listening addresses. Restart required for changes to take effect.',
|
||||
httpsPort: 'HTTPS Port',
|
||||
bindAddress: 'Bind Address',
|
||||
bindAddressDesc: 'IP address the server listens on. 0.0.0.0 means all network interfaces.',
|
||||
bindMode: 'Listening Address',
|
||||
bindModeDesc: 'Choose which addresses the web server binds to.',
|
||||
bindModeAll: 'All addresses',
|
||||
bindModeLocal: 'Local only (127.0.0.1)',
|
||||
bindModeCustom: 'Custom address list',
|
||||
bindIpv6: 'Enable IPv6',
|
||||
bindAllDesc: 'Also listen on :: (all IPv6 interfaces).',
|
||||
bindLocalDesc: 'Also listen on ::1 (IPv6 loopback).',
|
||||
bindAddressList: 'Address List',
|
||||
bindAddressListDesc: 'One IP address per line (IPv4 or IPv6).',
|
||||
addBindAddress: 'Add address',
|
||||
bindAddressListEmpty: 'Add at least one IP address.',
|
||||
httpsEnabled: 'Enable HTTPS',
|
||||
httpsEnabledDesc: 'Serve over an encrypted connection. A self-signed certificate is generated automatically if none is provided.',
|
||||
portConfig: 'Port & Protocol',
|
||||
portConfigDesc: 'The service listens on a single port at a time, determined by the HTTPS toggle',
|
||||
redfishTitle: 'Redfish',
|
||||
redfishDesc: 'DMTF Redfish standard management interface',
|
||||
redfishEnabled: 'Enable Redfish API',
|
||||
redfishEnabledDesc: 'When enabled, the standard Redfish management interface is available at /redfish/v1/',
|
||||
redfishEndpoint: 'Redfish Endpoint',
|
||||
copyRedfishUrl: 'Copy Redfish URL',
|
||||
openRedfishEndpoint: 'Open Redfish endpoint',
|
||||
httpPortReserved: 'HTTP port (reserved)',
|
||||
httpsPortReserved: 'HTTPS port (reserved)',
|
||||
portActive: 'Active',
|
||||
portReserved: 'Reserved',
|
||||
portReservedHint: 'The reserved port is applied only after switching protocol; you can preconfigure it now.',
|
||||
previewUrl: 'Access URL preview',
|
||||
copyUrl: 'Copy access URL',
|
||||
openInBrowser: 'Open in browser',
|
||||
listenAddress: 'Listen Address',
|
||||
listenAddressDesc: 'Choose which network interfaces the web server binds to',
|
||||
bindModeAllDesc: '0.0.0.0 — Listen on all network interfaces',
|
||||
bindModeLocalDesc: '127.0.0.1 — Loopback only (local access)',
|
||||
bindModeCustomDesc: 'Bind to a specific list of IP addresses',
|
||||
listenAddressDesc: 'Configure the network interfaces used by the web server',
|
||||
effectiveAddresses: 'Effective listen addresses',
|
||||
sslCertificate: 'SSL Certificate',
|
||||
sslCertificateDesc: 'Upload a custom PEM certificate to replace the self-signed one. A service restart is required to apply.',
|
||||
@@ -618,8 +506,6 @@ export default {
|
||||
sslKeyPem: 'Private Key (.key)',
|
||||
sslCertPemPlaceholder: '-----BEGIN CERTIFICATE-----\n...\n-----END CERTIFICATE-----',
|
||||
sslKeyPemPlaceholder: '-----BEGIN PRIVATE KEY-----\n...\n-----END PRIVATE KEY-----',
|
||||
sslCertSaved: 'Certificate saved, restart to apply',
|
||||
sslCertCleared: 'Reverted to self-signed certificate, restart to apply',
|
||||
restartRequired: 'Restart Required',
|
||||
restartRequiredHint: 'The service will restart automatically to apply the new configuration.',
|
||||
unsavedChangesHint: 'Click Save to apply changes',
|
||||
@@ -637,7 +523,6 @@ export default {
|
||||
currentVersion: 'Current Version',
|
||||
latestVersion: 'Latest Version',
|
||||
updateStatus: 'Update Status',
|
||||
updateStatusIdle: 'Idle',
|
||||
releaseNotes: 'Release Notes',
|
||||
noUpdates: 'No new version available for current channel',
|
||||
updateOverviewLoadFailed: 'Failed to load update information',
|
||||
@@ -659,38 +544,12 @@ export default {
|
||||
authSettings: 'Session Policy',
|
||||
authSettingsDesc: 'Configure single-user login and concurrent session behavior',
|
||||
allowMultipleSessions: 'Allow concurrent web sessions',
|
||||
allowMultipleSessionsDesc: 'When disabled, a new login automatically signs out the previous session',
|
||||
userManagement: 'User Management',
|
||||
userManagementDesc: 'Manage user accounts and permissions',
|
||||
addUser: 'Add User',
|
||||
editUser: 'Edit User',
|
||||
deleteUser: 'Delete User',
|
||||
username: 'Username',
|
||||
password: 'Password',
|
||||
role: 'Role',
|
||||
roleAdmin: 'Admin',
|
||||
roleUser: 'User',
|
||||
loadingUsers: 'Loading users...',
|
||||
noUsers: 'No users found',
|
||||
create: 'Create',
|
||||
confirmDeleteUser: 'Are you sure you want to delete user "{name}"?',
|
||||
msdStatus: 'MSD Status',
|
||||
atxStatus: 'ATX Status',
|
||||
available: 'Available',
|
||||
notAvailable: 'Not available',
|
||||
msdEnable: 'Enable MSD',
|
||||
msdEnableDesc: 'Enable to mount ISO images and virtual drives to the target machine',
|
||||
msdCh9329Warning: 'HID backend is CH9329, MSD is unavailable',
|
||||
msdCh9329WarningDesc: 'CH9329 is a serial HID backend and does not support USB Gadget MSD',
|
||||
msdDir: 'MSD directory',
|
||||
msdDirDesc: 'MSD base directory containing images/ and ventoy/ subfolders',
|
||||
msdDirHint: 'Changing this rebuilds MSD and updates console capacity stats',
|
||||
willBeEnabledAfterSave: 'Will be enabled after save',
|
||||
disabled: 'Disabled',
|
||||
msdDesc: 'Mass Storage Device allows you to mount ISO images and virtual drives to the target machine. Use the MSD panel on the main page to manage images.',
|
||||
atxDesc: 'ATX power control allows you to remotely power on/off and reset the target machine. Use the ATX panel on the main page to control power.',
|
||||
atxPowerButton: 'Power Button',
|
||||
atxResetButton: 'Reset Button',
|
||||
atxPowerManagement: 'Power Management',
|
||||
atxDriver: 'Driver Type',
|
||||
atxDriverNone: 'Disabled',
|
||||
atxDriverGpio: 'GPIO',
|
||||
@@ -709,7 +568,6 @@ export default {
|
||||
atxWolSettingsDesc: 'Configure WOL magic packet sending options',
|
||||
atxWolInterface: 'Network Interface',
|
||||
atxWolInterfacePlaceholder: 'e.g. eth0, enp0s3',
|
||||
atxWolInterfaceHint: 'Specify network interface for WOL packets, leave empty for default routing',
|
||||
themeDesc: 'Choose the interface color scheme',
|
||||
languageDesc: 'Choose the interface display language',
|
||||
featureVisibility: 'Feature Visibility',
|
||||
@@ -722,7 +580,6 @@ export default {
|
||||
selectDevice: 'Select device...',
|
||||
videoFormat: 'Video Format',
|
||||
selectFormat: 'Select format...',
|
||||
driver: 'Driver',
|
||||
resolution: 'Resolution',
|
||||
frameRate: 'Frame Rate',
|
||||
encoderBackend: 'Video Encoder',
|
||||
@@ -731,14 +588,12 @@ export default {
|
||||
autoRecommended: 'Auto (Recommended)',
|
||||
software: 'Software',
|
||||
supportedFormats: 'Supported Codecs',
|
||||
encoderHint: 'Hardware encoders deliver lower latency and CPU usage; software encoders offer broader compatibility at a higher resource cost.',
|
||||
hidSettings: 'HID Settings',
|
||||
hidSettingsDesc: 'Configure backend, device, descriptors, and functions in order',
|
||||
hidBackend: 'HID Backend',
|
||||
serialDevice: 'Serial Device',
|
||||
baudRate: 'Baud Rate',
|
||||
otgUdc: 'OTG Device Controller',
|
||||
otgUdcDesc: 'Select the UDC used by the USB gadget, or leave blank for automatic selection',
|
||||
ch9329Options: 'CH9329 Options',
|
||||
ch9329OptionsDesc: 'Configure runtime compatibility for the CH9329 serial HID chip',
|
||||
ch9329HybridMouse: 'Linux Absolute Mouse Compatibility',
|
||||
@@ -752,29 +607,21 @@ export default {
|
||||
ch9329DescriptorWarning: 'Saving writes CH9329 parameters; changes may not show until the device is power-cycled or reconnected',
|
||||
ch9329StringLengthWarning: 'CH9329 strings are limited to 23 bytes',
|
||||
otgHidProfile: 'OTG Functions',
|
||||
otgHidProfileDesc: 'Select which USB functions are exposed to the host',
|
||||
otgFunctionKeyboard: 'Keyboard',
|
||||
otgFunctionKeyboard: 'Standard Keyboard',
|
||||
otgFunctionKeyboardDesc: 'Standard HID keyboard device',
|
||||
otgKeyboardLeds: 'Keyboard LED Status',
|
||||
otgKeyboardLedsDesc: 'Enable Caps/Num/Scroll LED feedback from the host',
|
||||
otgFunctionMouseRelative: 'Relative Mouse',
|
||||
otgFunctionMouseRelativeDesc: 'Traditional mouse movement (HID boot mouse)',
|
||||
otgFunctionMouseAbsolute: 'Absolute Mouse',
|
||||
otgFunctionMouseAbsoluteDesc: 'Absolute positioning (touchscreen-like)',
|
||||
otgFunctionMouseRelative: 'Relative Positioning Mouse',
|
||||
otgFunctionMouseAbsolute: 'Absolute Positioning Mouse',
|
||||
otgFunctionConsumer: 'Consumer Control Keyboard',
|
||||
otgFunctionConsumerDesc: 'Consumer Control keys such as volume/play/pause',
|
||||
otgFunctionMsd: 'Mass Storage (MSD)',
|
||||
otgFunctionMsdDesc: 'Expose USB storage to the host',
|
||||
otgProfileWarning: 'Saving reconnects the USB device; unsupported combinations show an error and restore the previous configuration',
|
||||
otgFunctionMinWarning: 'Enable at least one HID function before saving',
|
||||
otgNetwork: 'USB Virtual Ethernet',
|
||||
otgNetwork: 'USB Virtual Ethernet Bridge',
|
||||
otgRuntimeDegraded: 'OTG runtime is degraded',
|
||||
otgNetworkDesc: 'Bridge the USB link to an existing uplink',
|
||||
otgNetworkDriver: 'Host Driver Mode',
|
||||
otgNetworkInterface: 'Bridge Interface',
|
||||
otgNetworkNone: 'None',
|
||||
otgDescriptor: 'USB Device Descriptor',
|
||||
otgDescriptorDesc: 'Configure USB device identification',
|
||||
vendorId: 'Vendor ID (VID)',
|
||||
productId: 'Product ID (PID)',
|
||||
manufacturer: 'Manufacturer',
|
||||
@@ -790,7 +637,6 @@ export default {
|
||||
overall: 'Overall Status',
|
||||
ok: 'Healthy',
|
||||
hasIssues: 'Issues Found',
|
||||
summary: 'Issue Summary',
|
||||
counts: '{errors} errors, {warnings} warnings',
|
||||
groupCounts: '{ok} passed, {warnings} warnings, {errors} errors',
|
||||
notRun: 'Not run',
|
||||
@@ -872,7 +718,7 @@ export default {
|
||||
none: 'None',
|
||||
},
|
||||
usbDevices: {
|
||||
title: 'USB Devices',
|
||||
title: 'USB Device Reset',
|
||||
desc: 'View connected USB devices and reset them to recover from errors',
|
||||
refresh: 'Refresh',
|
||||
loadFailed: 'Failed to load USB device list',
|
||||
@@ -887,34 +733,21 @@ export default {
|
||||
resetAction: 'Reset Device',
|
||||
},
|
||||
webrtcSettings: 'WebRTC Signaling',
|
||||
webrtcSettingsDesc: 'Configure STUN/TURN servers to assist NAT traversal',
|
||||
publicIceServersHint: 'Leave empty to use Google\u2019s public STUN servers; TURN must be self-hosted',
|
||||
webrtcSettingsDesc: 'Configure STUN/TURN servers; changes apply to newly established WebRTC sessions after saving',
|
||||
stunServer: 'STUN Server',
|
||||
stunServerPlaceholder: 'stun:stun.l.google.com:19302',
|
||||
stunServerHint: 'Leave empty to use Google\u2019s public STUN servers',
|
||||
turnServer: 'TURN Server',
|
||||
turnServerPlaceholder: 'turn:turn.example.com:3478',
|
||||
turnServerHint: 'TURN relay server. Strongly recommended for public deployments or strict NAT environments.',
|
||||
turnUsername: 'TURN Username',
|
||||
turnPassword: 'TURN Password',
|
||||
turnCredentialsHint: 'Credentials used for TURN server authentication',
|
||||
iceConfigNote: 'Changes apply to the next WebRTC session',
|
||||
},
|
||||
virtualKeyboard: {
|
||||
title: 'Virtual Keyboard',
|
||||
attach: 'Attach',
|
||||
detach: 'Detach',
|
||||
hide: 'Hide',
|
||||
show: 'Show Virtual Keyboard',
|
||||
layoutSelect: 'Keyboard Layout',
|
||||
osWindows: 'Windows',
|
||||
osMac: 'Mac',
|
||||
osAndroid: 'Android',
|
||||
mediaKeys: 'Consumer Control Keyboard',
|
||||
},
|
||||
config: {
|
||||
applied: 'Configuration applied',
|
||||
applyFailed: 'Failed to apply configuration',
|
||||
loadDevicesFailed: 'Failed to load device list',
|
||||
updateFailed: 'Update failed',
|
||||
},
|
||||
@@ -927,9 +760,6 @@ export default {
|
||||
online: 'Online',
|
||||
offline: 'Offline',
|
||||
connecting: 'Connecting...',
|
||||
version: 'Version',
|
||||
uptime: 'Uptime',
|
||||
running: 'Running',
|
||||
format: 'Format',
|
||||
resolution: 'Resolution',
|
||||
fps: 'FPS',
|
||||
@@ -937,10 +767,7 @@ export default {
|
||||
fpsActual: 'Actual FPS',
|
||||
fpsStaticHint: 'Frame rate drops automatically while the image is static',
|
||||
paused: 'Paused',
|
||||
clients: 'Clients',
|
||||
backend: 'Backend',
|
||||
mouse: 'Mouse',
|
||||
mouseSupport: 'Mouse Support',
|
||||
currentMode: 'Current Mode',
|
||||
absolute: 'Absolute',
|
||||
relative: 'Relative',
|
||||
@@ -948,21 +775,14 @@ export default {
|
||||
networkError: 'Network Error',
|
||||
disconnected: 'Disconnected',
|
||||
hidUnavailable: 'HID Unavailable',
|
||||
sampleRate: 'Sample Rate',
|
||||
channels: 'Channels',
|
||||
quality: 'Quality',
|
||||
streaming: 'Streaming',
|
||||
off: 'Off',
|
||||
defaultDevice: 'Default',
|
||||
notConnected: 'Not Connected',
|
||||
connected: 'Connected',
|
||||
image: 'Image',
|
||||
msdStatus: 'Status',
|
||||
msdStandby: 'Idle',
|
||||
msdImageMode: 'Image Mode',
|
||||
msdDriveMode: 'Virtual USB',
|
||||
msdMultiMode: 'Virtual Media: {count} mounted',
|
||||
msdMountType: 'Mount Type',
|
||||
msdCurrentImage: 'Current Image',
|
||||
msdNoImage: 'None',
|
||||
},
|
||||
@@ -978,21 +798,18 @@ export default {
|
||||
autoStart: 'Auto Start',
|
||||
thirdPartyAccess: {
|
||||
title: 'Third-party Access',
|
||||
desc: 'Configure RustDesk, VNC, and RTSP in one place',
|
||||
},
|
||||
viewLogs: 'View Logs',
|
||||
noLogs: 'No logs available',
|
||||
binaryNotFound: '{path} not found, please install the required program',
|
||||
remoteAccess: {
|
||||
title: 'Remote Access',
|
||||
desc: 'GOSTC/FRPC NAT traversal and Easytier networking',
|
||||
},
|
||||
ttyd: {
|
||||
title: 'Ttyd Web Terminal',
|
||||
desc: 'Web terminal access via ttyd',
|
||||
open: 'Open Terminal',
|
||||
openInNewTab: 'Open in New Tab',
|
||||
port: 'Port',
|
||||
shell: 'Shell',
|
||||
},
|
||||
gostc: {
|
||||
@@ -1014,11 +831,10 @@ export default {
|
||||
peers: 'Peer Nodes',
|
||||
addPeer: 'Add Peer',
|
||||
virtualIp: 'Virtual IP',
|
||||
virtualIpHint: 'Leave empty for DHCP, or specify with CIDR (e.g., 10.0.0.1/24)',
|
||||
},
|
||||
frpc: {
|
||||
title: 'FRPC NAT Traversal',
|
||||
desc: 'Connect to an frps server through the FRP client',
|
||||
desc: 'Use the FRP client for NAT traversal',
|
||||
quickConfig: 'Quick Config',
|
||||
fullConfig: 'Full Config',
|
||||
fullConfigHint: 'Paste the provider TOML configuration file here',
|
||||
@@ -1045,8 +861,7 @@ export default {
|
||||
},
|
||||
rustdesk: {
|
||||
title: 'RustDesk Remote',
|
||||
desc: 'Remote access via RustDesk client',
|
||||
serverSettings: 'Server Settings',
|
||||
desc: 'Configure the RustDesk service; the selected codec will be locked',
|
||||
rendezvousServer: 'ID Server',
|
||||
rendezvousServerPlaceholder: 'hbbs.example.com:21116',
|
||||
rendezvousServerRequired: 'Enter the RustDesk ID server',
|
||||
@@ -1054,10 +869,8 @@ export default {
|
||||
relayServerPlaceholder: 'hbbr.example.com:21117',
|
||||
relayKey: 'Relay Key',
|
||||
codec: 'Codec',
|
||||
codecHint: 'Choose H.264 or H.265 before starting RustDesk. The codec is locked while running.',
|
||||
deviceInfo: 'Device Info',
|
||||
deviceId: 'Device ID',
|
||||
deviceIdHint: 'Use this ID in RustDesk client to connect',
|
||||
devicePassword: 'Device Password',
|
||||
showPassword: 'Show Password',
|
||||
hidePassword: 'Hide Password',
|
||||
@@ -1065,8 +878,6 @@ export default {
|
||||
regeneratePassword: 'Regenerate Password',
|
||||
confirmRegenerateId: 'Are you sure you want to regenerate the device ID? Existing clients will need to reconnect with the new ID.',
|
||||
confirmRegeneratePassword: 'Are you sure you want to regenerate the password? Existing clients will need to reconnect with the new password.',
|
||||
serviceStatus: 'Service Status',
|
||||
rendezvousStatus: 'Registration Status',
|
||||
registered: 'Registered',
|
||||
connected: 'Connected',
|
||||
disconnected: 'Disconnected',
|
||||
@@ -1075,21 +886,16 @@ export default {
|
||||
notInitialized: 'Not Initialized',
|
||||
copyId: 'Copy ID',
|
||||
copyPassword: 'Copy Password',
|
||||
copied: 'Copied',
|
||||
keypairGenerated: 'Keypair Generated',
|
||||
noKeypair: 'No Keypair',
|
||||
},
|
||||
rtsp: {
|
||||
title: 'RTSP Streaming',
|
||||
desc: 'Configure RTSP video output service (H.264/H.265)',
|
||||
desc: 'Configure the RTSP streaming service; the selected codec will be locked',
|
||||
bind: 'Bind Address',
|
||||
bindHint: 'Enter an IPv4 or IPv6 address; configure the port in the port field.',
|
||||
port: 'Port',
|
||||
path: 'Stream Path',
|
||||
pathPlaceholder: 'live',
|
||||
pathHint: 'Example: rtsp://device-ip:8554/live',
|
||||
codec: 'Codec',
|
||||
codecHint: 'RTSP locks output to the selected codec while running. If RustDesk is running, choose the same codec.',
|
||||
allowOneClient: 'Allow One Client Only',
|
||||
username: 'Username',
|
||||
usernamePlaceholder: 'Empty means no authentication',
|
||||
@@ -1099,44 +905,31 @@ export default {
|
||||
},
|
||||
vnc: {
|
||||
title: 'VNC Remote',
|
||||
desc: 'Access via TigerVNC client',
|
||||
desc: 'Configure the VNC service; the selected codec will be locked',
|
||||
bind: 'Bind Address',
|
||||
bindHint: 'Enter an IPv4 or IPv6 address; configure the port in the port field.',
|
||||
port: 'Port',
|
||||
encoding: 'Video Encoding',
|
||||
encodingTightJpeg: 'Tight JPEG',
|
||||
encodingH264: 'H.264',
|
||||
encodingHint: 'VNC locks output while running. VNC cannot start under an H.265 lock; MJPEG blocks RTSP and RustDesk.',
|
||||
allowOneClient: 'Allow One Client Only',
|
||||
password: 'Password',
|
||||
passwordPlaceholder: 'Leave empty to keep current',
|
||||
passwordRequiredPlaceholder: 'Up to 8 characters',
|
||||
passwordRequired: 'Set a VNC password',
|
||||
passwordMaxLength: 'VNC passwords are limited to 8 characters',
|
||||
passwordSaved: 'Password is saved; leaving this empty keeps it unchanged.',
|
||||
clients: '{count} clients',
|
||||
urlPreview: 'VNC Address Preview',
|
||||
},
|
||||
},
|
||||
stats: {
|
||||
title: 'Connection Stats',
|
||||
current: 'Current Status',
|
||||
video: 'Video',
|
||||
videoDesc: 'Video stream from server to client.',
|
||||
video: 'Video Information',
|
||||
stability: 'Network Stability',
|
||||
stabilityDesc: 'How smooth the incoming video packets are in the network.',
|
||||
jitter: 'Jitter',
|
||||
delay: 'Playback Delay',
|
||||
delayDesc: 'Delay added by jitter buffer to smooth unevenly arriving frames.',
|
||||
packetLoss: 'Packet Loss',
|
||||
packetLossDesc: 'Number of lost incoming video RTP packets.',
|
||||
total: 'total',
|
||||
frameRate: 'Frame Rate',
|
||||
frameRateDesc: 'Number of incoming video frames displayed per second.',
|
||||
additional: 'Additional Info',
|
||||
latency: 'ICE Latency',
|
||||
bitrate: 'Bitrate',
|
||||
fps: 'FPS',
|
||||
resolution: 'Resolution',
|
||||
packetsLost: 'Packets Lost',
|
||||
connection: 'Connection Info',
|
||||
@@ -1148,23 +941,9 @@ export default {
|
||||
relay: 'TURN Relay',
|
||||
},
|
||||
help: {
|
||||
flashMode: 'Flash mode mounts the image as a USB drive, compatible with most BIOS boot',
|
||||
cdromMode: 'CDROM mode mounts the image as a CD drive, for systems requiring optical boot',
|
||||
readOnlyMode: 'Read-only mode is safer, the target system cannot modify the image',
|
||||
readWriteMode: 'Read-write mode allows writing data, useful for saving configurations',
|
||||
driveSize: 'Virtual drive size. Larger drives can store more files but take longer to initialize',
|
||||
mjpegMode: 'MJPEG mode has best compatibility, works with all browsers, but higher latency',
|
||||
webrtcMode: 'WebRTC mode has lower latency, but requires browser codec support',
|
||||
videoBitratePreset: 'Speed: lowest latency, best for slow networks. Balanced: good quality and latency. Quality: best visual, needs good bandwidth',
|
||||
encoderBackend: 'Hardware encoder has better performance and lower power. Software encoder has better compatibility',
|
||||
absoluteMode: 'Absolute mode maps mouse coordinates directly, suitable for most scenarios',
|
||||
relativeMode: 'Relative mode sends mouse movement delta, for games or special software',
|
||||
mouseThrottle: 'Send interval controls mouse event frequency. Higher values reduce network load',
|
||||
hidBackend: 'OTG backend requires USB OTG hardware support. CH9329 is a serial HID chip solution',
|
||||
atxActiveLevel: 'Active level depends on your hardware wiring. High means high voltage when triggered',
|
||||
wolInterface: 'Network interface name for sending Wake-on-LAN magic packets, e.g., eth0 or br0',
|
||||
stunServer: 'STUN server for NAT traversal to establish P2P connections. Leave empty for public servers',
|
||||
turnServer: 'TURN server provides relay when P2P fails. Requires more bandwidth but more reliable',
|
||||
audioQuality: 'Higher quality means better audio but requires more network bandwidth',
|
||||
},
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user