mirror of
https://github.com/open-webui/open-webui.git
synced 2026-02-24 04:00:31 +01:00
refac
This commit is contained in:
@@ -1653,21 +1653,27 @@
|
||||
|
||||
// Check if there are pending tasks (more reliable than lastMessage.done)
|
||||
if (taskIds !== null && taskIds.length > 0) {
|
||||
// Tasks pending - queue the message instead of blocking
|
||||
const _files = JSON.parse(JSON.stringify(files));
|
||||
messageQueue = [
|
||||
...messageQueue,
|
||||
{
|
||||
id: uuidv4(),
|
||||
prompt: userPrompt,
|
||||
files: _files
|
||||
}
|
||||
];
|
||||
// Clear input
|
||||
messageInput?.setText('');
|
||||
prompt = '';
|
||||
files = [];
|
||||
return;
|
||||
if ($settings?.enableMessageQueue ?? true) {
|
||||
// Queue the message
|
||||
const _files = JSON.parse(JSON.stringify(files));
|
||||
messageQueue = [
|
||||
...messageQueue,
|
||||
{
|
||||
id: uuidv4(),
|
||||
prompt: userPrompt,
|
||||
files: _files
|
||||
}
|
||||
];
|
||||
// Clear input
|
||||
messageInput?.setText('');
|
||||
prompt = '';
|
||||
files = [];
|
||||
return;
|
||||
} else {
|
||||
// Interrupt: stop current generation and proceed
|
||||
await stopResponse();
|
||||
await tick();
|
||||
}
|
||||
}
|
||||
|
||||
if (history?.currentId) {
|
||||
|
||||
@@ -58,6 +58,7 @@
|
||||
let insertFollowUpPrompt = false;
|
||||
|
||||
let regenerateMenu = true;
|
||||
let enableMessageQueue = true;
|
||||
|
||||
let landingPageMode = '';
|
||||
let chatBubble = true;
|
||||
@@ -224,6 +225,7 @@
|
||||
insertFollowUpPrompt = $settings?.insertFollowUpPrompt ?? false;
|
||||
|
||||
regenerateMenu = $settings?.regenerateMenu ?? true;
|
||||
enableMessageQueue = $settings?.enableMessageQueue ?? true;
|
||||
|
||||
largeTextAsFile = $settings?.largeTextAsFile ?? false;
|
||||
copyFormatted = $settings?.copyFormatted ?? false;
|
||||
@@ -584,6 +586,25 @@
|
||||
|
||||
<div class=" my-2 text-sm font-medium">{$i18n.t('Chat')}</div>
|
||||
|
||||
<div>
|
||||
<div class=" py-0.5 flex w-full justify-between">
|
||||
<div id="enable-message-queue-label" class=" self-center text-xs">
|
||||
{$i18n.t('Enable Message Queue')}
|
||||
</div>
|
||||
|
||||
<div class="flex items-center gap-2 p-1">
|
||||
<Switch
|
||||
ariaLabelledbyId="enable-message-queue-label"
|
||||
tooltip={true}
|
||||
bind:state={enableMessageQueue}
|
||||
on:change={() => {
|
||||
saveSettings({ enableMessageQueue });
|
||||
}}
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<div class=" py-0.5 flex w-full justify-between">
|
||||
<div id="chat-direction-label" class=" self-center text-xs">
|
||||
|
||||
Reference in New Issue
Block a user