Lines 44-84javascript
44 ctx.replaceTodos?.(next);
45 ctx.broadcast({ type: "todos.updated", payload: sessionPayload(ctx, { todos: next }) });
46 sendResult(ws, ctx, true, "Todo item removed.");
48function handleTodoUpdate(ctx, ws, payload) {
49 const todo = ctx.context.todos.find((t) => t.id === payload.id);
51 sendResult(ws, ctx, false, `No todo with id "${payload.id}".`);
54 const next = ctx.context.todos.map(
55 (t) => t.id === payload.id ? { ...t, ...payload.status !== void 0 && { status: payload.status }, ...payload.activeForm !== void 0 && { activeForm: payload.activeForm } } : t
57 ctx.replaceTodos?.(next);
58 ctx.broadcast({ type: "todos.updated", payload: sessionPayload(ctx, { todos: next }) });
59 sendResult(ws, ctx, true, `Todo "${todo.content}" updated.`);
61async function handleTasksGet(ctx, ws) {
62 const taskPath = ctx.context.meta["task.path"];
63 if (typeof taskPath === "string" && taskPath) {
65 const { loadTasks } = await import("@wrongstack/core");
66 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 · L64 67 ctx.send(ws, { type: "tasks.updated", payload: sessionPayload(ctx, { tasks: file?.tasks ?? [] }) });
69 ctx.send(ws, { type: "tasks.updated", payload: sessionPayload(ctx, { tasks: [] }) });
73 type: "tasks.updated",
74 payload: sessionPayload(ctx, { tasks: [], error: "Task storage not configured." })
78async function handleTaskUpdate(ctx, ws, payload) {
79 const taskPath = ctx.context.meta["task.path"];
80 if (typeof taskPath !== "string" || !taskPath) {
81 sendResult(ws, ctx, false, "Task storage is not configured for this session.");