diff options
| author | Kit La Touche <kit@transneptune.net> | 2024-10-03 23:30:10 -0400 |
|---|---|---|
| committer | Kit La Touche <kit@transneptune.net> | 2024-10-03 23:30:10 -0400 |
| commit | 30c13478d61065a512f5bc8824fecbf2ee6afc81 (patch) | |
| tree | 5b9f0fe65458f6d19f7f0b3fed9c8d3e4676a175 /hi-ui/src/lib/Message.svelte | |
| parent | 01d995c731c296292cd3f1f9a4702eb96a0bf628 (diff) | |
Handle basics of interface scrolling
Diffstat (limited to 'hi-ui/src/lib/Message.svelte')
| -rw-r--r-- | hi-ui/src/lib/Message.svelte | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/hi-ui/src/lib/Message.svelte b/hi-ui/src/lib/Message.svelte new file mode 100644 index 0000000..d3ecbd8 --- /dev/null +++ b/hi-ui/src/lib/Message.svelte @@ -0,0 +1,38 @@ +<script> + import { currentUser } from '../store'; + import { deleteMessage } from '../apiServer'; + + export let at; + export let sender; + export let message; + + let timestamp = new Date(at).toTimeString(); + + function handleDeleteMessage() { + deleteMessage(message.id); + } +</script> + +<div class="hover:bg-zinc-300 flex flex-row"> + <div class="sender basis-20 text-right mr-1"> + @{sender.name}: + </div> + <div class="body grow"> + {message.body} + </div> + <div class="timestamp basis-6"> + <!-- TODO: this is too long and looks awful. --> + <!-- {timestamp} --> + </div> + {#if sender.id === $currentUser?.id} + <div class="controls basis-1 hidden relative -top-3 rounded-md border-2 border-slate-600 px-1 bg-slate-300"> + <button on:click|preventDefault={handleDeleteMessage}>🗑</button> + </div> + {/if} +</div> + +<style> + div:hover .controls { + display: block; + } +</style> |
