Skip to content

Commit 7235af5

Browse files
authored
Merge pull request #18429 from Budibase/fix/dont-require-blur-for-generate-button
fix: dont require blur for generate button
2 parents 64c49e9 + 5ee6a5f commit 7235af5

File tree

1 file changed

+24
-11
lines changed

1 file changed

+24
-11
lines changed

packages/builder/src/pages/builder/workspace/[application]/agent/[agentId]/GenerateInstructionsControl.svelte

Lines changed: 24 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -69,14 +69,16 @@
6969
)
7070
let modal = $state<Modal>()
7171
let promptField = $state<TextArea>()
72-
let prompt = $state("")
72+
let promptInputKey = $state(0)
73+
let canGenerate = $state(false)
7374
let generatedInstructions = $state("")
7475
let generating = $state(false)
7576
let requestToken = $state(0)
7677
7778
function resetState() {
7879
requestToken += 1
79-
prompt = ""
80+
promptInputKey += 1
81+
canGenerate = false
8082
generatedInstructions = ""
8183
generating = false
8284
}
@@ -96,6 +98,12 @@
9698
return
9799
}
98100
101+
const prompt = promptField?.contents() || ""
102+
if (!prompt.trim()) {
103+
canGenerate = false
104+
return
105+
}
106+
99107
const currentRequestToken = ++requestToken
100108
generating = true
101109
@@ -175,22 +183,27 @@
175183
>
176184
</div>
177185
{:else}
178-
<TextArea
179-
label="Prompt"
180-
bind:this={promptField}
181-
bind:value={prompt}
182-
minHeight={140}
183-
disabled={generating}
184-
placeholder="Describe what kind of instructions you want to generate..."
185-
/>
186+
{#key promptInputKey}
187+
<TextArea
188+
label="Prompt"
189+
bind:this={promptField}
190+
updateOnChange
191+
minHeight={140}
192+
disabled={generating}
193+
placeholder="Describe what kind of instructions you want to generate..."
194+
on:change={event => {
195+
canGenerate = !!event.detail?.trim()
196+
}}
197+
/>
198+
{/key}
186199
<div class="generate-instructions-actions">
187200
<Button secondary disabled={generating} on:click={hideModal}
188201
>Cancel</Button
189202
>
190203
<Button
191204
cta
192205
icon="sparkle"
193-
disabled={generating || !prompt.trim()}
206+
disabled={generating || !canGenerate}
194207
on:click={generateInstructions}
195208
>
196209
{generating ? "Generating..." : "Generate"}

0 commit comments

Comments
 (0)