diff --git a/web/apps/cast/src/components/PhotoAuditorium.tsx b/web/apps/cast/src/components/PhotoAuditorium.tsx index 0042dfe95..9f0d9120d 100644 --- a/web/apps/cast/src/components/PhotoAuditorium.tsx +++ b/web/apps/cast/src/components/PhotoAuditorium.tsx @@ -1,15 +1,15 @@ -import { SlideshowContext } from "pages/slideshow"; -import { useContext, useEffect, useState } from "react"; +import { useEffect, useState } from "react"; -export default function PhotoAuditorium({ - url, - nextSlideUrl, -}: { +interface PhotoAuditoriumProps { url: string; nextSlideUrl: string; -}) { - const { showNextSlide } = useContext(SlideshowContext); - + showNextSlide: () => void; +} +export const PhotoAuditorium: React.FC = ({ + url, + nextSlideUrl, + showNextSlide, +}) => { const [showPreloadedNextSlide, setShowPreloadedNextSlide] = useState(false); const [nextSlidePrerendered, setNextSlidePrerendered] = useState(false); const [prerenderTime, setPrerenderTime] = useState(null); @@ -92,4 +92,4 @@ export default function PhotoAuditorium({ ); -} +}; diff --git a/web/apps/cast/src/pages/slideshow.tsx b/web/apps/cast/src/pages/slideshow.tsx index 28061d0a4..253015981 100644 --- a/web/apps/cast/src/pages/slideshow.tsx +++ b/web/apps/cast/src/pages/slideshow.tsx @@ -1,9 +1,9 @@ import log from "@/next/log"; import PairedSuccessfullyOverlay from "components/PairedSuccessfullyOverlay"; -import PhotoAuditorium from "components/PhotoAuditorium"; +import { PhotoAuditorium } from "components/PhotoAuditorium"; import { FILE_TYPE } from "constants/file"; import { useRouter } from "next/router"; -import { createContext, useEffect, useState } from "react"; +import { useEffect, useState } from "react"; import { getCastCollection, getLocalFiles, @@ -13,10 +13,6 @@ import { Collection } from "types/collection"; import { EnteFile } from "types/file"; import { getPreviewableImage, isRawFileFromFileName } from "utils/file"; -export const SlideshowContext = createContext<{ - showNextSlide: () => void; -}>(null); - const renderableFileURLCache = new Map(); export default function Slideshow() { @@ -28,6 +24,7 @@ export default function Slideshow() { const [collectionFiles, setCollectionFiles] = useState([]); const [currentFileId, setCurrentFileId] = useState(); const [currentFileURL, setCurrentFileURL] = useState(); + // eslint-disable-next-line @typescript-eslint/no-unused-vars const [nextFileURL, setNextFileURL] = useState(); const router = useRouter(); @@ -156,15 +153,13 @@ export default function Slideshow() { setNextFileURL(nextNextURL); }; + if (loading) return ; + return ( - <> - - - - {loading && } - + ); }