import {EpisodePoster} from '@app/episodes/episode-poster/episode-poster'; import {CompactSeasonEpisode} from '@app/episodes/compact-season-episode'; import {EpisodeLink} from '@app/episodes/episode-link'; import {InteractableRating} from '@app/reviews/interactable-rating'; import React, {ReactNode} from 'react'; import {Episode} from '@app/titles/models/episode'; import {Title} from '@app/titles/models/title'; import {TitleRating} from '@app/reviews/title-rating'; import clsx from 'clsx'; import {Trans} from '@common/i18n/trans'; import {FormattedDate} from '@common/i18n/formatted-date'; interface Props { episode: Episode; title: Title; allowRating?: boolean; className?: string; children?: ReactNode; showPlayButton?: boolean; centerPlayButton?: boolean; } export function EpisodeListItem({ episode, title, allowRating = true, className, children, showPlayButton, }: Props) { return (
{episode.description || ( )}
{children}
); } interface EpisodeRatingProps { title: Title; episode: Episode; allowRating: boolean; } function EpisodeRating({title, episode, allowRating}: EpisodeRatingProps) { if (episode.status === 'upcoming') { return null; } return allowRating ? ( ) : ( ); }