diff options
| author | Kit La Touche <kit@transneptune.net> | 2024-11-09 22:55:22 -0500 |
|---|---|---|
| committer | Kit La Touche <kit@transneptune.net> | 2024-11-09 22:55:22 -0500 |
| commit | 24eb775ba77f5a6a78a299d9fdffb34f8f167f8d (patch) | |
| tree | 32ab5163d55688dd90dc796aa44d94fec0b35c81 /ui/lib/components/ActiveChannel.svelte | |
| parent | 91ce856f63bd1d7a188488476bdbec60b5bd58ff (diff) | |
| parent | a417c62edd4d3c07ba37b01835e89ed650489e09 (diff) | |
Merge branch 'main' into wip/touch-events
Diffstat (limited to 'ui/lib/components/ActiveChannel.svelte')
| -rw-r--r-- | ui/lib/components/ActiveChannel.svelte | 43 |
1 files changed, 6 insertions, 37 deletions
diff --git a/ui/lib/components/ActiveChannel.svelte b/ui/lib/components/ActiveChannel.svelte index a4ccd24..ba62d6c 100644 --- a/ui/lib/components/ActiveChannel.svelte +++ b/ui/lib/components/ActiveChannel.svelte @@ -1,42 +1,11 @@ <script> - import { messages } from '$lib/store'; import MessageRun from './MessageRun.svelte'; - let { channel } = $props(); - let messageList = $derived(channel !== null ? $messages.inChannel(channel) : []); - - function* chunkBy(xs, fn) { - let chunk; - let key; - for (let x of xs) { - let newKey = fn(x); - if (key !== newKey) { - if (chunk !== undefined) { - yield [key, chunk]; - } - - chunk = [x]; - key = newKey; - } else { - chunk.push(x); - } - } - if (chunk !== undefined) { - yield [key, chunk]; - } - } + let { messageRuns } = $props(); </script> -<div class="container"> - {#each chunkBy(messageList, (msg) => msg.sender) as [sender, messages]} - <div> - <MessageRun {sender} {messages} /> - </div> - {/each} -</div> - -<style> - .container { - overflow: auto; - } -</style> +{#each messageRuns as { sender, messages }} + <div> + <MessageRun {sender} {messages} /> + </div> +{/each} |
