From 34125b3723ab60980ba8d7929750e640b44ad1d2 Mon Sep 17 00:00:00 2001 From: SwiichyCode Date: Thu, 7 Mar 2024 13:28:39 +0100 Subject: [PATCH] fix(build error ): build error --- .../RepositoriesGridInfiniteScroll.tsx | 2 +- src/hooks/useInfiniteScroll.tsx | 62 ------------------- 2 files changed, 1 insertion(+), 63 deletions(-) delete mode 100644 src/hooks/useInfiniteScroll.tsx diff --git a/src/components/organisms/RepositoriesGrid/RepositoriesGridInfiniteScroll.tsx b/src/components/organisms/RepositoriesGrid/RepositoriesGridInfiniteScroll.tsx index f4f593c..3d5dfad 100644 --- a/src/components/organisms/RepositoriesGrid/RepositoriesGridInfiniteScroll.tsx +++ b/src/components/organisms/RepositoriesGrid/RepositoriesGridInfiniteScroll.tsx @@ -32,7 +32,7 @@ export const RepositoriesGridInfiniteScroll = ({ // const { toggleFilter } = useToggleFilter(); const flatRepositories = - data?.pages.map((page) => page.data!.repositories).flat() || []; + data?.pages.map((page) => page.data!.repositories).flat() ?? []; // const filteredRepositories = getFilteredRepositories({ // query: queryParams, diff --git a/src/hooks/useInfiniteScroll.tsx b/src/hooks/useInfiniteScroll.tsx deleted file mode 100644 index 0aebb1b..0000000 --- a/src/hooks/useInfiniteScroll.tsx +++ /dev/null @@ -1,62 +0,0 @@ -"use client"; -import { useState, useEffect, useCallback } from "react"; -import { useInView } from "react-intersection-observer"; -import { getRepositoriesOnScroll } from "@/actions/test.action"; -import { getRepositoryAlreadyStarredURL } from "@/utils/getRepositoryAlreadyStarredURL"; -import type { Repository, User } from "@/types/prisma.type"; - -type Props = { - initialRepositories: Repository[]; - limit: number; - user: User | null; -}; - -export const useInfiniteScroll = ({ - initialRepositories, - limit, - user, -}: Props) => { - const [repositories, setRepositories] = useState(initialRepositories); - const [page, setPage] = useState(1); - - const [ref, inView] = useInView({ - rootMargin: "200px", - }); - - const [isDisabled, setDisabled] = useState(false); - - const fetchMoreRepositories = useCallback(async () => { - const next = page + 1; - const offset = next * limit; - - const { data } = await getRepositoriesOnScroll({ - limit, - offset, - cursor: repositories.length && repositories[repositories.length - 1]!.id, - }); - - if (data.length) { - setPage(next); - setRepositories((prev: Repository[] | undefined) => [ - ...(prev?.length ? prev : []), - ...data, - ]); - } else { - setDisabled(true); - } - }, [page, limit, repositories]); - - const repositoriesAlreadyStarred = getRepositoryAlreadyStarredURL( - repositories, - user, - ); - - useEffect(() => { - if (inView) { - // eslint-disable-next-line @typescript-eslint/no-floating-promises - fetchMoreRepositories(); - } - }, [inView, fetchMoreRepositories]); - - return { repositories, repositoriesAlreadyStarred, ref, isDisabled }; -};