Thonk yeet

347a515c2553df5ff03d0f853be1732175f8d2ba

Cohee <18619528+Cohee1207@users.noreply.github.com>

3 files changed, +37 -5Showing whitespace changes
public/index.html+3 -0
@@ -6232,7 +6232,10 @@
6232 <details class="mes_reasoning_details">6232 <details class="mes_reasoning_details">
6233 <summary class="mes_reasoning_summary">6233 <summary class="mes_reasoning_summary">
6234 <span data-i18n="Reasoning">Reasoning</span>6234 <span data-i18n="Reasoning">Reasoning</span>
6235 <div class="mes_reasoning_actions">
6235 <div class="mes_reasoning_copy mes_button fa-solid fa-copy" title="Copy reasoning" data-i18n="[title]Copy reasoning"></div>6236 <div class="mes_reasoning_copy mes_button fa-solid fa-copy" title="Copy reasoning" data-i18n="[title]Copy reasoning"></div>
6237 <div class="mes_reasoning_delete mes_button fa-solid fa-trash-can" title="Remove reasoning" data-i18n="[title]Remove reasoning"></div>
6238 </div>
6236 </summary>6239 </summary>
6237 <div class="mes_reasoning"></div>6240 <div class="mes_reasoning"></div>
6238 </details>6241 </details>
public/scripts/chats.js+23 -1
@@ -23,6 +23,7 @@ import {
23 neutralCharacterName,23 neutralCharacterName,
24 updateChatMetadata,24 updateChatMetadata,
25 system_message_types,25 system_message_types,
26 updateMessageBlock,
26} from '../script.js';27} from '../script.js';
27import { selected_group } from './group-chats.js';28import { selected_group } from './group-chats.js';
28import { power_user } from './power-user.js';29import { power_user } from './power-user.js';
@@ -1573,9 +1574,30 @@ jQuery(function () {
1573 e.preventDefault();1574 e.preventDefault();
1574 });1575 });
15751576
1577 $(document).on('click', '.mes_reasoning_delete', async function (e) {
1578 e.stopPropagation();
1579 e.preventDefault();
1580
1581 const confirm = await Popup.show.confirm(t`Are you sure you want to clear the reasoning?`, t`Visible message contents will stay intact.`);
1582
1583 if (!confirm) {
1584 return;
1585 }
1586
1587 const mesBlock = $(this).closest('.mes');
1588 const mesId = Number(mesBlock.attr('mesid'));
1589 const message = chat[mesId];
1590 if (!message?.extra){
1591 return;
1592 }
1593 message.extra.reasoning = '';
1594 await saveChatConditional();
1595 updateMessageBlock(mesId, message);
1596 });
1597
1576 $(document).on('pointerup', '.mes_reasoning_copy', async function () {1598 $(document).on('pointerup', '.mes_reasoning_copy', async function () {
1577 const mesBlock = $(this).closest('.mes');1599 const mesBlock = $(this).closest('.mes');
1578 const mesId = mesBlock.attr('mesid');1600 const mesId = Number(mesBlock.attr('mesid'));
1579 const message = chat[mesId];1601 const message = chat[mesId];
1580 const reasoning = message?.extra?.reasoning;1602 const reasoning = message?.extra?.reasoning;
15811603
public/style.css+11 -4
@@ -348,7 +348,6 @@ input[type='checkbox']:focus-visible {
348 padding: 5px;348 padding: 5px;
349 margin: 5px 0;349 margin: 5px 0;
350 overflow-y: auto;350 overflow-y: auto;
351 max-height: 70vh;
352}351}
353352
354.mes_reasoning_summary {353.mes_reasoning_summary {
@@ -356,18 +355,26 @@ input[type='checkbox']:focus-visible {
356 position: relative;355 position: relative;
357}356}
358357
359.mes_reasoning_details:not([open]) .mes_reasoning_copy {358.mes_reasoning_details:not([open]) .mes_reasoning_actions {
360 display: none;359 display: none;
361}360}
362361
363.mes_reasoning_copy {362.mes_reasoning_actions {
364 position: absolute;363 position: absolute;
365 right: 0;364 right: 0;
366 top: 0;365 top: 0;
366
367 display: flex;
368 gap: 4px;
369 flex-wrap: nowrap;
370 justify-content: flex-end;
371 transition: all 200ms;
372 overflow-x: hidden;
373 padding: 1px;
367}374}
368375
369.mes_reasoning_summary > span {376.mes_reasoning_summary > span {
370 margin-left: 5px;377 margin-left: 0.5em;
371}378}
372379
373.mes_reasoning_details:has(.mes_reasoning:empty),380.mes_reasoning_details:has(.mes_reasoning:empty),