import { GraphQLError } from "graphql"; import { fetchPopularTitlesFromAnilist } from "~/controllers/popular/browse/anilist"; import type { GraphQLContext } from "../../context"; interface PopularBrowseArgs { limit?: number; } export async function popularBrowse( _parent: unknown, args: PopularBrowseArgs, _context: GraphQLContext, ) { const { limit = 10 } = args; const response = await fetchPopularTitlesFromAnilist(limit); if (!response) { throw new GraphQLError("Failed to fetch popular titles", { extensions: { code: "INTERNAL_SERVER_ERROR" }, }); } return { trending: response.trending || [], popular: response.popular || [], upcoming: response.upcoming || [], }; }