feat: Refactor ServerManager layout to improve server list display and enhance filtering options
Publish Fast Tabler Docker image / build-and-push-fast (push) Successful in 18m28s
Publish Fast Tabler Docker image / build-and-push-fast (push) Successful in 18m28s
This commit is contained in:
@@ -433,48 +433,12 @@ function ServerManager() {
|
|||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div className="row">
|
{/* Таблица серверов на всю ширину */}
|
||||||
<div className="col-lg-4">
|
<div className="card w-100">
|
||||||
{/* Add New Server Card */}
|
|
||||||
<div className="card card-md">
|
|
||||||
<div className="card-header">
|
|
||||||
<h3 className="card-title">
|
|
||||||
<IconPlus className="icon me-2" />
|
|
||||||
Управление серверами
|
|
||||||
</h3>
|
|
||||||
</div>
|
|
||||||
<div className="card-body">
|
|
||||||
<div className="form-footer">
|
|
||||||
{/* The button for adding new server is now outside this column */}
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
{/* Save Changes Card */}
|
|
||||||
<div className="card card-md mt-3">
|
|
||||||
<div className="card-header">
|
|
||||||
<h3 className="card-title">
|
|
||||||
<IconDatabase className="icon me-2" />
|
|
||||||
Сохранение изменений
|
|
||||||
</h3>
|
|
||||||
</div>
|
|
||||||
<div className="card-body">
|
|
||||||
<p className="text-muted mb-3">
|
|
||||||
Все изменения сохраняются в файл servers.json в S3 хранилище.
|
|
||||||
</p>
|
|
||||||
<div className="form-footer">
|
|
||||||
{/* The save changes buttons are now outside this column */}
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div className="col-lg-8">
|
|
||||||
<div className="card">
|
|
||||||
<div className="card-header d-flex justify-content-between align-items-center">
|
<div className="card-header d-flex justify-content-between align-items-center">
|
||||||
<h3 className="card-title mb-0">Список серверов</h3>
|
<h3 className="card-title mb-0">Список серверов</h3>
|
||||||
<div className="d-flex gap-2 w-75">
|
<div className="d-flex gap-2 w-75">
|
||||||
{/* Фильтры */}
|
{/* Фильтры и поиск */}
|
||||||
<select className="form-select w-auto" value={filterTunnel} onChange={e => { setFilterTunnel(e.target.value); setCurrentPage(1); }}>
|
<select className="form-select w-auto" value={filterTunnel} onChange={e => { setFilterTunnel(e.target.value); setCurrentPage(1); }}>
|
||||||
<option value="">Все туннели</option>
|
<option value="">Все туннели</option>
|
||||||
{allTunnels.map(tunnel => (
|
{allTunnels.map(tunnel => (
|
||||||
@@ -493,7 +457,6 @@ function ServerManager() {
|
|||||||
<option key={provider} value={provider}>{provider}</option>
|
<option key={provider} value={provider}>{provider}</option>
|
||||||
))}
|
))}
|
||||||
</select>
|
</select>
|
||||||
{/* Поиск */}
|
|
||||||
<div className="input-icon flex-grow-1">
|
<div className="input-icon flex-grow-1">
|
||||||
<span className="input-icon-addon">
|
<span className="input-icon-addon">
|
||||||
<IconSearch size={18} />
|
<IconSearch size={18} />
|
||||||
@@ -626,8 +589,6 @@ function ServerManager() {
|
|||||||
</div>
|
</div>
|
||||||
)}
|
)}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
{/* Delete Modal */}
|
{/* Delete Modal */}
|
||||||
<DeleteServerModal
|
<DeleteServerModal
|
||||||
|
|||||||
Reference in New Issue
Block a user