Create cancelNudges, to remove the query result when sending a message

This commit is contained in:
Lucas Oliveira 2025-09-05 17:00:52 -03:00
parent 9e78798a04
commit 01b10d403a
2 changed files with 10 additions and 6 deletions

View file

@ -17,7 +17,11 @@ export const useGetNudgesQuery = (
options?: Omit<UseQueryOptions, "queryKey" | "queryFn">,
) => {
const queryClient = useQueryClient();
console.log(chatId);
function cancel() {
queryClient.removeQueries({ queryKey: ["nudges", chatId] });
}
async function getNudges(): Promise<Nudge[]> {
try {
const response = await fetch(`/api/nudges${chatId ? `/${chatId}` : ""}`);
@ -38,5 +42,5 @@ export const useGetNudgesQuery = (
queryClient,
);
return queryResult;
return { ...queryResult, cancel };
};

View file

@ -619,7 +619,7 @@ function ChatPage() {
};
}, [isFilterDropdownOpen]);
const { data: nudges = [], refetch: refetchNudges } = useGetNudgesQuery(
const { data: nudges = [], cancel: cancelNudges } = useGetNudgesQuery(
previousResponseIds[endpoint],
);
@ -1275,7 +1275,7 @@ function ChatPage() {
setMessages((prev) => [...prev, finalMessage]);
setStreamingMessage(null);
if (previousResponseIds[endpoint]) {
refetchNudges();
cancelNudges();
}
}
@ -1394,7 +1394,7 @@ function ChatPage() {
};
setMessages((prev) => [...prev, assistantMessage]);
if (result.response_id) {
refetchNudges();
cancelNudges();
}
// Store the response ID if present for this endpoint
@ -1968,7 +1968,7 @@ function ChatPage() {
{/* Suggestion chips - always show unless streaming */}
{!streamingMessage && (
<Nudges
nudges={nudges as string[]}
nudges={loading ? [] : (nudges as string[])}
handleSuggestionClick={handleSuggestionClick}
/>
)}