/* eslint-disable no-unsafe-optional-chaining */ import { useQuery } from "@tanstack/react-query"; import { fetchRecipeDetails } from "../components/apiUtils/allApi"; export const useDetailedRecipes = (searchQuery, filters) => { return useQuery({ queryKey: ["detailedRecipes", searchQuery, filters], queryFn: async () => { const params = new URLSearchParams({ apiKey: "2bed23978b4d417081acee70da2f9f5f", query: searchQuery, cuisine: filters?.cuisine, ...(filters?.diet && { diet: filters?.diet }), ...(filters?.maxTime && { maxReadyTime: filters?.maxTime }), }); const response = await fetch( `https://api.spoonacular.com/recipes/complexSearch?${params}` ); const { results } = await response?.json(); const detailedRecipes = await Promise?.all( results?.map((recipe) => fetchRecipeDetails(recipe?.id)) ); return detailedRecipes; }, enabled: true, }); };