mirror of
https://github.com/MHSanaei/3x-ui.git
synced 2026-06-03 02:49:36 +00:00
feat(clients): show filtered count in clients list
Surface a "Showing X of Y" counter in the clients filter bar that appears whenever a search term or any filter is active, using the server-provided filtered and total counts. Added the showingCount string across all 13 locales. Closes #4808
This commit is contained in:
@@ -33,6 +33,13 @@
|
||||
flex: 0 0 auto;
|
||||
}
|
||||
|
||||
.filter-count {
|
||||
margin-inline-start: auto;
|
||||
color: var(--ant-color-text-secondary);
|
||||
font-size: 13px;
|
||||
white-space: nowrap;
|
||||
}
|
||||
|
||||
.filter-chips {
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
|
||||
@@ -188,7 +188,7 @@ export default function ClientsPage() {
|
||||
useEffect(() => { setMessageInstance(messageApi); }, [messageApi]);
|
||||
|
||||
const {
|
||||
clients, filtered,
|
||||
clients, total, filtered,
|
||||
summary: serverSummary,
|
||||
allGroups,
|
||||
setQuery,
|
||||
@@ -993,6 +993,11 @@ export default function ClientsPage() {
|
||||
{t('pages.clients.clearAllFilters')}
|
||||
</Button>
|
||||
)}
|
||||
{(activeCount > 0 || debouncedSearch.trim().length > 0) && (
|
||||
<span className="filter-count">
|
||||
{t('pages.clients.showingCount', { shown: filtered, total })}
|
||||
</span>
|
||||
)}
|
||||
</div>
|
||||
|
||||
{activeCount > 0 && (
|
||||
|
||||
@@ -643,6 +643,7 @@
|
||||
"searchPlaceholder": "ابحث بالبريد، التعليق، sub ID، UUID، كلمة المرور، auth…",
|
||||
"filterTitle": "تصفية العملاء",
|
||||
"clearAllFilters": "مسح الكل",
|
||||
"showingCount": "عرض {shown} من {total}",
|
||||
"sortOldest": "الأقدم أولاً",
|
||||
"sortNewest": "الأحدث أولاً",
|
||||
"sortRecentlyUpdated": "محدّث مؤخراً",
|
||||
|
||||
@@ -643,6 +643,7 @@
|
||||
"searchPlaceholder": "Search email, comment, sub ID, UUID, password, auth…",
|
||||
"filterTitle": "Filter clients",
|
||||
"clearAllFilters": "Clear all",
|
||||
"showingCount": "Showing {shown} of {total}",
|
||||
"sortOldest": "Oldest first",
|
||||
"sortNewest": "Newest first",
|
||||
"sortRecentlyUpdated": "Recently updated",
|
||||
|
||||
@@ -643,6 +643,7 @@
|
||||
"searchPlaceholder": "Buscar email, comentario, sub ID, UUID, contraseña, auth…",
|
||||
"filterTitle": "Filtrar clientes",
|
||||
"clearAllFilters": "Limpiar todo",
|
||||
"showingCount": "Mostrando {shown} de {total}",
|
||||
"sortOldest": "Más antiguos",
|
||||
"sortNewest": "Más recientes",
|
||||
"sortRecentlyUpdated": "Recientemente actualizados",
|
||||
|
||||
@@ -643,6 +643,7 @@
|
||||
"searchPlaceholder": "جستجوی ایمیل، توضیح، Sub ID، UUID، رمز، احراز...",
|
||||
"filterTitle": "فیلتر کاربران",
|
||||
"clearAllFilters": "پاک کردن همه",
|
||||
"showingCount": "نمایش {shown} از {total}",
|
||||
"sortOldest": "قدیمیترین",
|
||||
"sortNewest": "جدیدترین",
|
||||
"sortRecentlyUpdated": "اخیراً بهروزشده",
|
||||
|
||||
@@ -643,6 +643,7 @@
|
||||
"searchPlaceholder": "Cari email, komentar, sub ID, UUID, kata sandi, auth…",
|
||||
"filterTitle": "Filter klien",
|
||||
"clearAllFilters": "Hapus semua",
|
||||
"showingCount": "Menampilkan {shown} dari {total}",
|
||||
"sortOldest": "Terlama dulu",
|
||||
"sortNewest": "Terbaru dulu",
|
||||
"sortRecentlyUpdated": "Baru saja diperbarui",
|
||||
|
||||
@@ -643,6 +643,7 @@
|
||||
"searchPlaceholder": "メール、コメント、sub ID、UUID、パスワード、auth を検索…",
|
||||
"filterTitle": "クライアントをフィルタ",
|
||||
"clearAllFilters": "すべてクリア",
|
||||
"showingCount": "{total} 件中 {shown} 件を表示",
|
||||
"sortOldest": "古い順",
|
||||
"sortNewest": "新しい順",
|
||||
"sortRecentlyUpdated": "最近更新",
|
||||
|
||||
@@ -643,6 +643,7 @@
|
||||
"searchPlaceholder": "Buscar email, comentário, sub ID, UUID, senha, auth…",
|
||||
"filterTitle": "Filtrar clientes",
|
||||
"clearAllFilters": "Limpar tudo",
|
||||
"showingCount": "Mostrando {shown} de {total}",
|
||||
"sortOldest": "Mais antigos primeiro",
|
||||
"sortNewest": "Mais novos primeiro",
|
||||
"sortRecentlyUpdated": "Atualizados recentemente",
|
||||
|
||||
@@ -643,6 +643,7 @@
|
||||
"searchPlaceholder": "Поиск email, комментария, sub ID, UUID, пароля, auth…",
|
||||
"filterTitle": "Фильтр клиентов",
|
||||
"clearAllFilters": "Очистить все",
|
||||
"showingCount": "Показано {shown} из {total}",
|
||||
"sortOldest": "Сначала старые",
|
||||
"sortNewest": "Сначала новые",
|
||||
"sortRecentlyUpdated": "Недавно обновлены",
|
||||
|
||||
@@ -643,6 +643,7 @@
|
||||
"searchPlaceholder": "Email, yorum, sub ID, UUID, parola, auth ara…",
|
||||
"filterTitle": "İstemcileri filtrele",
|
||||
"clearAllFilters": "Tümünü temizle",
|
||||
"showingCount": "{total} içinden {shown} gösteriliyor",
|
||||
"sortOldest": "Önce en eski",
|
||||
"sortNewest": "Önce en yeni",
|
||||
"sortRecentlyUpdated": "Son güncellenen",
|
||||
|
||||
@@ -643,6 +643,7 @@
|
||||
"searchPlaceholder": "Пошук email, коментаря, sub ID, UUID, паролю, auth…",
|
||||
"filterTitle": "Фільтр клієнтів",
|
||||
"clearAllFilters": "Очистити все",
|
||||
"showingCount": "Показано {shown} з {total}",
|
||||
"sortOldest": "Спочатку старі",
|
||||
"sortNewest": "Спочатку нові",
|
||||
"sortRecentlyUpdated": "Нещодавно оновлені",
|
||||
|
||||
@@ -643,6 +643,7 @@
|
||||
"searchPlaceholder": "Tìm email, ghi chú, sub ID, UUID, mật khẩu, auth…",
|
||||
"filterTitle": "Lọc client",
|
||||
"clearAllFilters": "Xóa tất cả",
|
||||
"showingCount": "Hiển thị {shown} trên {total}",
|
||||
"sortOldest": "Cũ nhất trước",
|
||||
"sortNewest": "Mới nhất trước",
|
||||
"sortRecentlyUpdated": "Gần đây cập nhật",
|
||||
|
||||
@@ -643,6 +643,7 @@
|
||||
"searchPlaceholder": "搜索邮箱、备注、sub ID、UUID、密码、auth…",
|
||||
"filterTitle": "筛选客户端",
|
||||
"clearAllFilters": "清除全部",
|
||||
"showingCount": "显示 {shown} / {total}",
|
||||
"sortOldest": "最旧优先",
|
||||
"sortNewest": "最新优先",
|
||||
"sortRecentlyUpdated": "最近更新",
|
||||
|
||||
@@ -643,6 +643,7 @@
|
||||
"searchPlaceholder": "搜尋電子郵件、備註、sub ID、UUID、密碼、auth…",
|
||||
"filterTitle": "篩選客戶端",
|
||||
"clearAllFilters": "清除全部",
|
||||
"showingCount": "顯示 {shown} / {total}",
|
||||
"sortOldest": "最舊優先",
|
||||
"sortNewest": "最新優先",
|
||||
"sortRecentlyUpdated": "最近更新",
|
||||
|
||||
Reference in New Issue
Block a user