From ccbda2c0aed5c475acafb39ef08ec40728f2b63f Mon Sep 17 00:00:00 2001 From: Yashwin Date: Thu, 9 Apr 2026 14:34:20 +0530 Subject: [PATCH] feat: add sort functionality to Audit Log Resource Types list with new filter options --- .../superadmin/AuditLogResourceTypes.tsx | 28 ++++++++++++++++--- src/services/audit-log-service.ts | 1 + 2 files changed, 25 insertions(+), 4 deletions(-) diff --git a/src/pages/superadmin/AuditLogResourceTypes.tsx b/src/pages/superadmin/AuditLogResourceTypes.tsx index 7497082..b621f5c 100644 --- a/src/pages/superadmin/AuditLogResourceTypes.tsx +++ b/src/pages/superadmin/AuditLogResourceTypes.tsx @@ -66,7 +66,8 @@ const AuditLogResourceTypes = (): ReactElement => { const [search, setSearch] = useState(''); const [debouncedSearch, setDebouncedSearch] = useState(''); const [typeFilter, setTypeFilter] = useState(null); - const [moduleIdFilter, setModuleIdFilter] = useState(null); + const [moduleIdFilter, setModuleIdFilter] = useState(null); + const [sort, setSort] = useState('asc'); const { register, @@ -95,7 +96,8 @@ const AuditLogResourceTypes = (): ReactElement => { const response = await auditLogService.getAllResourceTypes(currentPage, limit, { search: debouncedSearch, type: typeFilter, - module_id: moduleIdFilter + module_id: moduleIdFilter, + sort }); if (response.success) { setResourceTypes(response.data); @@ -107,7 +109,7 @@ const AuditLogResourceTypes = (): ReactElement => { } finally { setIsLoading(false); } - }, [currentPage, limit, debouncedSearch, typeFilter, moduleIdFilter]); + }, [currentPage, limit, debouncedSearch, typeFilter, moduleIdFilter, sort]); const fetchModules = async () => { try { @@ -325,13 +327,31 @@ const AuditLogResourceTypes = (): ReactElement => { placeholder="All Modules" /> - {(debouncedSearch || typeFilter || moduleIdFilter) && ( + {/* Sort Filter */} + { + setSort(val as string || 'newest'); + setCurrentPage(1); + }} + placeholder="Sort Order" + /> + + {(debouncedSearch || typeFilter || moduleIdFilter || sort !== 'asc') && (