Add files via upload

This commit is contained in:
RT15548
2025-12-28 00:49:25 +08:00
committed by GitHub
parent 50495bfb50
commit a693c55e50
20 changed files with 12823 additions and 8731 deletions

View File

@@ -164,7 +164,7 @@ function bindMessageEvents() {
messageEvents.on(event_types.MESSAGE_SENT, () => {});
messageEvents.on(event_types.MESSAGE_RECEIVED, refreshOnAI);
messageEvents.on(event_types.MESSAGE_DELETED, () => {});
messageEvents.on(event_types.MESSAGE_DELETED, refreshOnAI);
messageEvents.on(event_types.MESSAGE_UPDATED, refreshOnAI);
messageEvents.on(event_types.MESSAGE_SWIPED, refreshOnAI);
if (event_types.GENERATION_STARTED) {
@@ -257,26 +257,32 @@ function findLastAIMessage() {
return $aiMessages.length ? $($aiMessages.last()) : null;
}
function showSingleModeMessages() {
const $messages = $(SEL.mes);
if (!$messages.length) return;
$messages.hide();
const $targetAI = findLastAIMessage();
if ($targetAI?.length) {
$targetAI.show();
const $prevUser = $targetAI.prevAll('.mes[is_user="true"]').first();
if ($prevUser.length) {
$prevUser.show();
}
$targetAI.nextAll('.mes').show();
addNavigationToLastTwoMessages();
}
}
function showSingleModeMessages() {
const $messages = $(SEL.mes);
if (!$messages.length) return;
$messages.hide();
const $targetAI = findLastAIMessage();
if ($targetAI?.length) {
$targetAI.show();
const $prevMessage = $targetAI.prevAll('.mes').first();
if ($prevMessage.length) {
$prevMessage.show();
}
$targetAI.nextAll('.mes').show();
addNavigationToLastTwoMessages();
} else {
const $lastMessages = $messages.slice(-2);
if ($lastMessages.length) {
$lastMessages.show();
addNavigationToLastTwoMessages();
}
}
}
function addNavigationToLastTwoMessages() {
hideNavigationButtons();
@@ -371,16 +377,23 @@ function updateSwipesCounter($targetMes) {
}
$swipesCounter.html('1​/​1');
}
function toggleDisplayMode() {
if (!state.isActive) return;
const settings = getSettings();
settings.showAllMessages = !settings.showAllMessages;
applyModeClasses();
updateMessageDisplay();
saveSettingsDebounced();
}
function scrollToBottom() {
const chatContainer = document.getElementById('chat');
if (chatContainer) {
requestAnimationFrame(() => {
chatContainer.scrollTop = chatContainer.scrollHeight;
});
}
}
function toggleDisplayMode() {
if (!state.isActive) return;
const settings = getSettings();
settings.showAllMessages = !settings.showAllMessages;
applyModeClasses();
updateMessageDisplay();
saveSettingsDebounced();
scrollToBottom();
}
function handleSwipe(swipeSelector, $targetMes) {