mirror of
https://github.com/danny-avila/LibreChat.git
synced 2025-12-18 01:10:14 +01:00
add RQ to clear all conversations
This commit is contained in:
parent
94e0636b32
commit
dd0a91a9f6
3 changed files with 19 additions and 36 deletions
|
|
@ -1,27 +1,27 @@
|
||||||
import React from 'react';
|
import { useEffect } from 'react';
|
||||||
import store from '~/store';
|
import store from '~/store';
|
||||||
import TrashIcon from '../svg/TrashIcon';
|
import TrashIcon from '../svg/TrashIcon';
|
||||||
import { useSWRConfig } from 'swr';
|
|
||||||
import manualSWR from '~/utils/fetchers';
|
|
||||||
import { Dialog, DialogTrigger } from '../ui/Dialog.tsx';
|
import { Dialog, DialogTrigger } from '../ui/Dialog.tsx';
|
||||||
import DialogTemplate from '../ui/DialogTemplate';
|
import DialogTemplate from '../ui/DialogTemplate';
|
||||||
|
import { useDeleteConversationMutation } from '~/data-provider';
|
||||||
|
|
||||||
export default function ClearConvos() {
|
export default function ClearConvos() {
|
||||||
const { newConversation } = store.useConversation();
|
const { newConversation } = store.useConversation();
|
||||||
const { refreshConversations } = store.useConversations();
|
const { refreshConversations } = store.useConversations();
|
||||||
const { mutate } = useSWRConfig();
|
const clearConvosMutation = useDeleteConversationMutation();
|
||||||
|
|
||||||
const { trigger } = manualSWR(`/api/convos/clear`, 'post', () => {
|
|
||||||
newConversation();
|
|
||||||
refreshConversations();
|
|
||||||
mutate(`/api/convos`);
|
|
||||||
});
|
|
||||||
|
|
||||||
const clickHandler = () => {
|
const clickHandler = () => {
|
||||||
console.log('Clearing conversations...');
|
console.log('Clearing conversations...');
|
||||||
trigger({});
|
clearConvosMutation.mutate({});
|
||||||
};
|
};
|
||||||
|
|
||||||
|
useEffect(() => {
|
||||||
|
if (clearConvosMutation.isSuccess) {
|
||||||
|
newConversation();
|
||||||
|
refreshConversations();
|
||||||
|
}
|
||||||
|
}, [clearConvosMutation.isSuccess]);
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<Dialog>
|
<Dialog>
|
||||||
<DialogTrigger asChild>
|
<DialogTrigger asChild>
|
||||||
|
|
|
||||||
|
|
@ -61,11 +61,7 @@ export const useGetConversationByIdQuery = (
|
||||||
export const useUpdateConversationMutation = (
|
export const useUpdateConversationMutation = (
|
||||||
id: string
|
id: string
|
||||||
): UseMutationResult<
|
): UseMutationResult<
|
||||||
t.TUpdateConversationResponse,
|
t.TUpdateConversationResponse> => {
|
||||||
unknown,
|
|
||||||
t.TUpdateConversationRequest,
|
|
||||||
unknown
|
|
||||||
> => {
|
|
||||||
const queryClient = useQueryClient();
|
const queryClient = useQueryClient();
|
||||||
return useMutation(
|
return useMutation(
|
||||||
(payload: t.TUpdateConversationRequest) =>
|
(payload: t.TUpdateConversationRequest) =>
|
||||||
|
|
@ -80,8 +76,8 @@ export const useUpdateConversationMutation = (
|
||||||
};
|
};
|
||||||
|
|
||||||
export const useDeleteConversationMutation = (
|
export const useDeleteConversationMutation = (
|
||||||
id: string
|
id?: string
|
||||||
): UseMutationResult<t.TDeleteConversationResponse, unknown, t.TDeleteConversationRequest, unknown> => {
|
): UseMutationResult<t.TDeleteConversationResponse> => {
|
||||||
const queryClient = useQueryClient();
|
const queryClient = useQueryClient();
|
||||||
return useMutation(
|
return useMutation(
|
||||||
(payload: t.TDeleteConversationRequest) =>
|
(payload: t.TDeleteConversationRequest) =>
|
||||||
|
|
@ -95,12 +91,7 @@ export const useDeleteConversationMutation = (
|
||||||
);
|
);
|
||||||
};
|
};
|
||||||
|
|
||||||
export const useUpdateCustomGptMutation = (): UseMutationResult<
|
export const useUpdateCustomGptMutation = (): UseMutationResult<t.TUpdateCustomGptResponse> => {
|
||||||
t.TUpdateCustomGptResponse,
|
|
||||||
unknown,
|
|
||||||
t.TUpdateCustomGptRequest,
|
|
||||||
unknown
|
|
||||||
> => {
|
|
||||||
const queryClient = useQueryClient();
|
const queryClient = useQueryClient();
|
||||||
return useMutation(
|
return useMutation(
|
||||||
(payload: t.TUpdateCustomGptRequest) =>
|
(payload: t.TUpdateCustomGptRequest) =>
|
||||||
|
|
@ -124,12 +115,7 @@ export const useGetCustomGptsQuery = (): QueryObserverResult<
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
export const useDeleteCustomGptMutation = (): UseMutationResult<
|
export const useDeleteCustomGptMutation = (): UseMutationResult<t.TDeleteCustomGptResponse> => {
|
||||||
t.TDeleteCustomGptResponse,
|
|
||||||
unknown,
|
|
||||||
t.TDeleteCustomGptRequest,
|
|
||||||
unknown
|
|
||||||
> => {
|
|
||||||
const queryClient = useQueryClient();
|
const queryClient = useQueryClient();
|
||||||
return useMutation(
|
return useMutation(
|
||||||
(payload: t.TDeleteCustomGptRequest) =>
|
(payload: t.TDeleteCustomGptRequest) =>
|
||||||
|
|
@ -142,10 +128,7 @@ export const useDeleteCustomGptMutation = (): UseMutationResult<
|
||||||
);
|
);
|
||||||
};
|
};
|
||||||
|
|
||||||
export const useGetModelsQuery = (): QueryObserverResult<
|
export const useGetModelsQuery = (): QueryObserverResult<t.TGetModelsResponse> => {
|
||||||
t.TGetModelsResponse,
|
|
||||||
unknown
|
|
||||||
> => {
|
|
||||||
return useQuery([QueryKeys.models], () => dataService.getModels(), {
|
return useQuery([QueryKeys.models], () => dataService.getModels(), {
|
||||||
refetchOnWindowFocus: false,
|
refetchOnWindowFocus: false,
|
||||||
refetchOnReconnect: false,
|
refetchOnReconnect: false,
|
||||||
|
|
|
||||||
|
|
@ -158,8 +158,8 @@ export type TUpdateConversationResponse = {
|
||||||
};
|
};
|
||||||
|
|
||||||
export type TDeleteConversationRequest = {
|
export type TDeleteConversationRequest = {
|
||||||
conversationId: string,
|
conversationId?: string,
|
||||||
source: string
|
source?: string
|
||||||
}
|
}
|
||||||
|
|
||||||
export type TDeleteConversationResponse = {
|
export type TDeleteConversationResponse = {
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue