diff --git a/apps/expo/src/components/item/item.tsx b/apps/expo/src/components/item/item.tsx index 7559bf6..5478c6c 100644 --- a/apps/expo/src/components/item/item.tsx +++ b/apps/expo/src/components/item/item.tsx @@ -14,6 +14,8 @@ export interface ItemData { id: string; title: string; type: "movie" | "tv"; + season?: number; + episode?: number; year: number; release_date?: Date; posterUrl: string; diff --git a/apps/expo/src/components/player/ScraperProcess.tsx b/apps/expo/src/components/player/ScraperProcess.tsx index a35d21b..ff8dcd3 100644 --- a/apps/expo/src/components/player/ScraperProcess.tsx +++ b/apps/expo/src/components/player/ScraperProcess.tsx @@ -60,7 +60,12 @@ export const ScraperProcess = ({ let meta: PlayerMeta | undefined = undefined; if (!media && data?.id && data.type) { - meta = await convertIdToMeta(data.id, data.type); + meta = await convertIdToMeta( + data.id, + data.type, + data.season, + data.episode, + ); if (!meta) return router.back(); } diff --git a/apps/expo/src/hooks/player/useMeta.ts b/apps/expo/src/hooks/player/useMeta.ts index ccb9388..475ff21 100644 --- a/apps/expo/src/hooks/player/useMeta.ts +++ b/apps/expo/src/hooks/player/useMeta.ts @@ -10,14 +10,19 @@ export const useMeta = () => { const setMeta = usePlayerStore((state) => state.setMeta); const convertIdToMeta = useCallback( - async (id: string, type: "movie" | "tv") => { + async ( + id: string, + type: "movie" | "tv", + season?: number, + episode?: number, + ) => { const media = await fetchMediaDetails(id, type); if (!media) return; const scrapeMedia = transformSearchResultToScrapeMedia( media.type, media.result, - meta?.season?.number, - meta?.episode?.number, + season ?? meta?.season?.number, + episode ?? meta?.episode?.number, ); let seasonData = null; if (scrapeMedia.type === "show") {