2025-11-19 16:30:16 +01:00

45 lines
969 B
TypeScript

interface GetAuditsParams {
limit?: number;
page?: number;
sort?: string;
filter?: string;
entity?: string;
signal?: AbortSignal;
}
export async function getAudits({
limit,
page,
sort,
filter,
entity,
signal,
}: GetAuditsParams = {}) {
const params = new URLSearchParams();
if (limit) params.set("limit", String(limit));
if (page) params.set("page", String(page));
if (sort) params.set("sort", sort);
if (filter) params.set("filter", filter);
if (entity) params.set("Entity", entity);
const queryString = params.toString();
const response = await fetch(
`/api/dashboard/audits${queryString ? `?${queryString}` : ""}`,
{
method: "GET",
cache: "no-store",
signal,
}
);
if (!response.ok) {
const errorData = await response
.json()
.catch(() => ({ message: "Unknown error" }));
throw new Error(errorData.message || "Failed to fetch audits");
}
return response.json();
}