import {PageStatus} from '@common/http/page-status'; import {PageMetaTags} from '@common/http/page-meta-tags'; import React, {Fragment} from 'react'; import {SitePageLayout} from '@app/site-page-layout'; import {GetPersonResponse, usePerson} from '@app/people/requests/use-person'; import {Person} from '@app/titles/models/person'; import {Trans} from '@common/i18n/trans'; import {TitlePageHeaderLayout} from '@app/titles/pages/title-page/title-page-header-layout'; import {SiteSectionHeading} from '@app/titles/site-section-heading'; import {PersonPageAside} from '@app/people/person-page/person-page-aside'; import {ContentGridLayout} from '@app/channels/content-grid/content-grid-layout'; import {PersonCredit} from '@app/titles/models/title'; import {TitlePortraitGridItem} from '@app/channels/content-grid/title-grid-item'; import {PersonPageCredits} from '@app/people/person-page/person-page-credits'; import {TruncatedDescription} from '@common/ui/truncated-description'; import {CharacterOrJob} from '@app/people/person-page/character-or-job'; import {AdHost} from '@common/admin/ads/ad-host'; export function PersonPage() { const query = usePerson('personPage'); const content = query.data ? ( ) : ( ); return {content}; } interface PageContentProps { data: GetPersonResponse; } function PageContent({data}: PageContentProps) { const {person, knownFor} = data; return (
); } interface BiographyProps { person: Person; } function Biography({person}: BiographyProps) { if (!person.description) return null; return ( ); } interface KnownForProps { items: PersonCredit[]; } function KnowForList({items}: KnownForProps) { if (!items?.length) return null; return (
{items.slice(0, 4).map(item => ( } /> ))}
); }