Press n or j to go to the next uncovered block, b, p or k for the previous block.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 | import { useEffect } from "react"; import { useTranslation } from "react-i18next"; import { useParams } from "react-router-dom"; import { useQuery } from "@tanstack/react-query"; import { IApiFunction } from "@/interfaces"; import useMovieStore from "@/store/useMovieStore"; import useUserStore from "@/store/useUserStore"; const useMovieDetails = (apiFunctions: IApiFunction) => { const { i18n, t } = useTranslation(); const { movieId } = useParams(); const { setMovieStatus } = useMovieStore(); const { sessionId, isAuthenticated } = useUserStore(); const { data: movieDetails, isLoading, error, } = useQuery({ queryKey: [apiFunctions.getMovie.key, movieId, i18n.language], queryFn: () => apiFunctions.getMovie.func(movieId, sessionId, i18n.language), }); useEffect(() => { const movieStatus = movieDetails?.account_states; if (isAuthenticated && movieStatus) { setMovieStatus(movieStatus); } }, [isAuthenticated, movieDetails, setMovieStatus]); return { i18n, t, movieId, movieDetails, isLoading, error, }; }; export default useMovieDetails; |