working on event reception in Kanban

This commit is contained in:
2025-12-19 16:07:30 +01:00
parent bad244ef16
commit 3b3803dafa
9 changed files with 116 additions and 38 deletions

View File

@@ -1,5 +1,5 @@
<script>
import { onMount } from 'svelte';
import { onDestroy, onMount } from 'svelte';
import { useTinyRouter } from 'svelte-tiny-router';
import { api, target } from '../../urls.svelte.js';
@@ -11,6 +11,8 @@
import LineEditor from '../../Components/LineEditor.svelte';
import MarkdownEditor from '../../Components/MarkdownEditor.svelte';
let eventSource = null;
let connectionStatus = 'disconnected';
let { id } = $props();
let descr = $state(false);
let filter_input = $state('');
@@ -55,6 +57,12 @@
return a.name.localeCompare(b.name);
}
function connectToEventStream(){
eventSource = new EventSource(api('bus'));
eventSource.onmessage = (m) => { console.log(m); } // https://stackoverflow.com/questions/57650830/sse-onmessage-never-gets-called#comment104961222_59383080
eventSource.addEventListener('UPDATE', (event) => console.log(JSON.parse(event.data)) );
}
async function create(name,user_id,state){
var url = api('task/add');
let task = {
@@ -114,6 +122,7 @@
async function load(){
try {
connectToEventStream();
await loadProject();
loadTasks({project_id:+id,parent_task_id:0});
} catch (ignored) {}
@@ -218,6 +227,11 @@
}
onMount(load);
onDestroy(() => {
if (eventSource) eventSource.close();
});
</script>
<svelte:head>