feat(frontend): API layer + stores Pinia
Ajoute le client Axios, les modules API (gardens, varieties, plantings, tasks) et les stores Pinia correspondants. Corrige tsconfig.json pour inclure vite/client et DOM.Iterable. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
20
frontend/src/api/tasks.ts
Normal file
20
frontend/src/api/tasks.ts
Normal file
@@ -0,0 +1,20 @@
|
||||
import client from './client'
|
||||
|
||||
export interface Task {
|
||||
id?: number
|
||||
titre: string
|
||||
description?: string
|
||||
garden_id?: number
|
||||
priorite: string
|
||||
echeance?: string
|
||||
statut: string
|
||||
}
|
||||
|
||||
export const tasksApi = {
|
||||
list: (params?: { statut?: string; garden_id?: number }) =>
|
||||
client.get<Task[]>('/api/tasks', { params }).then(r => r.data),
|
||||
get: (id: number) => client.get<Task>(`/api/tasks/${id}`).then(r => r.data),
|
||||
create: (t: Partial<Task>) => client.post<Task>('/api/tasks', t).then(r => r.data),
|
||||
update: (id: number, t: Partial<Task>) => client.put<Task>(`/api/tasks/${id}`, t).then(r => r.data),
|
||||
delete: (id: number) => client.delete(`/api/tasks/${id}`),
|
||||
}
|
||||
Reference in New Issue
Block a user