From cf3b1a2028141aec6b436f8e03b8d5698fe48254 Mon Sep 17 00:00:00 2001 From: shats Date: Tue, 20 Jan 2026 16:29:28 +0700 Subject: [PATCH] refactor(ServerManager, ServerCard): remove unused icons and streamline server card layout; enhance button styles and improve responsiveness --- frontend/src/ServerManager.jsx | 30 +--- frontend/src/components/server/ServerCard.jsx | 136 +++++++++--------- 2 files changed, 73 insertions(+), 93 deletions(-) diff --git a/frontend/src/ServerManager.jsx b/frontend/src/ServerManager.jsx index 1d311b9..1d71da1 100644 --- a/frontend/src/ServerManager.jsx +++ b/frontend/src/ServerManager.jsx @@ -19,7 +19,6 @@ import { IconAlertTriangle, IconServer, IconChevronDown, - IconLink, IconFilter, IconMapPin, IconWorld, @@ -27,11 +26,9 @@ import { IconLayoutGrid, IconNetwork, IconGitBranch, - IconCopy, IconSquare, IconSquareCheck, - IconChevronRight, - IconSettings + IconChevronRight } from '@tabler/icons-react'; import GraphView from './GraphView'; import { @@ -659,17 +656,6 @@ function ServerManager() { {/* Actions */} -
- -
- {Object.keys(presets).map(key => ( - - ))} -
-
@@ -795,8 +781,6 @@ function ServerManager() { onSelect={toggleServerSelection} onEdit={handleEdit} onDelete={confirmDelete} - onGenerateLink={handleGenerateLink} - onQuickCopy={quickCopyLink} /> ))} @@ -865,14 +849,12 @@ function ServerManager() { {server.tunnel}
- - -
diff --git a/frontend/src/components/server/ServerCard.jsx b/frontend/src/components/server/ServerCard.jsx index f742003..4b9302b 100644 --- a/frontend/src/components/server/ServerCard.jsx +++ b/frontend/src/components/server/ServerCard.jsx @@ -2,8 +2,6 @@ import { IconServer, IconEdit, IconTrash, - IconLink, - IconCopy, IconChevronDown, IconChevronUp, IconCheck, @@ -40,9 +38,7 @@ export default function ServerCard({ selected, onSelect, onEdit, - onDelete, - onGenerateLink, - onQuickCopy + onDelete }) { const [expanded, setExpanded] = useState(false); @@ -55,112 +51,114 @@ export default function ServerCard({
{/* Основная строка */} -
- {/* Левая часть: статус + выбор + тип */} +
+ {/* Левая часть: тип сервера */}
onSelect?.(server)} > -
- {isExit ? ( - - ) : ( - - )} -
+
+ {selected ? ( + + ) : isExit ? ( + + ) : ( + + )} +
+
{isExit ? 'EXIT' : 'JUMP'}
{/* Центральная часть: информация о сервере */} -
-
+
setExpanded(!expanded)}> +
{/* Флаг + Название */} -
- {countryToFlag(server.country)} +
+ {countryToFlag(server.country)}
-
{serverName}
-
{server.country}
+
{serverName}
+
{server.provider}
- {/* Провайдер */} -
-
Провайдер
-
{server.provider}
-
- {/* DNS */} -
-
Домен
-
+
+
{server.dns || server.ip}
- {/* Туннель + Connections */} -
- - + {/* Badges: туннель + кол-во шлюзов */} +
+ + {server.tunnel} {connectionsCount > 0 && ( - - - {connectionsCount} + + + {connectionsCount} {connectionsCount === 1 ? 'шлюз' : 'шлюзов'} )}
- {/* Gateway */} + {/* Primary Gateway */} {primaryGateway && ( -
-
Шлюз
-
{primaryGateway}
+
+ → {primaryGateway}
)}
{/* Правая часть: действия */} -
- - - - -
-