import { useMovieAction, useMovieSubtitleModification, useMovieWantedPagination, } from "@/apis/hooks"; import Language from "@/components/bazarr/Language"; import { TaskGroup, task } from "@/modules/task"; import WantedView from "@/pages/views/WantedView"; import { BuildKey } from "@/utilities"; import { faSearch } from "@fortawesome/free-solid-svg-icons"; import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; import { Anchor, Badge, Group } from "@mantine/core"; import { FunctionComponent, useMemo } from "react"; import { Link } from "react-router-dom"; import { Column } from "react-table"; const WantedMoviesView: FunctionComponent = () => { const columns: Column[] = useMemo[]>( () => [ { Header: "Name", accessor: "title", Cell: (row) => { const target = `/movies/${row.row.original.radarrId}`; return ( {row.value} ); }, }, { Header: "Missing", accessor: "missing_subtitles", Cell: ({ row, value }) => { const wanted = row.original; const { radarrId } = wanted; const { download } = useMovieSubtitleModification(); return ( {value.map((item, idx) => ( } key={BuildKey(idx, item.code2)} style={{ cursor: "pointer" }} onClick={() => { task.create( item.name, TaskGroup.SearchSubtitle, download.mutateAsync, { radarrId, form: { language: item.code2, hi: item.hi, forced: item.forced, }, } ); }} > ))} ); }, }, ], [] ); const { mutateAsync } = useMovieAction(); const query = useMovieWantedPagination(); return ( mutateAsync({ action: "search-wanted" })} > ); }; export default WantedMoviesView;