import { useState, useEffect, useCallback } from 'react'; import { Dialog, DialogTemplate } from '../ui/'; import { ClearChatsButton } from './SettingsTabs/'; import { useClearConversationsMutation } from '@librechat/data-provider'; import store from '~/store'; import { useRecoilValue } from 'recoil'; import { localize } from '~/localization/Translation'; const ClearConvos = ({ open, onOpenChange }) => { const { newConversation } = store.useConversation(); const { refreshConversations } = store.useConversations(); const clearConvosMutation = useClearConversationsMutation(); const [confirmClear, setConfirmClear] = useState(false); const lang = useRecoilValue(store.lang); const clearConvos = useCallback(() => { if (confirmClear) { console.log('Clearing conversations...'); clearConvosMutation.mutate({}); setConfirmClear(false); } else { setConfirmClear(true); } }, [confirmClear, clearConvosMutation]); useEffect(() => { if (clearConvosMutation.isSuccess) { refreshConversations(); newConversation(); } }, [clearConvosMutation.isSuccess, newConversation, refreshConversations]); return ( } /> ); }; export default ClearConvos;