import { parseTask } from "@/lib/tasks"; import type { Task, TaskCreateData, TaskUpdateData } from "@/types"; export async function getTasks(list: string): Promise { const response = await fetch(`/api/lists/${list}/tasks`); return (await response.json()).map(parseTask); } export async function createTask( list: string, data: TaskCreateData, ): Promise { const response = await fetch(`/api/lists/${list}/tasks`, { method: "POST", body: JSON.stringify({ ...data }), headers: { "Content-Type": "application/json" }, }); return parseTask(await response.json()); } export async function updateTask( taskId: string, data: TaskUpdateData, ): Promise { const response = await fetch(`/api/tasks/${taskId}`, { method: "PUT", body: JSON.stringify({ ...data }), headers: { "Content-Type": "application/json" }, }); return parseTask(await response.json()); } export async function deleteTask(taskId: string): Promise { await fetch(`/api/tasks/${taskId}`, { method: "DELETE", }); }