"use client"; import { useState } from "react"; import { useQuery } from "@tanstack/react-query"; import { useTenantId } from "@/hooks/useTenantId"; import { experienceApi } from "@/modules/experience/services/experience-api"; import { ExperiencePageLoader, ExperiencePageError, ExperienceEmptyState } from "@/modules/experience/pages/shared"; import { PageHeader, Card, CardContent, Input, FormField, Button } from "@/components/ds"; import { ExperienceBreadcrumbs } from "@/modules/experience/components/ExperienceBreadcrumbs"; export const AuditLogsPage = function ExperienceAuditPage() { const { tenantId } = useTenantId(); const [entityType, setEntityType] = useState(""); const [entityId, setEntityId] = useState(""); const [submitted, setSubmitted] = useState<{ type?: string; id?: string } | null>(null); const q = useQuery({ queryKey: ["experience", tenantId, "audit", submitted], queryFn: () => experienceApi.audit.list(tenantId!, { entity_type: submitted?.type, entity_id: submitted?.id, limit: 50, }), enabled: !!tenantId, }); return (
setEntityType(e.target.value)} placeholder="page" /> setEntityId(e.target.value)} /> {q.isLoading ? : null} {q.error ? q.refetch()} /> : null} {!q.isLoading && !q.error && (q.data?.length ?? 0) === 0 ? : null}
{(q.data ?? []).map((log) => ( {String(log.action)} — {String(log.entity_type)} — {new Date(String(log.created_at)).toLocaleString("fa-IR")} ))}
); }; export default AuditLogsPage;