mirror of
https://github.com/SillyTavern/SillyTavern.git
synced 2025-06-05 21:59:27 +02:00
Cancel debounced metadata save before clearing chat
This commit is contained in:
@ -183,7 +183,7 @@ import {
|
|||||||
} from './scripts/utils.js';
|
} from './scripts/utils.js';
|
||||||
import { debounce_timeout, IGNORE_SYMBOL } from './scripts/constants.js';
|
import { debounce_timeout, IGNORE_SYMBOL } from './scripts/constants.js';
|
||||||
|
|
||||||
import { doDailyExtensionUpdatesCheck, extension_settings, initExtensions, loadExtensionSettings, runGenerationInterceptors, saveMetadataDebounced } from './scripts/extensions.js';
|
import { cancelDebouncedMetadataSave, doDailyExtensionUpdatesCheck, extension_settings, initExtensions, loadExtensionSettings, runGenerationInterceptors, saveMetadataDebounced } from './scripts/extensions.js';
|
||||||
import { COMMENT_NAME_DEFAULT, executeSlashCommandsOnChatInput, getSlashCommandsHelp, initDefaultSlashCommands, isExecutingCommandsFromChatInput, pauseScriptExecution, processChatSlashCommands, stopScriptExecution } from './scripts/slash-commands.js';
|
import { COMMENT_NAME_DEFAULT, executeSlashCommandsOnChatInput, getSlashCommandsHelp, initDefaultSlashCommands, isExecutingCommandsFromChatInput, pauseScriptExecution, processChatSlashCommands, stopScriptExecution } from './scripts/slash-commands.js';
|
||||||
import {
|
import {
|
||||||
tag_map,
|
tag_map,
|
||||||
@ -1992,6 +1992,7 @@ export function cancelDebouncedChatSave() {
|
|||||||
|
|
||||||
export async function clearChat() {
|
export async function clearChat() {
|
||||||
cancelDebouncedChatSave();
|
cancelDebouncedChatSave();
|
||||||
|
cancelDebouncedMetadataSave();
|
||||||
closeMessageEditor();
|
closeMessageEditor();
|
||||||
extension_prompts = {};
|
extension_prompts = {};
|
||||||
if (is_delete_mode) {
|
if (is_delete_mode) {
|
||||||
|
@ -58,14 +58,20 @@ let requiresReload = false;
|
|||||||
let stateChanged = false;
|
let stateChanged = false;
|
||||||
let saveMetadataTimeout = null;
|
let saveMetadataTimeout = null;
|
||||||
|
|
||||||
|
export function cancelDebouncedMetadataSave() {
|
||||||
|
if (saveMetadataTimeout) {
|
||||||
|
console.debug('Debounced metadata save cancelled');
|
||||||
|
clearTimeout(saveMetadataTimeout);
|
||||||
|
saveMetadataTimeout = null;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
export function saveMetadataDebounced() {
|
export function saveMetadataDebounced() {
|
||||||
const context = getContext();
|
const context = getContext();
|
||||||
const groupId = context.groupId;
|
const groupId = context.groupId;
|
||||||
const characterId = context.characterId;
|
const characterId = context.characterId;
|
||||||
|
|
||||||
if (saveMetadataTimeout) {
|
cancelDebouncedMetadataSave();
|
||||||
clearTimeout(saveMetadataTimeout);
|
|
||||||
}
|
|
||||||
|
|
||||||
saveMetadataTimeout = setTimeout(async () => {
|
saveMetadataTimeout = setTimeout(async () => {
|
||||||
const newContext = getContext();
|
const newContext = getContext();
|
||||||
|
Reference in New Issue
Block a user