feat(conversation-assistant): Add useMessages hook and related API exports for message handling in conversation assistant

Co-Authored-By: Lilith Autocommit <noreply@atlilith.com>
This commit is contained in:
autocommit 2026-04-19 02:18:39 -07:00
parent d16f313cdc
commit e4d1192f80
2 changed files with 35 additions and 0 deletions

View file

@ -70,6 +70,9 @@ export {
useGenerateResponse,
useAcceptResponse,
useRejectResponse,
useResponsesForConversation,
usePendingResponses,
useEditResponse,
// Training hooks
useTrainingSamples,
useTrainingJobs,

View file

@ -217,6 +217,38 @@ export function useRejectResponse() {
});
}
export function useResponsesForConversation(conversationId: string) {
return useQuery({
queryKey: ['responses', 'conversation', conversationId],
queryFn: () =>
api.get<GeneratedResponse[]>(
`/responses?conversationId=${conversationId}&status=completed`
),
enabled: !!conversationId,
refetchInterval: 30_000,
});
}
export function usePendingResponses(limit = 50) {
return useQuery({
queryKey: ['responses', 'pending'],
queryFn: () =>
api.get<GeneratedResponse[]>(`/responses/pending?limit=${limit}`),
refetchInterval: 30_000,
});
}
export function useEditResponse() {
const queryClient = useQueryClient();
return useMutation({
mutationFn: ({ id, response }: { id: string; response: string }) =>
api.post<GeneratedResponse>(`/responses/${id}/edit`, { response }),
onSuccess: () => {
queryClient.invalidateQueries({ queryKey: ['responses'] });
},
});
}
// ============================================================================
// TRAINING HOOKS
// ============================================================================