Fix issues with reasoning add/delete

25d1db3852b2b2f03740f6e36a691f46cce95907

Wolfsblvt <wolfsblvt@gmail.com>

2 files changed, +11 -6Ignore whitespace
public/script.js+5 -3
@@ -2276,10 +2276,12 @@ function getMessageFromTemplate({
22762276 * @param {number} messageId Message ID
22772277 * @param {object} message Message object
22782278 */
22792279export function updateMessageBlock(messageId, message, { rerenderMessage = true } = {}) {
22802280 const messageElement = $(`#chat [mesid="${messageId}"]`);
2281- const text = message?.extra?.display_text ?? message.mes;
2281+ if (rerenderMessage) {
2282- messageElement.find('.mes_text').html(messageFormatting(text, message.name, message.is_system, message.is_user, messageId, {}, false));
2282+ const text = message?.extra?.display_text ?? message.mes;
2283+ messageElement.find('.mes_text').html(messageFormatting(text, message.name, message.is_system, message.is_user, messageId, {}, false));
2284+ }
22832285 messageElement.find('.mes_reasoning').html(messageFormatting(message.extra?.reasoning ?? '', '', false, false, messageId, {}, true));
22842286 messageElement.toggleClass('reasoning', !!message.extra?.reasoning);
22852287 addCopyToCodeBlocks(messageElement);
public/scripts/reasoning.js+6 -3
@@ -401,7 +401,7 @@ function setReasoningEventHandlers() {
401401 });
402402
403403 $(document).on('click', '.mes_edit_add_reasoning', async function () {
404404 const { message, messageId, messageBlock } = getMessageFromJquery(this);
405405 if (!message?.extra) {
406406 return;
407407 }
@@ -412,7 +412,8 @@ function setReasoningEventHandlers() {
412412 }
413413
414414 message.extra.reasoning = PromptReasoning.REASONING_PLACEHOLDER;
415415 updateMessageBlock(messageId, message, { rerenderMessage: false });
416+ messageBlock.find('.mes_reasoning_edit').trigger('click');
416417 await saveChatConditional();
417418 });
418419
@@ -426,13 +427,15 @@ function setReasoningEventHandlers() {
426427 return;
427428 }
428429
429430 const { message, messageId, messageBlock } = getMessageFromJquery(this);
430431 if (!message?.extra) {
431432 return;
432433 }
433434 message.extra.reasoning = '';
434435 await saveChatConditional();
435436 updateMessageBlock(messageId, message);
437+ const textarea = messageBlock.find('.reasoning_edit_textarea');
438+ textarea.remove();
436439 });
437440
438441 $(document).on('pointerup', '.mes_reasoning_copy', async function () {