"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.createAuditRouter = createAuditRouter; const express_1 = require("express"); function createAuditRouter(repo) { const router = (0, express_1.Router)(); // GET /api/audit — list audit logs (enterprise only) router.get('/', async (req, res, next) => { try { const filters = { userId: req.query['userId'], organizationId: req.query['organizationId'], action: req.query['action'], resource: req.query['resource'], limit: req.query['limit'] ? Number(req.query['limit']) : 100, }; if (req.query['from']) filters.from = new Date(req.query['from']); if (req.query['to']) filters.to = new Date(req.query['to']); const logs = await repo.findAll(filters); res.json(logs.map((l) => ({ id: l.id.toString(), userId: l.userId, organizationId: l.organizationId, action: l.action, resource: l.resource, resourceId: l.resourceId, ipAddress: l.ipAddress, details: l.details, occurredAt: l.occurredAt.toISOString(), }))); } catch (err) { next(err); } }); return router; }