Lines 43-83javascript
43 ctx.replaceTodos?.(next);
44 ctx.broadcast({ type: "todos.updated", payload: sessionPayload(ctx, { todos: next }) });
45 sendResult(ws, ctx, true, "Todo item removed.");
47function handleTodoUpdate(ctx, ws, payload) {
48 const todo = ctx.context.todos.find((t) => t.id === payload.id);
50 sendResult(ws, ctx, false, `No todo with id "${payload.id}".`);
53 const next = ctx.context.todos.map(
54 (t) => t.id === payload.id ? { ...t, ...payload.status !== void 0 && { status: payload.status }, ...payload.activeForm !== void 0 && { activeForm: payload.activeForm } } : t
56 ctx.replaceTodos?.(next);
57 ctx.broadcast({ type: "todos.updated", payload: sessionPayload(ctx, { todos: next }) });
58 sendResult(ws, ctx, true, `Todo "${todo.content}" updated.`);
60async function handleTasksGet(ctx, ws) {
61 const taskPath = ctx.context.meta["task.path"];
62 if (typeof taskPath === "string" && taskPath) {
64 const { loadTasks } = await import("@wrongstack/core");
65 const file = await loadTasks(taskPath);
HighCopied Package Dependency Bridge
Package metadata claims a different repository identity while copied source loads a runtime dependency bridge.
dist/server/handlers.jsView on unpkg · L63 66 ctx.send(ws, { type: "tasks.updated", payload: sessionPayload(ctx, { tasks: file?.tasks ?? [] }) });
68 ctx.send(ws, { type: "tasks.updated", payload: sessionPayload(ctx, { tasks: [] }) });
72 type: "tasks.updated",
73 payload: sessionPayload(ctx, { tasks: [], error: "Task storage not configured." })
77async function handleTaskUpdate(ctx, ws, payload) {
78 const taskPath = ctx.context.meta["task.path"];
79 if (typeof taskPath !== "string" || !taskPath) {
80 sendResult(ws, ctx, false, "Task storage is not configured for this session.");