mirror of
https://github.com/shuaiplus/nodewarden.git
synced 2026-08-07 15:40:12 +00:00
Add backup-related error messages and improve UI styles
- Updated English, Spanish, Russian, Simplified Chinese, and Traditional Chinese locale files to include new error messages related to backup and restore processes. - Added prefix and suffix strings for the "cached empty" message to enhance clarity in user prompts. - Enhanced the management CSS with new styles for the backup browser refresh prompt to improve layout and user experience.
This commit is contained in:
@@ -193,7 +193,7 @@ export default function BackupCenterPage(props: BackupCenterPageProps) {
|
||||
const [downloadingRemotePercent, setDownloadingRemotePercent] = useState<number | null>(null);
|
||||
const [restoringRemotePath, setRestoringRemotePath] = useState('');
|
||||
const [deletingRemotePath, setDeletingRemotePath] = useState('');
|
||||
const [localError, setLocalError] = useState('');
|
||||
const [, setLocalError] = useState('');
|
||||
const [restoreProgress, setRestoreProgress] = useState<BackupProgressState | null>(null);
|
||||
const [restoreElapsedSeconds, setRestoreElapsedSeconds] = useState(0);
|
||||
const [confirmLocalRestoreOpen, setConfirmLocalRestoreOpen] = useState(false);
|
||||
@@ -974,7 +974,6 @@ export default function BackupCenterPage(props: BackupCenterPageProps) {
|
||||
}}
|
||||
/>
|
||||
|
||||
{localError ? <div className="local-error">{localError}</div> : null}
|
||||
{restoreProgress && typeof document !== 'undefined' ? createPortal((
|
||||
<div className="restore-progress-overlay" aria-live="polite">
|
||||
<section className="restore-progress-card restore-progress-modal">
|
||||
|
||||
@@ -32,6 +32,18 @@ export function RemoteBackupBrowser(props: RemoteBackupBrowserProps) {
|
||||
: t('txt_downloading_percent', { percent: props.downloadingRemotePercent });
|
||||
};
|
||||
|
||||
const renderRefreshPrompt = () => (
|
||||
<div className="backup-browser-empty">
|
||||
<span className="backup-browser-refresh-prompt">
|
||||
<span>{t('txt_backup_remote_cached_empty_prefix')}</span>
|
||||
<button type="button" className="btn btn-secondary small" disabled={!props.canBrowse || props.loadingRemoteBrowser || props.disableWhileBusy} onClick={props.onRefresh}>
|
||||
{t('txt_backup_remote_refresh')}
|
||||
</button>
|
||||
<span>{t('txt_backup_remote_cached_empty_suffix')}</span>
|
||||
</span>
|
||||
</div>
|
||||
);
|
||||
|
||||
return (
|
||||
<>
|
||||
<div className="backup-divider" />
|
||||
@@ -42,8 +54,10 @@ export function RemoteBackupBrowser(props: RemoteBackupBrowserProps) {
|
||||
|
||||
{!props.destinationIsSaved ? (
|
||||
<div className="backup-browser-empty">{t('txt_backup_remote_save_first')}</div>
|
||||
) : props.loadingRemoteBrowser && !props.remoteBrowser ? (
|
||||
<div className="backup-browser-empty">{t('txt_backup_remote_loading')}</div>
|
||||
) : !props.remoteBrowser ? (
|
||||
<div className="backup-browser-empty">{t('txt_backup_remote_cached_empty')}</div>
|
||||
renderRefreshPrompt()
|
||||
) : (
|
||||
<>
|
||||
<div className="backup-browser-path">
|
||||
|
||||
Reference in New Issue
Block a user