import {Title} from '@app/titles/models/title';
import {TitlePoster} from '@app/titles/title-poster/title-poster';
import {Trans} from '@common/i18n/trans';
import {FormattedCurrency} from '@common/i18n/formatted-currency';
import {WatchlistButton} from '@app/user-lists/watchlist-button';
import {
DetailItem,
TitlePageAsideLayout,
} from '@app/titles/pages/title-page/title-page-aside-layout';
import {KeywordLink} from '@app/titles/keyword-link';
import {ProductionCountryLink} from '@app/titles/production-country-link';
import {WatchNowButton} from '@app/titles/pages/title-page/watch-now-button';
import {useIsStreamingMode} from '@app/videos/use-is-streaming-mode';
import {getTitleLink} from '@app/titles/title-link';
import {ShareMenuTrigger} from '@app/sharing/share-menu-trigger';
import {Button} from '@common/ui/buttons/button';
import React from 'react';
import {ShareIcon} from '@common/icons/material/Share';
import {IconButton} from '@common/ui/buttons/icon-button';
import {EditIcon} from '@common/icons/material/Edit';
import {Link} from 'react-router-dom';
import {useAuth} from '@common/auth/use-auth';
import {GetTitleResponse} from '@app/titles/requests/use-title';
interface Props {
data: GetTitleResponse;
className?: string;
}
export function TitlePageAside({data: {title, language}, className}: Props) {
const isStreamingMode = useIsStreamingMode();
const {hasPermission} = useAuth();
return (
{hasPermission('titles.update') && (
)}
}
>
{isStreamingMode && title.primary_video && (
)}
{language && (
}>
)}
{title.original_title !== title.name && (
}>
{title.original_title}
)}
{title.budget ? (
}>
) : null}
{title.revenue ? (
}>
) : null}
{title.production_countries?.length ? (
}>
{title.production_countries.map(country => (
-
))}
) : null}
{title.keywords?.length ? (
}>
{title.keywords.map(keyword => (
-
))}
) : null}
);
}
interface ShareButtonProps {
title: Title;
}
function ShareButton({title}: ShareButtonProps) {
const link = getTitleLink(title, {absolute: true});
return (
}
className="mt-14 min-h-40 w-full"
>
);
}