diff --git a/src/components/SearchVideos.tsx b/src/components/SearchVideos.tsx index 63b4ed872..3f24f6194 100644 --- a/src/components/SearchVideos.tsx +++ b/src/components/SearchVideos.tsx @@ -12,6 +12,22 @@ type Video = { iframe_src: string; }; +const getPlayableIframeSrc = (iframeSrc: string) => { + try { + const url = new URL(iframeSrc); + + if (url.hostname.endsWith('youtube-nocookie.com')) { + url.hostname = 'www.youtube.com'; + } + + url.searchParams.set('enablejsapi', '1'); + + return url.toString(); + } catch { + return `${iframeSrc}${iframeSrc.includes('?') ? '&' : '?'}enablejsapi=1`; + } +}; + declare module 'yet-another-react-lightbox' { export interface VideoSlide extends GenericSlide { type: 'video-slide'; @@ -199,7 +215,7 @@ const Searchvideos = ({ return slide.type === 'video-slide' ? (