diff options
| author | Owen Jacobson <owen@grimoire.ca> | 2024-09-18 22:49:38 -0400 |
|---|---|---|
| committer | Owen Jacobson <owen@grimoire.ca> | 2024-09-20 16:42:44 -0400 |
| commit | 22348bfa35f009e62abe2f30863e0434079a1fe2 (patch) | |
| tree | c5b5b5e660a1ee2a05785f4669102c1023b6e7b0 /js/channel.js | |
| parent | aafdeb9ffaf9a993ca4462b3422667e04469b2e3 (diff) | |
Remove the HTML client, and expose a JSON API.
This API structure fell out of a conversation with Kit. Described loosely:
kit: ok
kit: Here's what I'm picturing in a client
kit: list channels, make-new-channel, zero to one active channels, post-to-active.
kit: login/sign-up, logout
owen: you will likely also want "am I logged in" here
kit: sure, whoami
Diffstat (limited to 'js/channel.js')
| -rw-r--r-- | js/channel.js | 37 |
1 files changed, 0 insertions, 37 deletions
diff --git a/js/channel.js b/js/channel.js deleted file mode 100644 index f994ada..0000000 --- a/js/channel.js +++ /dev/null @@ -1,37 +0,0 @@ -"use strict"; - -function ready(callback) { - if (document.readyState === 'loading') { - document.addEventListener('DOMContentLoaded', callback); - } else { - callback(); - } -} - -ready(() => { - let channel = document.querySelector('meta[name=channel]').content; - let template = document.querySelector('#message').content; - - document.querySelectorAll('link[rel=events]').forEach(elem => { - let url = elem.getAttribute("href"); - let source = new EventSource(url); - source.addEventListener('message', message => { - let body = JSON.parse(message.data); - - if (body.channel === channel) { - document.querySelectorAll('.messages').forEach(elem => { - let message = template.cloneNode(true); - - message.querySelectorAll('.sender') - .forEach(elem => elem.textContent = body.sender.name); - message.querySelectorAll('.message') - .forEach(elem => elem.textContent = body.body); - message.querySelectorAll('.sent_at') - .forEach(elem => elem.textContent = body.sent_at); - - message.childNodes.forEach(node => elem.appendChild(node)); - }); - } - }); - }); -}) |
