From ab81df7f3d317281a05caec18e2cfd89dc26bc7a Mon Sep 17 00:00:00 2001 From: Armand Philippot Date: Tue, 28 Nov 2023 15:09:04 +0100 Subject: refactor(services): avoid nested fetchers If we use fetchPostsCount inside fetchAllPostsSlugs, we might have problems to test fetchAllPostsSlugs failure. So it is better to let the consumer pass the posts count as an argument. The same applies to thematics and topics. --- src/services/graphql/fetchers/posts/fetch-all-posts-slugs.ts | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) (limited to 'src/services/graphql/fetchers/posts/fetch-all-posts-slugs.ts') diff --git a/src/services/graphql/fetchers/posts/fetch-all-posts-slugs.ts b/src/services/graphql/fetchers/posts/fetch-all-posts-slugs.ts index 28f2bbf..25cc782 100644 --- a/src/services/graphql/fetchers/posts/fetch-all-posts-slugs.ts +++ b/src/services/graphql/fetchers/posts/fetch-all-posts-slugs.ts @@ -1,6 +1,5 @@ import type { GraphQLNodes, Nullable, SlugNode } from '../../../../types'; import { fetchGraphQL, getGraphQLUrl } from '../../../../utils/helpers'; -import { fetchPostsCount } from './fetch-posts-count'; type PostsSlugsResponse = { posts: Nullable>; @@ -17,14 +16,14 @@ const postsSlugsQuery = `query PostsSlugs($first: Int) { /** * Retrieve the WordPress posts slugs. * + * @param {number} count - The number of posts slugs to retrieve. * @returns {Promise} The posts slugs. */ -export const fetchAllPostsSlugs = async (): Promise => { - const postsCount = await fetchPostsCount(); +export const fetchAllPostsSlugs = async (count: number): Promise => { const response = await fetchGraphQL({ query: postsSlugsQuery, url: getGraphQLUrl(), - variables: { first: postsCount }, + variables: { first: count }, }); if (!response.posts) -- cgit v1.2.3