add RQ to clear all conversations

This commit is contained in:
Daniel D Orlando 2023-04-03 12:55:24 -07:00
parent 94e0636b32
commit dd0a91a9f6
3 changed files with 19 additions and 36 deletions

View file

@ -1,27 +1,27 @@
import React from 'react';
import { useEffect } from 'react';
import store from '~/store';
import TrashIcon from '../svg/TrashIcon';
import { useSWRConfig } from 'swr';
import manualSWR from '~/utils/fetchers';
import { Dialog, DialogTrigger } from '../ui/Dialog.tsx';
import DialogTemplate from '../ui/DialogTemplate';
import { useDeleteConversationMutation } from '~/data-provider';
export default function ClearConvos() {
const { newConversation } = store.useConversation();
const { refreshConversations } = store.useConversations();
const { mutate } = useSWRConfig();
const { trigger } = manualSWR(`/api/convos/clear`, 'post', () => {
newConversation();
refreshConversations();
mutate(`/api/convos`);
});
const clearConvosMutation = useDeleteConversationMutation();
const clickHandler = () => {
console.log('Clearing conversations...');
trigger({});
clearConvosMutation.mutate({});
};
useEffect(() => {
if (clearConvosMutation.isSuccess) {
newConversation();
refreshConversations();
}
}, [clearConvosMutation.isSuccess]);
return (
<Dialog>
<DialogTrigger asChild>

View file

@ -61,11 +61,7 @@ export const useGetConversationByIdQuery = (
export const useUpdateConversationMutation = (
id: string
): UseMutationResult<
t.TUpdateConversationResponse,
unknown,
t.TUpdateConversationRequest,
unknown
> => {
t.TUpdateConversationResponse> => {
const queryClient = useQueryClient();
return useMutation(
(payload: t.TUpdateConversationRequest) =>
@ -80,8 +76,8 @@ export const useUpdateConversationMutation = (
};
export const useDeleteConversationMutation = (
id: string
): UseMutationResult<t.TDeleteConversationResponse, unknown, t.TDeleteConversationRequest, unknown> => {
id?: string
): UseMutationResult<t.TDeleteConversationResponse> => {
const queryClient = useQueryClient();
return useMutation(
(payload: t.TDeleteConversationRequest) =>
@ -95,12 +91,7 @@ export const useDeleteConversationMutation = (
);
};
export const useUpdateCustomGptMutation = (): UseMutationResult<
t.TUpdateCustomGptResponse,
unknown,
t.TUpdateCustomGptRequest,
unknown
> => {
export const useUpdateCustomGptMutation = (): UseMutationResult<t.TUpdateCustomGptResponse> => {
const queryClient = useQueryClient();
return useMutation(
(payload: t.TUpdateCustomGptRequest) =>
@ -124,12 +115,7 @@ export const useGetCustomGptsQuery = (): QueryObserverResult<
});
};
export const useDeleteCustomGptMutation = (): UseMutationResult<
t.TDeleteCustomGptResponse,
unknown,
t.TDeleteCustomGptRequest,
unknown
> => {
export const useDeleteCustomGptMutation = (): UseMutationResult<t.TDeleteCustomGptResponse> => {
const queryClient = useQueryClient();
return useMutation(
(payload: t.TDeleteCustomGptRequest) =>
@ -142,10 +128,7 @@ export const useDeleteCustomGptMutation = (): UseMutationResult<
);
};
export const useGetModelsQuery = (): QueryObserverResult<
t.TGetModelsResponse,
unknown
> => {
export const useGetModelsQuery = (): QueryObserverResult<t.TGetModelsResponse> => {
return useQuery([QueryKeys.models], () => dataService.getModels(), {
refetchOnWindowFocus: false,
refetchOnReconnect: false,

View file

@ -158,8 +158,8 @@ export type TUpdateConversationResponse = {
};
export type TDeleteConversationRequest = {
conversationId: string,
source: string
conversationId?: string,
source?: string
}
export type TDeleteConversationResponse = {