summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ui/lib/components/MessageInput.svelte8
-rw-r--r--ui/styles/forms.css4
2 files changed, 8 insertions, 4 deletions
diff --git a/ui/lib/components/MessageInput.svelte b/ui/lib/components/MessageInput.svelte
index 848321d..6c22b29 100644
--- a/ui/lib/components/MessageInput.svelte
+++ b/ui/lib/components/MessageInput.svelte
@@ -1,7 +1,6 @@
<script>
let { sendMessage = async (message) => {} } = $props();
- let form = $state(null);
let value = $state('');
let disabled = $state(false);
@@ -10,7 +9,7 @@
disabled = true;
try {
await sendMessage(value);
- value = '';
+ event.target.closest('form')?.reset();
} finally {
disabled = false;
}
@@ -25,7 +24,7 @@
let modifier = event.shiftKey || event.altKey || event.ctrlKey || event.metaKey;
if (!modifier && event.key === 'Enter') {
event.preventDefault();
- form?.requestSubmit?.();
+ event.target.closest('form')?.requestSubmit();
}
}
@@ -36,7 +35,8 @@
}
</script>
-<form {onsubmit} bind:this={form}>
+<form {onsubmit}>
+ <textarea bind:value class="hidden" {disabled}></textarea>
<div
contenteditable="plaintext-only"
class={{
diff --git a/ui/styles/forms.css b/ui/styles/forms.css
index 907f1bf..1c1ae5c 100644
--- a/ui/styles/forms.css
+++ b/ui/styles/forms.css
@@ -30,3 +30,7 @@ form.form > button {
.disabled {
color: var(--light-text);
}
+
+.hidden {
+ display: none;
+}