mirror of
https://github.com/Nezumi-2711/next-gdrive-index.git
synced 2026-09-23 04:10:03 +00:00
29 lines
881 B
TypeScript
29 lines
881 B
TypeScript
import axios from "axios";
|
|
import { FilesResponse } from "@/types/googleapis";
|
|
|
|
const fetcher = async <T>(url: string, headers: Record<string, string> = {}) =>
|
|
axios.get<T>(url, { headers }).then((res) => res.data);
|
|
|
|
function getNextKey(
|
|
pageIndex: number,
|
|
previousPageData: FilesResponse,
|
|
): string | null {
|
|
if (previousPageData && !previousPageData.nextPageToken) {
|
|
return null;
|
|
}
|
|
const pageToken = previousPageData ? previousPageData.nextPageToken : "";
|
|
return `/api/files?pageToken=${pageToken}`;
|
|
}
|
|
|
|
export function buildNextKey(apiURL: string) {
|
|
return (pageIndex: number, previousPageData: FilesResponse) => {
|
|
if (previousPageData && !previousPageData.nextPageToken) {
|
|
return null;
|
|
}
|
|
const pageToken = previousPageData ? previousPageData.nextPageToken : "";
|
|
return `${apiURL}?pageToken=${pageToken}`;
|
|
};
|
|
}
|
|
|
|
export default fetcher;
|