diff --git a/frontend/src/pages/clients/ClientsPage.vue b/frontend/src/pages/clients/ClientsPage.vue index 1678b695..75a8189d 100644 --- a/frontend/src/pages/clients/ClientsPage.vue +++ b/frontend/src/pages/clients/ClientsPage.vue @@ -10,8 +10,6 @@ import { InfoCircleOutlined, QrcodeOutlined, RetweetOutlined, - ControlOutlined, - DownOutlined, MoreOutlined, UsergroupAddOutlined, } from '@ant-design/icons-vue'; @@ -218,15 +216,14 @@ function onShowQr(row) { function onResetAllTraffics() { Modal.confirm({ - title: t('pages.clients.resetAllTrafficsTitle') || 'Reset all client traffic?', - content: t('pages.clients.resetAllTrafficsContent') - || 'Every client’s up/down counter drops to zero. Quotas and expiry are not affected.', + title: t('pages.clients.resetAllTrafficsTitle'), + content: t('pages.clients.resetAllTrafficsContent'), okText: t('reset') || 'Reset', okType: 'danger', cancelText: t('cancel'), onOk: async () => { const msg = await resetAllTraffics(); - if (msg?.success) message.success(t('pages.clients.toasts.allTrafficsReset') || 'All client traffic reset'); + if (msg?.success) message.success(t('pages.clients.toasts.allTrafficsReset')); }, }); } @@ -340,23 +337,12 @@ const columns = computed(() => [ {{ t('pages.clients.deleteSelected', { count: selectedRowKeys.length }) || `Delete (${selectedRowKeys.length})` }} - - - - {{ t('pages.clients.general') }} - - - @@ -462,7 +448,8 @@ const columns = computed(() => [
- + {{ row.email }}
diff --git a/frontend/src/pages/inbounds/ClientBulkModal.vue b/frontend/src/pages/inbounds/ClientBulkModal.vue deleted file mode 100644 index 6e76642b..00000000 --- a/frontend/src/pages/inbounds/ClientBulkModal.vue +++ /dev/null @@ -1,280 +0,0 @@ - - - - - diff --git a/frontend/src/pages/inbounds/ClientFormModal.vue b/frontend/src/pages/inbounds/ClientFormModal.vue deleted file mode 100644 index 7a3d4bcd..00000000 --- a/frontend/src/pages/inbounds/ClientFormModal.vue +++ /dev/null @@ -1,394 +0,0 @@ - - - - - diff --git a/frontend/src/pages/inbounds/ClientRowTable.vue b/frontend/src/pages/inbounds/ClientRowTable.vue deleted file mode 100644 index 5fdd2067..00000000 --- a/frontend/src/pages/inbounds/ClientRowTable.vue +++ /dev/null @@ -1,818 +0,0 @@ - - - - - diff --git a/frontend/src/pages/inbounds/CopyClientsModal.vue b/frontend/src/pages/inbounds/CopyClientsModal.vue deleted file mode 100644 index f3df97b5..00000000 --- a/frontend/src/pages/inbounds/CopyClientsModal.vue +++ /dev/null @@ -1,185 +0,0 @@ - - - diff --git a/frontend/src/pages/inbounds/InboundList.vue b/frontend/src/pages/inbounds/InboundList.vue index 0a50ab9d..00352c26 100644 --- a/frontend/src/pages/inbounds/InboundList.vue +++ b/frontend/src/pages/inbounds/InboundList.vue @@ -9,8 +9,6 @@ import { MoreOutlined, EditOutlined, QrcodeOutlined, - UserAddOutlined, - UsergroupAddOutlined, CopyOutlined, FileDoneOutlined, ExportOutlined, @@ -21,14 +19,12 @@ import { BlockOutlined, DeleteOutlined, InfoCircleOutlined, - RightOutlined, } from '@ant-design/icons-vue'; import { HttpUtil, ObjectUtil, SizeFormatter, IntlUtil, ColorUtils } from '@/utils'; import { DBInbound } from '@/models/dbinbound.js'; import { Inbound } from '@/models/inbound.js'; import InfinityIcon from '@/components/InfinityIcon.vue'; -import ClientRowTable from './ClientRowTable.vue'; import { useDatepicker } from '@/composables/useDatepicker.js'; const { datepicker } = useDatepicker(); @@ -58,14 +54,6 @@ const emit = defineEmits([ 'add-inbound', 'general-action', 'row-action', - // Per-client events surfaced from the expand-row table. - 'edit-client', - 'qrcode-client', - 'info-client', - 'reset-traffic-client', - 'delete-client', - 'delete-clients', - 'toggle-enable-client', ]); // ============ Toolbar / search & filter ============================= @@ -249,19 +237,6 @@ const desktopColumns = computed(() => { }); const columns = computed(() => desktopColumns.value); -// Mobile expansion state — replaces a-table's expandable() since the -// mobile branch renders a hand-rolled card list rather than a table. -const expandedIds = ref(new Set()); -function toggleExpanded(id) { - const next = new Set(expandedIds.value); - if (next.has(id)) next.delete(id); - else next.add(id); - expandedIds.value = next; -} -function isExpanded(id) { - return expandedIds.value.has(id); -} - const statsRecord = ref(null); function openStats(record) { statsRecord.value = record; @@ -395,10 +370,8 @@ function showQrCodeMenu(dbInbound) {
- -
- + +
#{{ record.id }} {{ record.remark }}
@@ -417,15 +390,6 @@ function showQrCodeMenu(dbInbound) { {{ t('qrCode') }}