import { FilesResponse } from "types/googleapis"; import GridFile from "components/File/Grid"; import { drive_v3 } from "googleapis"; import EmptyFeedback from "components/APIFeedback/Empty"; type Props = { data: FilesResponse | undefined; pagination: { swrData: FilesResponse[] | undefined; size: number; setSize: (size: number) => Promise; isLoadingMore: boolean | undefined; isReachingEnd: boolean | undefined; }; }; export default function GridLayout({ data, pagination }: Props) { const { swrData, isLoadingMore, isReachingEnd, size, setSize } = pagination; return ( <> {data?.folders.length === 0 && data?.files.length === 0 && ( )} {data!.folders.length > 0 && ( <>
Folders
{data?.folders.length === 0 ? (
No folders
) : ( <> {data?.folders?.map((folder) => ( ))} )}
)} {data!.folders.length > 0 && data!.files.length > 0 && (
)} {data!.files.length > 0 && ( <>
Files
{data?.files.length === 0 ? (
No files
) : ( <> {data?.files.map((file, idx) => ( ))} )}
)} {swrData?.[0].nextPageToken && !isReachingEnd && ( )} ); }