simplifying kanban.svelte

Signed-off-by: Stephan Richter <s.richter@srsoftware.de>
This commit is contained in:
2026-03-11 18:10:08 +01:00
parent 6e7bb08738
commit b73fb7c716

View File

@@ -2,7 +2,7 @@
import { onDestroy, onMount } from 'svelte'; import { onDestroy, onMount } from 'svelte';
import { useTinyRouter } from 'svelte-tiny-router'; import { useTinyRouter } from 'svelte-tiny-router';
import { api, eventStream, target } from '../../urls.svelte.js'; import { api, patch, post, eventStream, target } from '../../urls.svelte.js';
import { error, messages, yikes } from '../../warn.svelte'; import { error, messages, yikes } from '../../warn.svelte';
import { t } from '../../translations.svelte.js'; import { t } from '../../translations.svelte.js';
import { user } from '../../user.svelte.js'; import { user } from '../../user.svelte.js';
@@ -46,11 +46,7 @@
} }
task.members[user_id] = { permission: { name : 'ASSIGNEE' }}; task.members[user_id] = { permission: { name : 'ASSIGNEE' }};
task.members[user.id] = { permission: { name : 'OWNER' }}; task.members[user.id] = { permission: { name : 'OWNER' }};
const resp = await fetch(url,{ const resp = await post(url,task);
credentials : 'include',
method : 'POST',
body : JSON.stringify(task)
});
if (resp.ok) { if (resp.ok) {
task = await resp.json(); task = await resp.json();
task.assignee = user_id; task.assignee = user_id;
@@ -69,11 +65,7 @@
ex.preventDefault(); ex.preventDefault();
var task = dragged; var task = dragged;
const url = api(`task/${task.id}`); const url = api(`task/${task.id}`);
const resp = await fetch(url,{ const resp = await patch(url,{no_index:true});
credentials : 'include',
method : 'PATCH',
body : JSON.stringify({no_index:true})
});
delete highlight.archive; delete highlight.archive;
if (resp.ok){ if (resp.ok){
yikes(); yikes();
@@ -89,14 +81,10 @@
highlight = {}; highlight = {};
if (task.assignee == user_id && task.status == state) return; // no change if (task.assignee == user_id && task.status == state) return; // no change
let patch = {members:{},status:+state} let data = {members:{},status:+state}
patch.members[user_id] = 'ASSIGNEE'; data.members[user_id] = 'ASSIGNEE';
const url = api(`task/${task.id}`); const url = api(`task/${task.id}`);
const resp = await fetch(url,{ const resp = await patch(url,data);
credentials : 'include',
method : 'PATCH',
body : JSON.stringify(patch)
});
if (resp.ok){ if (resp.ok){
yikes(); yikes();
} else { } else {
@@ -190,11 +178,7 @@
const url = api('task/list'); const url = api('task/list');
selector.show_closed = true; selector.show_closed = true;
selector.no_index = true; selector.no_index = true;
var resp = await fetch(url,{ var resp = await post(url,selector);
credentials :'include',
method : 'POST',
body : JSON.stringify(selector)
});
if (resp.ok){ if (resp.ok){
var json = await resp.json(); var json = await resp.json();
for (var task_id of Object.keys(json)) { for (var task_id of Object.keys(json)) {
@@ -239,11 +223,7 @@
share : user_ids share : user_ids
} }
const url = api('bookmark'); const url = api('bookmark');
const resp = await fetch(url,{ const resp = await post(url,data);
credentials : 'include',
method : 'POST',
body : JSON.stringify(data)
});
if (resp.ok) { if (resp.ok) {
yikes(); yikes();
router.navigate('/bookmark'); router.navigate('/bookmark');