import { useDataSource } from "@erp/core/hooks"; import { useIdentityAuthSession } from "@erp/identity/client"; import { type DefaultError, useQuery } from "@tanstack/react-query"; import { findAuditEntryById } from "../api/find-audit-entry-by-id.api"; import type { AuditEntryDetail } from "../entities/audit-entry-detail.entity"; import { auditQueryKeys } from "./audit-query-keys"; export const useAuditEntry = (id: string | null) => { const dataSource = useDataSource(); const { activeCompany } = useIdentityAuthSession(); const companyId = activeCompany?.id ?? "none"; return useQuery({ queryKey: auditQueryKeys.detail(companyId, id ?? "none"), queryFn: ({ signal }) => { if (!id) throw new Error("auditEntryId is required"); return findAuditEntryById(dataSource, { id, signal }); }, enabled: activeCompany !== null && id !== null, }); };