Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Successful and Unsuccessful getTrending API response
Added error handling to fetchTrending in the useEffect, so whenever the API response is successful, it‘ll set the trending recipes in the setTrendingRecipes state. If the response is empty or invalid, we will let the user know. If there's an error during the API request, it’ll be caught by the catch block, allowing us to handle the error and letting the user know.
API file Consolidation:
Consolidated the API file by combining IncompleteRating and CompleteRating into a single Rating. Using Partial makes the attributes optional in IncompleteRating and removing any unnecessary attribute in IncompleteRating.
ContentContainer Runs Slow and Minimize Rerenders for primeFactorize
Used the useMemo hook to memoize the results of primeFactorize. This makes sure that it doesn't recompute on every render unless the dependencies change.
Bonus Task: Minimize Rerenders as user types
Used the useMemo hook to memorize FormContainer and everything in the array. This way it specifies that it should only be rerendered if something changes.