mirror of
https://github.com/SillyTavern/SillyTavern.git
synced 2025-06-05 21:59:27 +02:00
Merge branch 'staging' of https://github.com/Cohee1207/SillyTavern into staging
This commit is contained in:
@ -667,6 +667,10 @@ function saveQROrder() {
|
||||
});
|
||||
}
|
||||
|
||||
let onMessageSentExecuting = false;
|
||||
let onMessageReceivedExecuting = false;
|
||||
let onChatChangedExecuting = false;
|
||||
|
||||
/**
|
||||
* Executes quick replies on message received.
|
||||
* @param {number} index New message index
|
||||
@ -675,14 +679,21 @@ function saveQROrder() {
|
||||
async function onMessageReceived(index) {
|
||||
if (!extension_settings.quickReply.quickReplyEnabled) return;
|
||||
|
||||
for (let i = 0; i < extension_settings.quickReply.numberOfSlots; i++) {
|
||||
const qr = extension_settings.quickReply.quickReplySlots[i];
|
||||
if (qr?.autoExecute_botMessage) {
|
||||
const message = getContext().chat[index];
|
||||
if (message?.mes && message?.mes !== '...') {
|
||||
await sendQuickReply(i);
|
||||
if (onMessageReceivedExecuting) return;
|
||||
|
||||
try {
|
||||
onMessageReceivedExecuting = true;
|
||||
for (let i = 0; i < extension_settings.quickReply.numberOfSlots; i++) {
|
||||
const qr = extension_settings.quickReply.quickReplySlots[i];
|
||||
if (qr?.autoExecute_botMessage) {
|
||||
const message = getContext().chat[index];
|
||||
if (message?.mes && message?.mes !== '...') {
|
||||
await sendQuickReply(i);
|
||||
}
|
||||
}
|
||||
}
|
||||
} finally {
|
||||
onMessageReceivedExecuting = false;
|
||||
}
|
||||
}
|
||||
|
||||
@ -694,14 +705,21 @@ async function onMessageReceived(index) {
|
||||
async function onMessageSent(index) {
|
||||
if (!extension_settings.quickReply.quickReplyEnabled) return;
|
||||
|
||||
for (let i = 0; i < extension_settings.quickReply.numberOfSlots; i++) {
|
||||
const qr = extension_settings.quickReply.quickReplySlots[i];
|
||||
if (qr?.autoExecute_userMessage) {
|
||||
const message = getContext().chat[index];
|
||||
if (message?.mes && message?.mes !== '...') {
|
||||
await sendQuickReply(i);
|
||||
if (onMessageSentExecuting) return;
|
||||
|
||||
try {
|
||||
onMessageSentExecuting = true;
|
||||
for (let i = 0; i < extension_settings.quickReply.numberOfSlots; i++) {
|
||||
const qr = extension_settings.quickReply.quickReplySlots[i];
|
||||
if (qr?.autoExecute_userMessage) {
|
||||
const message = getContext().chat[index];
|
||||
if (message?.mes && message?.mes !== '...') {
|
||||
await sendQuickReply(i);
|
||||
}
|
||||
}
|
||||
}
|
||||
} finally {
|
||||
onMessageSentExecuting = false;
|
||||
}
|
||||
}
|
||||
|
||||
@ -713,11 +731,18 @@ async function onMessageSent(index) {
|
||||
async function onChatChanged(chatId) {
|
||||
if (!extension_settings.quickReply.quickReplyEnabled) return;
|
||||
|
||||
for (let i = 0; i < extension_settings.quickReply.numberOfSlots; i++) {
|
||||
const qr = extension_settings.quickReply.quickReplySlots[i];
|
||||
if (qr?.autoExecute_chatLoad && chatId) {
|
||||
await sendQuickReply(i);
|
||||
if (onChatChangedExecuting) return;
|
||||
|
||||
try {
|
||||
onChatChangedExecuting = true;
|
||||
for (let i = 0; i < extension_settings.quickReply.numberOfSlots; i++) {
|
||||
const qr = extension_settings.quickReply.quickReplySlots[i];
|
||||
if (qr?.autoExecute_chatLoad && chatId) {
|
||||
await sendQuickReply(i);
|
||||
}
|
||||
}
|
||||
} finally {
|
||||
onChatChangedExecuting = false;
|
||||
}
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user