import React, { useContext } from 'react'; import useSWR from 'swr'; import type { TvResult } from '../../../server/models/Search'; import ListView from '../Common/ListView'; import { useRouter } from 'next/router'; import { LanguageContext } from '../../context/LanguageContext'; import Header from '../Common/Header'; import { defineMessages, useIntl } from 'react-intl'; import { TvDetails } from '../../../server/models/Tv'; import PageTitle from '../Common/PageTitle'; import Error from '../../pages/_error'; import useDiscover from '../../hooks/useDiscover'; import Link from 'next/link'; const messages = defineMessages({ recommendations: 'Recommendations', }); const TvRecommendations: React.FC = () => { const router = useRouter(); const intl = useIntl(); const { locale } = useContext(LanguageContext); const { data: tvData } = useSWR( `/api/v1/tv/${router.query.tvId}?language=${locale}` ); const { isLoadingInitialData, isEmpty, isLoadingMore, isReachingEnd, titles, fetchMore, error, } = useDiscover(`/api/v1/tv/${router.query.tvId}/recommendations`); if (error) { return ; } return ( <>
{tvData?.name} } > {intl.formatMessage(messages.recommendations)}
0) } onScrollBottom={fetchMore} /> ); }; export default TvRecommendations;