(open = false)}
transition:fadeFast|local
- class={'absolute top-0 bottom-0 left-0 right-0 z-[9999]'}
+ class={'fixed top-0 bottom-0 left-0 right-0 z-[9999]'}
role="dialog"
tabindex="-1"
>
diff --git a/frontend/src/lib/components/flows/content/FlowInput.svelte b/frontend/src/lib/components/flows/content/FlowInput.svelte
index aed8a0fa73..3d07aa1912 100644
--- a/frontend/src/lib/components/flows/content/FlowInput.svelte
+++ b/frontend/src/lib/components/flows/content/FlowInput.svelte
@@ -68,7 +68,7 @@
flowInputEditorState
} = getContext
('FlowEditorContext')
- let chatInputEnabled = $derived(Boolean(flowStore.val.value?.chat_input_enabled))
+ let chatInputEnabled = $state(Boolean(flowStore.val.value?.chat_input_enabled))
let shouldUseStreaming = $derived.by(() => {
const modules = flowStore.val.value?.modules
const lastModule = modules && modules.length > 0 ? modules[modules.length - 1] : undefined
@@ -117,6 +117,10 @@
}, 100)
})
+ $effect(() => {
+ chatInputEnabled = Boolean(flowStore.val.value?.chat_input_enabled)
+ })
+
const getDropdownItems = () => {
return [
{
@@ -398,7 +402,7 @@
}
function handleToggleChatMode() {
- if (!chatInputEnabled) {
+ if (!flowStore.val.value?.chat_input_enabled) {
// Check if there are existing inputs
if (hasOtherInputs()) {
showChatModeWarning = true
@@ -499,7 +503,10 @@
title="Enable Chat Mode?"
confirmationText="Continue"
onConfirmed={enableChatMode}
- onCanceled={() => (showChatModeWarning = false)}
+ onCanceled={() => {
+ showChatModeWarning = false
+ chatInputEnabled = false
+ }}
>
Enabling Chat Mode will replace all existing flow inputs with a single
@@ -516,9 +523,8 @@
{#if !disabled}
{
- e.preventDefault()
+ bind:checked={chatInputEnabled}
+ on:change={(e) => {
handleToggleChatMode()
}}
options={{