import React, { useEffect } from "react"; import { Button, ScrollArea, View } from "@nodegui/react-nodegui"; import { QueryCacheKeys } from "../conf"; import useSpotifyQuery from "../hooks/useSpotifyQuery"; import PlaceholderApplet from "./shared/PlaceholderApplet"; import useSpotifyInfiniteQuery from "../hooks/useSpotifyInfiniteQuery"; import CategoryCardView from "./shared/CategoryCardView"; function Home() { const { data: pagedCategories, isError, refetch, isLoading, hasNextPage, isFetchingNextPage, fetchNextPage } = useSpotifyInfiniteQuery>( QueryCacheKeys.categories, (spotifyApi, { pageParam }) => spotifyApi.getCategories({ country: "US", limit: 10, offset: pageParam }).then((categoriesReceived) => categoriesReceived.body.categories), { getNextPageParam(lastPage) { if (lastPage.next) { return lastPage.offset + lastPage.limit; } }, } ); const categories = pagedCategories?.pages .map((page) => page.items) .filter(Boolean) .flat(1); categories?.unshift({ href: "", icons: [], id: "featured", name: "Featured" }); return ( {categories?.map((category, index) => { return ; })} {hasNextPage &&