import { useQuery } from '@tanstack/react-query' import { ApiResource, ConversationValidateResource } from '../types' import { useApiClient } from './use_api_client' interface Props { payload: string | undefined isLoadingPayload?: boolean genderId?: string | null enabled?: boolean } export function useConversationValidate({ payload, isLoadingPayload = false, genderId, enabled = true, }: Props) { const apiClient = useApiClient() const { data, isLoading } = useQuery({ queryKey: ['chat', '/me/conversation_validate', { payload, genderId }], queryFn: () => apiClient.chat.post>({ url: '/me/conversation_validate', data: { data: { type: 'ConversationValidate', attributes: { payload: payload!, ...(genderId ? { gender_id: genderId } : {}), }, }, }, }), enabled: enabled && payload != null, retry: false, }) const warnings = data?.data.warnings ?? [] return { warnings, validationPending: enabled && (isLoadingPayload || isLoading), } }