From 2b8470a7cac1ebe7e0f09e426a4edb2afc6fb8a3 Mon Sep 17 00:00:00 2001 From: shats Date: Sat, 6 Dec 2025 21:55:29 +0700 Subject: [PATCH] refactor: Revamp FilterManager UI for server selection, enhancing layout and interaction with improved card design and search functionality. --- frontend/src/FilterManager.jsx | 251 +++++++++++++++++---------------- 1 file changed, 127 insertions(+), 124 deletions(-) diff --git a/frontend/src/FilterManager.jsx b/frontend/src/FilterManager.jsx index 9bf9c18..ce17bf4 100644 --- a/frontend/src/FilterManager.jsx +++ b/frontend/src/FilterManager.jsx @@ -900,139 +900,142 @@ function FilterManager() { )} - {/* Выбор сервера - показываем список когда сервер не выбран */} - {!selectedServer && ( -
-
-

- - Выберите сервер для работы -

-
- -
+ {/* Селектор серверов на одной странице (Tabler UI) */} +
+
+

+ + Серверы + {servers.length || 0} + {selectedServer && ( + Выбран: {selectedServer.name} + )} +

+
+
-
- {servers.length === 0 ? ( -
-
- +
+
+ {servers.length === 0 ? ( +
+
+ +
+

Нет серверов

+

+ Создайте первый сервер для работы с фильтрами +

+
+ +
+
+ ) : ( +
+
+
+ setServerSearch(e.target.value)} + /> + + +
-

Нет серверов

-

- Создайте первый сервер для работы с фильтрами -

-
+
+ {activeServers.length > 0 && ( +
Активные
+ )} + {activeServers.map(server => ( + + ))} + {inactiveServers.length > 0 && ( +
Неактивные
+ )} + {inactiveServers.map(server => ( + + ))} +
+
- ) : ( - <> - {/* Поиск */} -
-
- setServerSearch(e.target.value)} - /> - - - +
+ {selectedServer ? ( +
+ +
+ Текущий сервер: {selectedServer.name} + {selectedServer.description && ( + {selectedServer.description} + )} +
-
- - {/* Список серверов */} -
- {/* Активные серверы */} - {activeServers.length > 0 && ( - <> -
-

Активные серверы

-
- {activeServers.map(server => ( -
-
setSelectedServer(server)} style={{ cursor: 'pointer' }}> -
-
-
- - - -
-
-
{server.name}
- {server.description && ( -
- {server.description} -
- )} -
-
- Активен -
-
-
-
-
- ))} - - )} - - {/* Неактивные серверы */} - {inactiveServers.length > 0 && ( - <> -
-

Неактивные серверы

-
- {inactiveServers.map(server => ( -
-
setSelectedServer(server)} style={{ cursor: 'pointer' }}> -
-
-
- - - -
-
-
{server.name}
- {server.description && ( -
- {server.description} -
- )} -
-
- Неактивен -
-
-
-
-
- ))} - - )} -
- - )} -
+ ) : ( +
+ +
Выберите сервер слева, чтобы работать с фильтрами.
+
+ )} +
+
+ )}
- )} +
{/* Секция фильтров выбранного сервера */} {selectedServer && (