mirror of
https://github.com/Radiquum/YAMPD.git
synced 2025-05-20 15:49:34 +05:00
refactor: api routes
This commit is contained in:
parent
c74170a14d
commit
802b755d29
6 changed files with 95 additions and 55 deletions
|
@ -1,22 +1,45 @@
|
|||
const API = process.env.NEXT_PUBLIC_API_URL || "/api";
|
||||
|
||||
export const ENDPOINTS = {
|
||||
createPack: `${API}/pack/new`,
|
||||
getAllPacks: `${API}/pack/all`,
|
||||
};
|
||||
|
||||
type PACK_IMG_ENDPOINTS = {
|
||||
type _PACK_ENDPOINT = {
|
||||
getPack: string;
|
||||
getPackImage: string;
|
||||
editPackImage: string;
|
||||
};
|
||||
|
||||
export const PACK_IMG_ENDPOINTS = function (
|
||||
endpoint: keyof PACK_IMG_ENDPOINTS,
|
||||
id: string
|
||||
) {
|
||||
type _PACKS_ENDPOINT = {
|
||||
getPacks: string;
|
||||
createPack: string;
|
||||
deletePack: string;
|
||||
};
|
||||
|
||||
export const PACK_ENDPOINT = (endpoint: keyof _PACK_ENDPOINT, id: string) => {
|
||||
if (!id) {
|
||||
console.error(`ENDPOINT "${endpoint}" REQUIRES A PACK ID`);
|
||||
return "";
|
||||
}
|
||||
|
||||
const _endpoints = {
|
||||
getPack: `${API}/pack/${id}`,
|
||||
getPackImage: `${API}/pack/${id}/image`,
|
||||
editPackImage: `${API}/pack/${id}/image/edit`,
|
||||
};
|
||||
return _endpoints[endpoint];
|
||||
};
|
||||
|
||||
export const PACKS_ENDPOINT = (
|
||||
endpoint: keyof _PACKS_ENDPOINT,
|
||||
id?: string | null
|
||||
) => {
|
||||
const requireID: string[] = ["deletePack"];
|
||||
if (requireID.includes(endpoint) && !id) {
|
||||
console.error(`ENDPOINT "${endpoint}" REQUIRES A PACK ID`);
|
||||
return "";
|
||||
}
|
||||
|
||||
const _endpoints = {
|
||||
getPacks: `${API}/packs/all`,
|
||||
createPack: `${API}/packs/new`,
|
||||
deletePack: `${API}/packs/${id}/delete`,
|
||||
};
|
||||
return _endpoints[endpoint];
|
||||
};
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue