import {Title} from '@app/titles/models/title'; import {SiteSectionHeading} from '@app/titles/site-section-heading'; import {Trans} from '@common/i18n/trans'; import {useRelatedTitles} from '@app/titles/requests/use-related-titles'; import {useCarousel} from '@app/channels/carousel/use-carousel'; import React, {Fragment} from 'react'; import {IconButton} from '@common/ui/buttons/icon-button'; import {KeyboardArrowLeftIcon} from '@common/icons/material/KeyboardArrowLeft'; import {KeyboardArrowRightIcon} from '@common/icons/material/KeyboardArrowRight'; import clsx from 'clsx'; import {TitlePortraitGridItem} from '@app/channels/content-grid/title-grid-item'; interface Props { title: Title; } export function RelatedTitlesPanel({title}: Props) { const {data} = useRelatedTitles(title.id); if (!data || data.titles.length === 0) { return null; } return ; } interface RelatedTitlesCarouselProps { titles: Title[]; } function RelatedTitlesCarousel({titles}: RelatedTitlesCarouselProps) { const { scrollContainerRef, canScrollForward, canScrollBackward, scrollToPreviousPage, scrollToNextPage, containerClassName, itemClassName, } = useCarousel(); return (
scrollToPreviousPage()} aria-label="Scroll left" > scrollToNextPage()} aria-label="Scroll right" > } >
{titles.map(item => (
))}
); }