diff --git a/backend/src/server/routes/v1/admin-router.ts b/backend/src/server/routes/v1/admin-router.ts index 0169b15c0..6e41df946 100644 --- a/backend/src/server/routes/v1/admin-router.ts +++ b/backend/src/server/routes/v1/admin-router.ts @@ -93,7 +93,7 @@ export const registerAdminRouter = async (server: FastifyZodProvider) => { querystring: z.object({ searchTerm: z.string().default(""), offset: z.coerce.number().default(0), - limit: z.coerce.number().default(20) + limit: z.coerce.number().max(100).default(20) }), response: { 200: z.object({ diff --git a/frontend/src/views/admin/DashboardPage/UserPanel.tsx b/frontend/src/views/admin/DashboardPage/UserPanel.tsx index 85561f07a..733d52624 100644 --- a/frontend/src/views/admin/DashboardPage/UserPanel.tsx +++ b/frontend/src/views/admin/DashboardPage/UserPanel.tsx @@ -24,10 +24,8 @@ import { useAdminDeleteUser, useAdminGetUsers } from "@app/hooks/api"; import { UsePopUpState } from "@app/hooks/usePopUp"; const UserPanelTable = ({ - searchUserFilter, handlePopUpOpen }: { - searchUserFilter: string; handlePopUpOpen: ( popUpName: keyof UsePopUpState<["removeUser"]>, data: { @@ -36,6 +34,7 @@ const UserPanelTable = ({ } ) => void; }) => { + const [searchUserFilter, setSearchUserFilter] = useState(""); const { user } = useUser(); const userId = user?.id || ""; const debounedSearchTerm = useDebounce(searchUserFilter, 500); @@ -47,64 +46,72 @@ const UserPanelTable = ({ const isEmpty = !isLoading && !data?.pages?.[0].length; return ( -
| Name | -Username | -- |
|---|
| Name | +Username | ++ |
|---|---|---|
| {name} | -{email} | -
- {userId !== id && (
-
-
- )}
- |
-
Users