summaryrefslogtreecommitdiff
path: root/ui/lib/components
diff options
context:
space:
mode:
Diffstat (limited to 'ui/lib/components')
-rw-r--r--ui/lib/components/CreateChannelForm.svelte9
-rw-r--r--ui/lib/components/MessageInput.svelte10
2 files changed, 10 insertions, 9 deletions
diff --git a/ui/lib/components/CreateChannelForm.svelte b/ui/lib/components/CreateChannelForm.svelte
index ddcf486..b716736 100644
--- a/ui/lib/components/CreateChannelForm.svelte
+++ b/ui/lib/components/CreateChannelForm.svelte
@@ -1,16 +1,17 @@
<script>
import { createChannel } from '$lib/apiServer';
- let name = '';
- let disabled = false;
+ let name = "";
+ let pending = false;
+ $: disabled = pending;
async function handleSubmit(event) {
- disabled = true;
+ pending = true;
const response = await createChannel(name);
if (200 <= response.status && response.status < 300) {
name = '';
}
- disabled = false;
+ pending = false;
}
</script>
diff --git a/ui/lib/components/MessageInput.svelte b/ui/lib/components/MessageInput.svelte
index b2746e0..03ac7fa 100644
--- a/ui/lib/components/MessageInput.svelte
+++ b/ui/lib/components/MessageInput.svelte
@@ -5,16 +5,16 @@
export let channel = null;
let input;
let value = '';
- let sending = false;
+ let pending = false;
- $: disabled = (channel === null);
+ $: disabled = pending || (channel === null);
async function handleSubmit() {
if (channel !== null) {
- sending = true;
+ pending = true;
// TODO try/catch:
await postToChannel(channel, value);
- sending = false;
+ pending = false;
value = '';
await tick();
input.focus();
@@ -23,6 +23,6 @@
</script>
<form on:submit|preventDefault={handleSubmit} class="flex flex-row flex-nowrap">
- <input bind:this={input} bind:value={value} disabled={sending || disabled} type="search" class="flex-auto h-6 input rounded-r-none" />
+ <input bind:this={input} bind:value={value} disabled={disabled} type="search" class="flex-auto h-6 input rounded-r-none" />
<button color="primary variant-filled-secondary" type="submit" class="flex-none w-6 h-6 btn-icon variant-filled rounded-l-none">&raquo;</button>
</form>