mirror of
https://github.com/SillyTavern/SillyTavern.git
synced 2025-06-05 21:59:27 +02:00
Hide/unhide messages
This commit is contained in:
@ -31,6 +31,7 @@ import { getRegexedString, regex_placement } from "./extensions/regex/engine.js"
|
||||
import { chat_styles, power_user } from "./power-user.js";
|
||||
import { autoSelectPersona } from "./personas.js";
|
||||
import { getContext } from "./extensions.js";
|
||||
import { hideChatMessage, unhideChatMessage } from "./chats.js";
|
||||
export {
|
||||
executeSlashCommands,
|
||||
registerSlashCommand,
|
||||
@ -138,6 +139,8 @@ parser.addCommand('ask', askCharacter, [], '<span class="monospace">(prompt)</sp
|
||||
parser.addCommand('delname', deleteMessagesByNameCallback, ['cancel'], '<span class="monospace">(name)</span> – deletes all messages attributed to a specified name', true, true);
|
||||
parser.addCommand('send', sendUserMessageCallback, ['add'], '<span class="monospace">(text)</span> – adds a user message to the chat log without triggering a generation', true, true);
|
||||
parser.addCommand('trigger', triggerGroupMessageCallback, [], '<span class="monospace">(member index or name)</span> – triggers a message generation for the specified group member', true, true);
|
||||
parser.addCommand('hide', hideMessageCallback, [], '<span class="monospace">(message index)</span> – hides a chat message from the prompt', true, true);
|
||||
parser.addCommand('unhide', unhideMessageCallback, [], '<span class="monospace">(message index)</span> – unhides a message from the prompt', true, true);
|
||||
|
||||
const NARRATOR_NAME_KEY = 'narrator_name';
|
||||
const NARRATOR_NAME_DEFAULT = 'System';
|
||||
@ -225,6 +228,40 @@ async function askCharacter(_, text) {
|
||||
eventSource.on(event_types.CHARACTER_MESSAGE_RENDERED, restoreCharacter);
|
||||
}
|
||||
|
||||
async function hideMessageCallback(_, arg) {
|
||||
if (!arg) {
|
||||
console.warn('WARN: No argument provided for /hide command');
|
||||
return;
|
||||
}
|
||||
|
||||
const messageId = Number(arg);
|
||||
const messageBlock = $(`.mes[mesid="${messageId}"]`);
|
||||
|
||||
if (!messageBlock.length) {
|
||||
console.warn(`WARN: No message found with ID ${messageId}`);
|
||||
return;
|
||||
}
|
||||
|
||||
await hideChatMessage(messageId, messageBlock);
|
||||
}
|
||||
|
||||
async function unhideMessageCallback(_, arg) {
|
||||
if (!arg) {
|
||||
console.warn('WARN: No argument provided for /unhide command');
|
||||
return;
|
||||
}
|
||||
|
||||
const messageId = Number(arg);
|
||||
const messageBlock = $(`.mes[mesid="${messageId}"]`);
|
||||
|
||||
if (!messageBlock.length) {
|
||||
console.warn(`WARN: No message found with ID ${messageId}`);
|
||||
return;
|
||||
}
|
||||
|
||||
await unhideChatMessage(messageId, messageBlock);
|
||||
}
|
||||
|
||||
async function triggerGroupMessageCallback(_, arg) {
|
||||
if (!selected_group) {
|
||||
toastr.warning("Cannot run this command outside of a group chat.");
|
||||
|
Reference in New Issue
Block a user