Simplify system settings layout

This commit is contained in:
2026-04-02 00:29:38 +03:00
parent 1f73a29137
commit e342693211
4 changed files with 11 additions and 7 deletions

View File

@@ -29,3 +29,4 @@ Updated: 2026-04-02
13. Added Docker build/compose runtime that compiles 3proxy in-container and starts the panel with a managed 3proxy process. 13. Added Docker build/compose runtime that compiles 3proxy in-container and starts the panel with a managed 3proxy process.
14. Added backend tests for config rendering and user-management API edge cases. 14. Added backend tests for config rendering and user-management API edge cases.
15. Added editable System settings with shared validation, a system update API, service/port conflict protection, and UI coverage for local save flows. 15. Added editable System settings with shared validation, a system update API, service/port conflict protection, and UI coverage for local save flows.
16. Simplified the System tab layout by removing the redundant Runtime card and collapsing those fields into a compact settings section.

View File

@@ -24,7 +24,7 @@ Updated: 2026-04-02
- `src/main.tsx`: application bootstrap - `src/main.tsx`: application bootstrap
- `src/App.tsx`: authenticated panel shell with API-backed dashboard/user flows and validated local fallback mutations - `src/App.tsx`: authenticated panel shell with API-backed dashboard/user flows and validated local fallback mutations
- `src/SystemTab.tsx`: editable runtime/system form for host, modes, and managed services - `src/SystemTab.tsx`: editable system settings and managed services form with compact panel-level controls
- `src/App.test.tsx`: login-gate, modal interaction, pause/resume, delete-confirm, and system-save UI tests - `src/App.test.tsx`: login-gate, modal interaction, pause/resume, delete-confirm, and system-save UI tests
- `src/app.css`: full panel styling - `src/app.css`: full panel styling
- `src/data/mockDashboard.ts`: default panel state and frontend fallback snapshot - `src/data/mockDashboard.ts`: default panel state and frontend fallback snapshot

View File

@@ -41,11 +41,10 @@ export default function SystemTab({ snapshot, onSaveSystem }: SystemTabProps) {
return ( return (
<form className="system-editor" onSubmit={handleSubmit}> <form className="system-editor" onSubmit={handleSubmit}>
<section className="page-grid system-grid"> <section className="page-grid single-column system-grid">
<article className="panel-card"> <article className="panel-card system-settings-card">
<div className="card-header"> <div className="card-header">
<h2>Runtime</h2> <h2>Panel settings</h2>
<span className="status-pill idle">editable</span>
</div> </div>
<div className="system-fields"> <div className="system-fields">
<label className="field-group"> <label className="field-group">
@@ -78,8 +77,8 @@ export default function SystemTab({ snapshot, onSaveSystem }: SystemTabProps) {
</label> </label>
</div> </div>
<p className="system-hint"> <p className="system-hint">
Saving writes a new generated config and keeps existing user assignments on enabled assignable These values describe how the panel generates and reloads the 3proxy config. Saving keeps
services only. existing users attached only to enabled assignable services.
</p> </p>
</article> </article>

View File

@@ -546,6 +546,10 @@ tbody tr:last-child td {
display: block; display: block;
} }
.system-settings-card {
gap: 12px;
}
.system-fields, .system-fields,
.service-editor-grid { .service-editor-grid {
display: grid; display: grid;