import { useTranslation } from 'react-i18next' import { rgba } from 'polished' import { NoImageIcon } from 'icons' import { FormControl, FormHelperText, IconButton, InputAdornment, MenuItem, Select, TextField, useTheme, } from '@material-ui/core' import { HighlightOff as HighlightOffIcon } from '@material-ui/icons' import { TORRENT_CATEGORIES } from 'components/categories' import { ClearPosterButton, PosterLanguageSwitch, RightSide, Poster, PosterSuggestions, PosterSuggestionsItem, PosterWrapper, RightSideContainer, } from './style' import { checkImageURL } from './helpers' export default function RightSideComponent({ setTitle, setCategory, setPosterUrl, setIsPosterUrlCorrect, setIsUserInteractedWithPoster, setPosterList, isTorrentSourceCorrect, isHashAlreadyExists, title, category, parsedTitle, posterUrl, isPosterUrlCorrect, posterList, currentLang, posterSearchLanguage, setPosterSearchLanguage, posterSearch, removePoster, torrentSource, originalTorrentTitle, updateTitleFromSource, isCustomTitleEnabled, setIsCustomTitleEnabled, isEditMode, }) { const { t } = useTranslation() const primary = useTheme().palette.primary.main const handleTitleChange = ({ target: { value } }) => setTitle(value) const handleCategoryChange = ({ target: { value } }) => setCategory(value) const handlePosterUrlChange = ({ target: { value } }) => { setPosterUrl(value) checkImageURL(value).then(setIsPosterUrlCorrect) setIsUserInteractedWithPoster(!!value) setPosterList() } const userChangesPosterUrl = url => { setPosterUrl(url) checkImageURL(url).then(setIsPosterUrlCorrect) setIsUserInteractedWithPoster(true) } // main categories const catIndex = TORRENT_CATEGORIES.findIndex(e => e.key === category) // const catArray = TORRENT_CATEGORIES.find(e => e.key === category) return ( {originalTorrentTitle ? ( <> setIsCustomTitleEnabled(true)} onBlur={({ target: { value } }) => !value && setIsCustomTitleEnabled(false)} value={title} margin='dense' label={t('AddDialog.CustomTorrentTitle')} type='text' variant='outlined' fullWidth helperText={t('AddDialog.CustomTorrentTitleHelperText')} InputProps={{ endAdornment: ( { setTitle('') setIsCustomTitleEnabled(!isCustomTitleEnabled) updateTitleFromSource() setIsUserInteractedWithPoster(false) }} > ), }} /> ) : ( )} {t('AddDialog.CategoryHelperText')} {isPosterUrlCorrect ? poster : } {posterList ?.filter(url => url !== posterUrl) .slice(0, 12) .map(url => ( userChangesPosterUrl(url)} key={url}> poster ))} {currentLang !== 'en' && ( { const newLanguage = posterSearchLanguage === 'en' ? 'ru' : 'en' setPosterSearchLanguage(newLanguage) posterSearch(isCustomTitleEnabled ? title : originalTorrentTitle ? parsedTitle : title, newLanguage, { shouldRefreshMainPoster: true, }) }} showbutton={+isPosterUrlCorrect} color='primary' variant='contained' size='small' > {posterSearchLanguage === 'en' ? 'EN' : 'RU'} )} { removePoster() setIsUserInteractedWithPoster(true) }} color='primary' variant='contained' size='small' > {t('Clear')} ) }