import { useTranslation } from "react-i18next"; import { Icons } from "@/components/Icon"; import { SectionHeading } from "@/components/layout/SectionHeading"; import { MediaGrid } from "@/components/media/MediaGrid"; import { getIfBookmarkedFromPortable, useBookmarkContext, } from "@/state/bookmark"; import { useWatchedContext } from "@/state/watched"; import { WatchedMediaCard } from "@/components/media/WatchedMediaCard"; import { EditButton } from "@/components/buttons/EditButton"; import { useMemo, useState } from "react"; import { useAutoAnimate } from "@formkit/auto-animate/react"; import { VideoPlayerIconButton } from "@/video/components/parts/VideoPlayerIconButton"; import { useHistory, useLocation } from "react-router-dom"; function Bookmarks() { const { t } = useTranslation(); const { getFilteredBookmarks, setItemBookmark } = useBookmarkContext(); const bookmarks = getFilteredBookmarks(); const [editing, setEditing] = useState(false); const [gridRef] = useAutoAnimate(); if (bookmarks.length === 0) return null; return (
{bookmarks.map((v) => ( setItemBookmark(v, false)} /> ))}
); } function Watched() { const { t } = useTranslation(); const { getFilteredBookmarks } = useBookmarkContext(); const { getFilteredWatched, removeProgress } = useWatchedContext(); const [editing, setEditing] = useState(false); const [gridRef] = useAutoAnimate(); const bookmarks = getFilteredBookmarks(); const watchedItems = getFilteredWatched().filter( (v) => !getIfBookmarkedFromPortable(bookmarks, v.item.meta) ); if (watchedItems.length === 0) return null; return (
{watchedItems.map((v) => ( removeProgress(v.item.meta.id)} /> ))}
); } function NewDomainInfo() { const location = useLocation(); const history = useHistory(); return (
{ const queryParams = new URLSearchParams(location.search); queryParams.delete("redirected"); history.replace({ search: queryParams.toString(), }); }} />

Hey there!

Welcome to the long-awaited shiny new update of movie-web. This awesome updates includes an awesome new look, updated functionality, and even a fully custom-built video player.

We also have a new domain! Please be sure to update your bookmarks, as the old domain is going to stop working on May 31st. The new domain is movie-web.app

); } export function HomeView() { const location = useLocation(); const showNewDomainInfo = useMemo(() => { return location.search.includes("redirected=1"); }, [location.search]); return (
{showNewDomainInfo ? : ""}
); }