chore: import DH V2 D5.6.4 production baseline

This commit is contained in:
DH V2
2026-09-05 10:12:35 -03:00
commit 82213e72f5
757 changed files with 84218 additions and 0 deletions
+66
View File
@@ -0,0 +1,66 @@
import type { ListAuditQueryDto } from './dto/list-audit-query.dto';
export interface AuditFilters {
clause: string;
parameters: unknown[];
}
export function buildAuditFilters(query: ListAuditQueryDto): AuditFilters {
const conditions: string[] = [];
const parameters: unknown[] = [];
const add = (condition: (parameter: string) => string, value: unknown) => {
parameters.push(value);
conditions.push(condition(`$${parameters.length}`));
};
if (query.actorUserId) {
add((parameter) => `event.actor_user_id = ${parameter}`, query.actorUserId);
}
if (query.actorUsername) {
add(
(parameter) => `event.actor_username ILIKE ${parameter}`,
`%${query.actorUsername}%`,
);
}
if (query.action) {
add((parameter) => `event.action = ${parameter}`, query.action);
}
if (query.source) {
add((parameter) => `event.source = ${parameter}`, query.source);
}
if (query.entityType) {
add((parameter) => `event.entity_type = ${parameter}`, query.entityType);
}
if (query.entityId) {
add((parameter) => `event.entity_id = ${parameter}`, query.entityId);
}
if (query.requestId) {
add((parameter) => `event.request_id = ${parameter}`, query.requestId);
}
if (query.from) {
add((parameter) => `event.occurred_at >= ${parameter}`, new Date(query.from));
}
if (query.to) {
add((parameter) => `event.occurred_at <= ${parameter}`, new Date(query.to));
}
if (query.search) {
add(
(parameter) => `
(
event.actor_username ILIKE ${parameter}
OR event.action ILIKE ${parameter}
OR event.entity_type ILIKE ${parameter}
OR event.entity_id ILIKE ${parameter}
OR event.request_id ILIKE ${parameter}
)
`,
`%${query.search}%`,
);
}
return {
clause: conditions.length > 0 ? `WHERE ${conditions.join(' AND ')}` : '',
parameters,
};
}