feat: add version check functionality with UI integration, status updates, and internationalization support

This commit is contained in:
Supra4E8C
2025-12-06 00:15:44 +08:00
parent 658814bf6a
commit 112f86966d
7 changed files with 522 additions and 2 deletions

View File

@@ -836,6 +836,7 @@ body {
align-items: center;
gap: 12px;
max-width: max-content;
flex-shrink: 0;
}
.top-navbar-brand-logo {
@@ -849,8 +850,70 @@ body {
font-size: 18px;
font-weight: 600;
color: var(--text-primary);
overflow: visible;
text-overflow: initial;
white-space: nowrap;
line-height: 1;
}
.top-navbar-brand-toggle {
display: inline-flex;
align-items: center;
background: transparent;
border: none;
padding: 0;
margin: 0;
cursor: pointer;
font: inherit;
color: var(--text-primary);
height: 32px;
}
.top-navbar-brand-toggle:focus-visible {
outline: 2px solid var(--primary-color);
outline-offset: 4px;
border-radius: 8px;
}
.brand-texts {
position: relative;
display: inline-flex;
align-items: center;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
transition: width 0.45s ease;
}
.brand-text {
display: block;
white-space: nowrap;
transition: opacity 0.35s ease;
line-height: 1.2;
}
.brand-text-short {
position: absolute;
left: 0;
top: 0;
opacity: 0;
}
.top-navbar-brand-toggle.expanded .brand-text-full {
opacity: 1;
}
.top-navbar-brand-toggle.expanded .brand-text-short {
opacity: 0;
}
.top-navbar-brand-toggle.collapsed .brand-text-full {
opacity: 0;
position: absolute;
}
.top-navbar-brand-toggle.collapsed .brand-text-short {
opacity: 1;
position: relative;
}
.top-navbar-actions {
@@ -2368,6 +2431,65 @@ input:checked+.slider:before {
color: var(--text-tertiary);
}
.version-check {
display: flex;
flex-direction: column;
gap: 12px;
}
.version-check-rows {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
gap: 12px;
}
.version-check-row {
display: flex;
align-items: center;
justify-content: space-between;
padding: 12px 14px;
border-radius: 8px;
background: var(--bg-quaternary);
border: 1px solid var(--border-primary);
}
.version-check-value {
font-weight: 600;
color: var(--text-tertiary);
}
.version-check-actions {
display: flex;
align-items: center;
gap: 12px;
flex-wrap: wrap;
}
.version-check-result {
font-weight: 600;
color: var(--text-secondary);
}
.version-check-result.success {
color: #10b981;
}
.version-check-result.warning {
color: #f59e0b;
}
.version-check-result.error {
color: #ef4444;
}
.version-check-result.info {
color: var(--text-secondary);
}
.version-check-result.muted {
color: var(--text-quaternary);
}
/* JSON模态框 */
.json-modal {
position: fixed;