diff --git a/api/server/routes/askBing.js b/api/server/routes/askBing.js index 535b580ed5..ffadc8a493 100644 --- a/api/server/routes/askBing.js +++ b/api/server/routes/askBing.js @@ -2,7 +2,7 @@ const express = require('express'); const crypto = require('crypto'); const router = express.Router(); const { titleConvo, askBing } = require('../../app/'); -const { saveBingMessage, getConvoTitle, saveConvo, updateConvo } = require('../../models'); +const { saveBingMessage, getConvoTitle, saveConvo } = require('../../models'); const { handleError, sendMessage, createOnProgress, handleText } = require('./handlers'); router.post('/', async (req, res) => { @@ -123,7 +123,7 @@ const ask = async ({ // Attition: the api will also create new conversationId while using invalid userMessage.parentMessageId, // but in this situation, don't change the conversationId, but create new convo. if (conversationId != userMessage.conversationId && isNewConversation) - await updateConvo( + await saveConvo( req?.session?.user?.username, { conversationId: conversationId, @@ -148,7 +148,7 @@ const ask = async ({ response.text = await handleText(response, true); await saveBingMessage(response); - await updateConvo(req?.session?.user?.username, { model, chatGptLabel: null, promptPrefix: null, ...convo, ...response }); + await saveConvo(req?.session?.user?.username, { model, chatGptLabel: null, promptPrefix: null, ...convo, ...response }); sendMessage(res, { title: await getConvoTitle(req?.session?.user?.username, conversationId), @@ -161,9 +161,11 @@ const ask = async ({ if (userParentMessageId == '00000000-0000-0000-0000-000000000000') { const title = await titleConvo({ model, text, response }); - await updateConvo( + await saveConvo( req?.session?.user?.username, { + ...convo, + ...response, conversationId, title } @@ -185,4 +187,4 @@ const ask = async ({ } }; -module.exports = router; +module.exports = router; \ No newline at end of file diff --git a/api/server/routes/convos.js b/api/server/routes/convos.js index 7b2f9c72f9..656caa0e1b 100644 --- a/api/server/routes/convos.js +++ b/api/server/routes/convos.js @@ -41,11 +41,17 @@ router.post('/gen_title', async (req, res) => { router.post('/clear', async (req, res) => { let filter = {}; - const { conversationId } = req.body.arg; + const { conversationId, source } = req.body.arg; if (conversationId) { filter = { conversationId }; } + console.log('source:', source); + + if (source === 'button' && !conversationId) { + return res.status(200).send('No conversationId provided'); + } + try { const dbResponse = await deleteConvos(req?.session?.user?.username, filter); res.status(201).send(dbResponse); diff --git a/client/src/components/Conversations/DeleteButton.jsx b/client/src/components/Conversations/DeleteButton.jsx index d2be57c4fc..79895169f1 100644 --- a/client/src/components/Conversations/DeleteButton.jsx +++ b/client/src/components/Conversations/DeleteButton.jsx @@ -21,7 +21,7 @@ export default function DeleteButton({ conversationId, renaming, cancelHandler, } ); - const clickHandler = () => trigger({ conversationId }); + const clickHandler = () => trigger({ conversationId, source: 'button' }); const handler = renaming ? cancelHandler : clickHandler; return (