import { useNavigate, useParams } from 'react-router-dom' import { useAuthStore } from '../stores/auth' import { MediaDetailBackdrop } from './MediaDetailArtwork' import { MediaDetailBackButton, MediaDetailDialogs, MediaDetailLoading, MediaDetailMainContent, MediaDetailMissing, } from './MediaDetailPageSections' import { LibrarySeriesEpisodes } from './LibrarySeriesEpisodes' import { useMediaDetailPageState } from './useMediaDetailPageState' export function MediaDetailPage() { const { id = '' } = useParams() const navigate = useNavigate() const role = useAuthStore((s) => s.user?.role) const detail = useMediaDetailPageState({ id, navigate }) if (detail.loading) return if (!detail.media) return const media = detail.media return (
detail.setManualScrapeOpen(true)} onMetadataEdit={() => detail.setMetadataEditOpen(true)} onOrganize={() => detail.setOrganizeOpen(true)} onProbe={detail.reprobe} onExportNFO={detail.exportNFO} onDelete={detail.deleteMedia} /> {detail.hasEpisodes && (
)} detail.setManualScrapeOpen(false)} onMetadataEditClose={() => detail.setMetadataEditOpen(false)} onOrganizeClose={() => detail.setOrganizeOpen(false)} onManualScrapeApplied={detail.refresh} onMetadataSaved={detail.handleMetadataSaved} onOrganized={detail.refresh} />
) }