mirror of
https://github.com/MHSanaei/3x-ui.git
synced 2026-05-29 16:39:35 +00:00
GroupsPage was sourcing modal candidates from useClients(), which is server-paginated at 25 rows — so "Add clients to group" only ever offered the first page, "Remove" missed members past page 1, and SubLinks silently skipped emails whose record wasn't in the cached page. Pull the unpaginated list via /panel/api/clients/list when any of the three modals open.
33 lines
1005 B
TypeScript
33 lines
1005 B
TypeScript
export const keys = {
|
|
server: {
|
|
status: () => ['server', 'status'] as const,
|
|
},
|
|
nodes: {
|
|
root: () => ['nodes'] as const,
|
|
list: () => ['nodes', 'list'] as const,
|
|
},
|
|
settings: {
|
|
root: () => ['settings'] as const,
|
|
all: () => ['settings', 'all'] as const,
|
|
defaults: () => ['settings', 'defaults'] as const,
|
|
},
|
|
inbounds: {
|
|
root: () => ['inbounds'] as const,
|
|
slim: () => ['inbounds', 'slim'] as const,
|
|
options: () => ['inbounds', 'options'] as const,
|
|
},
|
|
clients: {
|
|
root: () => ['clients'] as const,
|
|
list: (params: unknown) => ['clients', 'list', params] as const,
|
|
all: () => ['clients', 'all'] as const,
|
|
onlines: () => ['clients', 'onlines'] as const,
|
|
lastOnline: () => ['clients', 'lastOnline'] as const,
|
|
groups: () => ['clients', 'groups'] as const,
|
|
},
|
|
xray: {
|
|
root: () => ['xray'] as const,
|
|
config: () => ['xray', 'config'] as const,
|
|
outboundsTraffic: () => ['xray', 'outboundsTraffic'] as const,
|
|
},
|
|
} as const;
|