| import type { Task, TaskGenerateRequest, TaskUpdate } from '@/types/task.d.ts' | |
| import { http } from '@/lib/http' | |
| export async function getAllTasks(): Promise<Task[]> { | |
| return await http('/api/tasks') | |
| } | |
| export async function createTaskWithAI(data: TaskGenerateRequest): Promise<Task> { | |
| const result = await http('/api/tasks/generate', { | |
| method: 'POST', | |
| headers: { | |
| 'Content-Type': 'application/json', | |
| }, | |
| body: JSON.stringify(data), | |
| }) | |
| return result.task | |
| } | |
| export async function updateTask(taskId: number, data: TaskUpdate): Promise<Task> { | |
| const result = await http(`/api/tasks/${taskId}`, { | |
| method: 'PATCH', | |
| headers: { | |
| 'Content-Type': 'application/json', | |
| }, | |
| body: JSON.stringify(data), | |
| }) | |
| return result.task | |
| } | |
| export async function startTask(taskId: number): Promise<void> { | |
| await http(`/api/tasks/start/${taskId}`, { method: 'POST' }) | |
| } | |
| export async function stopTask(taskId: number): Promise<void> { | |
| await http(`/api/tasks/stop/${taskId}`, { method: 'POST' }) | |
| } | |
| export async function deleteTask(taskId: number): Promise<void> { | |
| await http(`/api/tasks/${taskId}`, { method: 'DELETE' }) | |
| } | |