import express from 'express'; import { isAuthenticated } from '../../keycloak.js'; import { listAuditLogsRouteHandler, getAuditLogRouteHandler, getAuditLogStatsRouteHandler, getAuditLogHistoryRouteHandler, searchAuditLogsRouteHandler, } from '../../services/management/auditlogs.js'; import { getFilter, getSort } from '../../utils.js'; const router = express.Router(); const listAllowedFilters = [ 'parent._id', 'owner._id', 'operation', 'createdAt', 'updatedAt', '_reference', ]; const listAllowedSorters = ['createdAt', 'updatedAt']; router.get('/', isAuthenticated, async (req, res) => { const { page, limit, sort, order } = req.query; const filter = await getFilter(req.query, listAllowedFilters); listAuditLogsRouteHandler( req, res, page, limit, filter, getSort(sort, listAllowedSorters), order ); }); router.get('/search', isAuthenticated, async (req, res) => { const { search } = req.query; searchAuditLogsRouteHandler(req, res, search); }); router.get('/stats', isAuthenticated, async (req, res) => { getAuditLogStatsRouteHandler(req, res); }); router.get('/history', isAuthenticated, async (req, res) => { getAuditLogHistoryRouteHandler(req, res); }); router.get('/:id', async (req, res) => { await getAuditLogRouteHandler(req, res); }); export default router;