added cursor based pagination for links

This commit is contained in:
Daniel
2023-06-15 02:04:54 +03:30
parent 6323badbaf
commit 1b6d902c75
29 changed files with 507 additions and 182 deletions
+15 -3
View File
@@ -1,14 +1,26 @@
import { PublicCollectionIncludingLinks } from "@/types/global";
import { Dispatch, SetStateAction } from "react";
const getPublicCollectionData = async (
collectionId: string,
setData?: Function
prevData: PublicCollectionIncludingLinks,
setData: Dispatch<SetStateAction<PublicCollectionIncludingLinks | undefined>>
) => {
const res = await fetch(
"/api/public/routes/collections/?collectionId=" + collectionId
"/api/public/routes/collections?collectionId=" +
collectionId +
"&cursor=" +
prevData?.links?.at(-1)?.id
);
const data = await res.json();
if (setData) setData(data.response);
prevData
? setData({
...data.response,
links: [...prevData.links, ...data.response.links],
})
: setData(data.response);
return data;
};