14 lines
624 B
TypeScript
14 lines
624 B
TypeScript
import { apiGet, apiPatch, apiPost } from "./axios";
|
|
import type { ApiListResponse, Study } from "../types/api";
|
|
|
|
// Backend expects trailing slash to avoid 307 redirect
|
|
export const fetchStudies = () => apiGet<ApiListResponse<Study>>("/api/v1/studies/");
|
|
|
|
export const createStudy = (payload: Partial<Study> & { code: string; name: string }) =>
|
|
apiPost<Study>("/api/v1/studies/", payload);
|
|
|
|
export const updateStudy = (studyId: string, payload: Partial<Study>) =>
|
|
apiPatch<Study>(`/api/v1/studies/${studyId}`, payload);
|
|
|
|
export const fetchStudyDetail = (studyId: string) => apiGet<Study>(`/api/v1/studies/${studyId}`);
|