mirror of
https://github.com/rzmk/learnhouse.git
synced 2025-12-19 04:19:25 +00:00
47 lines
1.9 KiB
TypeScript
47 lines
1.9 KiB
TypeScript
import { getAPIUrl } from "../config/config";
|
|
import { RequestBody, RequestBodyWithAuthHeader, errorHandling } from "@services/utils/ts/requests";
|
|
|
|
/*
|
|
This file includes only POST, PUT, DELETE requests
|
|
GET requests are called from the frontend using SWR (https://swr.vercel.app/)
|
|
*/
|
|
|
|
export async function deleteCollection(collection_id: any) {
|
|
const result: any = await fetch(`${getAPIUrl()}collections/${collection_id}`, RequestBody("DELETE", null, null));
|
|
const res = await errorHandling(result);
|
|
return res;
|
|
}
|
|
|
|
// Create a new collection
|
|
export async function createCollection(collection: any) {
|
|
const result: any = await fetch(`${getAPIUrl()}collections/`, RequestBody("POST", collection, null));
|
|
const res = await errorHandling(result);
|
|
return res;
|
|
}
|
|
|
|
// Get a colletion by id
|
|
export async function getCollectionById(collection_id: any) {
|
|
const result: any = await fetch(`${getAPIUrl()}collections/${collection_id}`, { next: { revalidate: 10 } });
|
|
const res = await errorHandling(result);
|
|
return res;
|
|
}
|
|
|
|
export async function getCollectionByIdWithAuthHeader(collection_id: any, access_token: string, next: any) {
|
|
const result: any = await fetch(`${getAPIUrl()}collections/collection_${collection_id}`, RequestBodyWithAuthHeader("GET", null, next, access_token));
|
|
const res = await errorHandling(result);
|
|
return res;
|
|
}
|
|
|
|
// Get collections
|
|
// TODO : add per org filter
|
|
export async function getOrgCollections() {
|
|
const result: any = await fetch(`${getAPIUrl()}collections/page/1/limit/10`, { next: { revalidate: 10 } });
|
|
const res = await errorHandling(result);
|
|
return res;
|
|
}
|
|
|
|
export async function getOrgCollectionsWithAuthHeader(org_id: string, access_token: string) {
|
|
const result: any = await fetch(`${getAPIUrl()}collections/org_id/${org_id}/page/1/limit/10`, RequestBodyWithAuthHeader("GET", null, { revalidate: 3 }, access_token));
|
|
const res = await errorHandling(result);
|
|
return res;
|
|
}
|