diff --git a/frontend/src/Author/Editor/AuthorEditorRow.js b/frontend/src/Author/Editor/AuthorEditorRow.js index 880b57221..d65101923 100644 --- a/frontend/src/Author/Editor/AuthorEditorRow.js +++ b/frontend/src/Author/Editor/AuthorEditorRow.js @@ -27,7 +27,6 @@ class AuthorEditorRow extends Component { status, titleSlug, authorName, - authorType, monitored, metadataProfile, qualityProfile, @@ -62,7 +61,6 @@ class AuthorEditorRow extends Component { return ( @@ -137,7 +135,6 @@ AuthorEditorRow.propTypes = { status: PropTypes.string.isRequired, titleSlug: PropTypes.string.isRequired, authorName: PropTypes.string.isRequired, - authorType: PropTypes.string, monitored: PropTypes.bool.isRequired, metadataProfile: PropTypes.object.isRequired, qualityProfile: PropTypes.object.isRequired, diff --git a/frontend/src/Author/Index/Table/AuthorIndexHeader.css b/frontend/src/Author/Index/Table/AuthorIndexHeader.css index 60c67dde1..66166fa93 100644 --- a/frontend/src/Author/Index/Table/AuthorIndexHeader.css +++ b/frontend/src/Author/Index/Table/AuthorIndexHeader.css @@ -18,12 +18,6 @@ flex-grow: 1; } -.authorType { - composes: headerCell from '~Components/Table/VirtualTableHeaderCell.css'; - - flex: 0 0 100px; -} - .qualityProfileId, .metadataProfileId { composes: headerCell from '~Components/Table/VirtualTableHeaderCell.css'; diff --git a/frontend/src/Author/Index/Table/AuthorIndexRow.css b/frontend/src/Author/Index/Table/AuthorIndexRow.css index e81918cf9..74642e428 100644 --- a/frontend/src/Author/Index/Table/AuthorIndexRow.css +++ b/frontend/src/Author/Index/Table/AuthorIndexRow.css @@ -17,12 +17,6 @@ flex: 4 0 110px; } -.authorType { - composes: cell; - - flex: 0 0 100px; -} - .banner { flex: 0 0 379px; } diff --git a/frontend/src/Book/BookSearchCellConnector.js b/frontend/src/Book/BookSearchCellConnector.js index 45a636b4a..8ebb9a0e4 100644 --- a/frontend/src/Book/BookSearchCellConnector.js +++ b/frontend/src/Book/BookSearchCellConnector.js @@ -28,7 +28,6 @@ function createMapStateToProps() { return { authorMonitored: author.monitored, - authorType: author.authorType, isSearching }; } diff --git a/frontend/src/Book/EpisodeNumber.css b/frontend/src/Book/EpisodeNumber.css deleted file mode 100644 index 1c5072d02..000000000 --- a/frontend/src/Book/EpisodeNumber.css +++ /dev/null @@ -1,7 +0,0 @@ -.absoluteEpisodeNumber { - margin-left: 5px; -} - -.warning { - margin-left: 8px; -} diff --git a/frontend/src/Book/EpisodeNumber.js b/frontend/src/Book/EpisodeNumber.js deleted file mode 100644 index 8d29ed273..000000000 --- a/frontend/src/Book/EpisodeNumber.js +++ /dev/null @@ -1,108 +0,0 @@ -import PropTypes from 'prop-types'; -import React from 'react'; -import Icon from 'Components/Icon'; -import Popover from 'Components/Tooltip/Popover'; -import { icons, kinds, tooltipPositions } from 'Helpers/Props'; -import translate from 'Utilities/String/translate'; -import SceneInfo from './SceneInfo'; -import styles from './EpisodeNumber.css'; - -function EpisodeNumber(props) { - const { - episodeNumber, - absoluteEpisodeNumber, - sceneSeasonNumber, - sceneEpisodeNumber, - sceneAbsoluteEpisodeNumber, - unverifiedSceneNumbering, - alternateTitles, - authorType - } = props; - - const hasSceneInformation = sceneSeasonNumber !== undefined || - sceneEpisodeNumber !== undefined || - (authorType === 'anime' && sceneAbsoluteEpisodeNumber !== undefined) || - !!alternateTitles.length; - - return ( - - { - hasSceneInformation ? - - {episodeNumber} - - { - authorType === 'anime' && !!absoluteEpisodeNumber && - - ({absoluteEpisodeNumber}) - - } - - } - title={translate('SceneInformation')} - body={ - - } - position={tooltipPositions.RIGHT} - /> : - - {episodeNumber} - - { - authorType === 'anime' && !!absoluteEpisodeNumber && - - ({absoluteEpisodeNumber}) - - } - - } - - { - unverifiedSceneNumbering && - - } - - { - authorType === 'anime' && !absoluteEpisodeNumber && - - } - - ); -} - -EpisodeNumber.propTypes = { - seasonNumber: PropTypes.number.isRequired, - episodeNumber: PropTypes.number.isRequired, - absoluteEpisodeNumber: PropTypes.number, - sceneSeasonNumber: PropTypes.number, - sceneEpisodeNumber: PropTypes.number, - sceneAbsoluteEpisodeNumber: PropTypes.number, - unverifiedSceneNumbering: PropTypes.bool.isRequired, - alternateTitles: PropTypes.arrayOf(PropTypes.object).isRequired, - authorType: PropTypes.string -}; - -EpisodeNumber.defaultProps = { - unverifiedSceneNumbering: false, - alternateTitles: [] -}; - -export default EpisodeNumber; diff --git a/frontend/src/Book/EpisodeStatus.css b/frontend/src/Book/EpisodeStatus.css deleted file mode 100644 index 3833887df..000000000 --- a/frontend/src/Book/EpisodeStatus.css +++ /dev/null @@ -1,4 +0,0 @@ -.center { - display: flex; - justify-content: center; -} diff --git a/frontend/src/Book/EpisodeStatus.js b/frontend/src/Book/EpisodeStatus.js deleted file mode 100644 index 83feefcac..000000000 --- a/frontend/src/Book/EpisodeStatus.js +++ /dev/null @@ -1,128 +0,0 @@ -import PropTypes from 'prop-types'; -import React from 'react'; -import QueueDetails from 'Activity/Queue/QueueDetails'; -import Icon from 'Components/Icon'; -import ProgressBar from 'Components/ProgressBar'; -import { icons, kinds, sizes } from 'Helpers/Props'; -import isBefore from 'Utilities/Date/isBefore'; -import translate from 'Utilities/String/translate'; -import BookQuality from './BookQuality'; -import styles from './EpisodeStatus.css'; - -function EpisodeStatus(props) { - const { - airDateUtc, - monitored, - grabbed, - queueItem, - bookFile - } = props; - - const hasBookFile = !!bookFile; - const isQueued = !!queueItem; - const hasAired = isBefore(airDateUtc); - - if (isQueued) { - const { - sizeleft, - size - } = queueItem; - - const progress = (100 - sizeleft / size * 100); - - return ( -
- - } - /> -
- ); - } - - if (grabbed) { - return ( -
- -
- ); - } - - if (hasBookFile) { - const quality = bookFile.quality; - const isCutoffNotMet = bookFile.qualityCutoffNotMet; - - return ( -
- -
- ); - } - - if (!airDateUtc) { - return ( -
- -
- ); - } - - if (!monitored) { - return ( -
- -
- ); - } - - if (hasAired) { - return ( -
- -
- ); - } - - return ( -
- -
- ); -} - -EpisodeStatus.propTypes = { - airDateUtc: PropTypes.string, - monitored: PropTypes.bool, - grabbed: PropTypes.bool, - queueItem: PropTypes.object, - bookFile: PropTypes.object -}; - -export default EpisodeStatus; diff --git a/frontend/src/Book/EpisodeStatusConnector.js b/frontend/src/Book/EpisodeStatusConnector.js deleted file mode 100644 index 51eb4153d..000000000 --- a/frontend/src/Book/EpisodeStatusConnector.js +++ /dev/null @@ -1,53 +0,0 @@ -import _ from 'lodash'; -import PropTypes from 'prop-types'; -import React, { Component } from 'react'; -import { connect } from 'react-redux'; -import { createSelector } from 'reselect'; -import createBookFileSelector from 'Store/Selectors/createBookFileSelector'; -import createBookSelector from 'Store/Selectors/createBookSelector'; -import createQueueItemSelector from 'Store/Selectors/createQueueItemSelector'; -import EpisodeStatus from './EpisodeStatus'; - -function createMapStateToProps() { - return createSelector( - createBookSelector(), - createQueueItemSelector(), - createBookFileSelector(), - (book, queueItem, bookFile) => { - const result = _.pick(book, [ - 'airDateUtc', - 'monitored', - 'grabbed' - ]); - - result.queueItem = queueItem; - result.bookFile = bookFile; - - return result; - } - ); -} - -const mapDispatchToProps = { -}; - -class EpisodeStatusConnector extends Component { - - // - // Render - - render() { - return ( - - ); - } -} - -EpisodeStatusConnector.propTypes = { - bookId: PropTypes.number.isRequired, - bookFileId: PropTypes.number.isRequired -}; - -export default connect(createMapStateToProps, mapDispatchToProps)(EpisodeStatusConnector); diff --git a/frontend/src/Book/SceneInfo.css b/frontend/src/Book/SceneInfo.css deleted file mode 100644 index 8a5f4bccd..000000000 --- a/frontend/src/Book/SceneInfo.css +++ /dev/null @@ -1,17 +0,0 @@ -.descriptionList { - composes: descriptionList from '~Components/DescriptionList/DescriptionList.css'; - - margin-right: 10px; -} - -.title { - composes: title from '~Components/DescriptionList/DescriptionListItemTitle.css'; - - width: 80px; -} - -.description { - composes: title from '~Components/DescriptionList/DescriptionListItemDescription.css'; - - margin-left: 100px; -} diff --git a/frontend/src/Book/SceneInfo.js b/frontend/src/Book/SceneInfo.js deleted file mode 100644 index 9df5db342..000000000 --- a/frontend/src/Book/SceneInfo.js +++ /dev/null @@ -1,84 +0,0 @@ -import PropTypes from 'prop-types'; -import React from 'react'; -import DescriptionList from 'Components/DescriptionList/DescriptionList'; -import DescriptionListItem from 'Components/DescriptionList/DescriptionListItem'; -import translate from 'Utilities/String/translate'; -import styles from './SceneInfo.css'; - -function SceneInfo(props) { - const { - sceneSeasonNumber, - sceneEpisodeNumber, - sceneAbsoluteEpisodeNumber, - alternateTitles, - authorType - } = props; - - return ( - - { - sceneSeasonNumber !== undefined && - - } - - { - sceneEpisodeNumber !== undefined && - - } - - { - authorType === 'anime' && sceneAbsoluteEpisodeNumber !== undefined && - - } - - { - !!alternateTitles.length && - - { - alternateTitles.map((alternateTitle) => { - return ( -
- {alternateTitle.title} -
- ); - }) - } - - } - /> - } -
- ); -} - -SceneInfo.propTypes = { - sceneSeasonNumber: PropTypes.number, - sceneEpisodeNumber: PropTypes.number, - sceneAbsoluteEpisodeNumber: PropTypes.number, - alternateTitles: PropTypes.arrayOf(PropTypes.object).isRequired, - authorType: PropTypes.string -}; - -export default SceneInfo; diff --git a/frontend/src/Book/SeasonEpisodeNumber.js b/frontend/src/Book/SeasonEpisodeNumber.js deleted file mode 100644 index e17df73f7..000000000 --- a/frontend/src/Book/SeasonEpisodeNumber.js +++ /dev/null @@ -1,32 +0,0 @@ -import PropTypes from 'prop-types'; -import React from 'react'; -import EpisodeNumber from './EpisodeNumber'; - -function SeasonEpisodeNumber(props) { - const { - airDate, - authorType, - ...otherProps - } = props; - - if (authorType === 'daily' && airDate) { - return ( - {airDate} - ); - } - - return ( - - ); -} - -SeasonEpisodeNumber.propTypes = { - airDate: PropTypes.string, - authorType: PropTypes.string -}; - -export default SeasonEpisodeNumber; diff --git a/frontend/src/BookFile/Editor/BookFileEditorTableContentConnector.js b/frontend/src/BookFile/Editor/BookFileEditorTableContentConnector.js index ef6ab425e..d9f9b1a0a 100644 --- a/frontend/src/BookFile/Editor/BookFileEditorTableContentConnector.js +++ b/frontend/src/BookFile/Editor/BookFileEditorTableContentConnector.js @@ -47,7 +47,6 @@ function createMapStateToProps() { return { ...schema, items: bookFiles.items, - authorType: author.authorType, isDeleting: bookFiles.isDeleting, isSaving: bookFiles.isSaving }; diff --git a/frontend/src/Components/Form/FormInputGroup.js b/frontend/src/Components/Form/FormInputGroup.js index f39e986ad..ef2729bc0 100644 --- a/frontend/src/Components/Form/FormInputGroup.js +++ b/frontend/src/Components/Form/FormInputGroup.js @@ -22,7 +22,6 @@ import PasswordInput from './PasswordInput'; import PathInputConnector from './PathInputConnector'; import QualityProfileSelectInputConnector from './QualityProfileSelectInputConnector'; import RootFolderSelectInputConnector from './RootFolderSelectInputConnector'; -import SeriesTypeSelectInput from './SeriesTypeSelectInput'; import TagInputConnector from './TagInputConnector'; import TextInput from './TextInput'; import TextTagInputConnector from './TextTagInputConnector'; @@ -85,9 +84,6 @@ function getComponent(type) { case inputTypes.DYNAMIC_SELECT: return EnhancedSelectInputConnector; - case inputTypes.SERIES_TYPE_SELECT: - return SeriesTypeSelectInput; - case inputTypes.TAG: return TagInputConnector; diff --git a/frontend/src/Components/Form/SeriesTypeSelectInput.js b/frontend/src/Components/Form/SeriesTypeSelectInput.js deleted file mode 100644 index b31e51838..000000000 --- a/frontend/src/Components/Form/SeriesTypeSelectInput.js +++ /dev/null @@ -1,53 +0,0 @@ -import PropTypes from 'prop-types'; -import React from 'react'; -import SelectInput from './SelectInput'; - -const authorTypeOptions = [ - { key: 'standard', value: 'Standard' }, - { key: 'daily', value: 'Daily' }, - { key: 'anime', value: 'Anime' } -]; - -function SeriesTypeSelectInput(props) { - const values = [...authorTypeOptions]; - - const { - includeNoChange, - includeMixed - } = props; - - if (includeNoChange) { - values.unshift({ - key: 'noChange', - value: 'No Change', - disabled: true - }); - } - - if (includeMixed) { - values.unshift({ - key: 'mixed', - value: '(Mixed)', - disabled: true - }); - } - - return ( - - ); -} - -SeriesTypeSelectInput.propTypes = { - includeNoChange: PropTypes.bool.isRequired, - includeMixed: PropTypes.bool.isRequired -}; - -SeriesTypeSelectInput.defaultProps = { - includeNoChange: false, - includeMixed: false -}; - -export default SeriesTypeSelectInput; diff --git a/frontend/src/Helpers/Props/inputTypes.js b/frontend/src/Helpers/Props/inputTypes.js index f71f4f531..6fe18d0b8 100644 --- a/frontend/src/Helpers/Props/inputTypes.js +++ b/frontend/src/Helpers/Props/inputTypes.js @@ -15,7 +15,6 @@ export const BOOK_EDITION_SELECT = 'bookEditionSelect'; export const INDEXER_SELECT = 'indexerSelect'; export const ROOT_FOLDER_SELECT = 'rootFolderSelect'; export const SELECT = 'select'; -export const SERIES_TYPE_SELECT = 'authorTypeSelect'; export const DYNAMIC_SELECT = 'dynamicSelect'; export const TAG = 'tag'; export const TEXT = 'text'; @@ -41,7 +40,6 @@ export const all = [ ROOT_FOLDER_SELECT, SELECT, DYNAMIC_SELECT, - SERIES_TYPE_SELECT, TAG, TEXT, TEXT_TAG, diff --git a/frontend/src/Store/Actions/bookshelfActions.js b/frontend/src/Store/Actions/bookshelfActions.js index a8ee92297..5e5f4cd08 100644 --- a/frontend/src/Store/Actions/bookshelfActions.js +++ b/frontend/src/Store/Actions/bookshelfActions.js @@ -41,11 +41,6 @@ export const defaultState = { type: filterBuilderTypes.EXACT, valueType: filterBuilderValueTypes.AUTHOR_STATUS }, - { - name: 'authorType', - label: 'Author Type', - type: filterBuilderTypes.EXACT - }, { name: 'qualityProfileId', label: 'Quality Profile', diff --git a/frontend/src/Utilities/Author/getNewAuthor.js b/frontend/src/Utilities/Author/getNewAuthor.js index 7c156ef9a..bea2ca0af 100644 --- a/frontend/src/Utilities/Author/getNewAuthor.js +++ b/frontend/src/Utilities/Author/getNewAuthor.js @@ -5,7 +5,6 @@ function getNewAuthor(author, payload) { monitor, qualityProfileId, metadataProfileId, - authorType, tags, searchForMissingBooks = false } = payload; @@ -20,7 +19,6 @@ function getNewAuthor(author, payload) { author.qualityProfileId = qualityProfileId; author.metadataProfileId = metadataProfileId; author.rootFolderPath = rootFolderPath; - author.authorType = authorType; author.tags = tags; return author; diff --git a/frontend/src/Wanted/CutoffUnmet/CutoffUnmetRow.css b/frontend/src/Wanted/CutoffUnmet/CutoffUnmetRow.css deleted file mode 100644 index 106842b2b..000000000 --- a/frontend/src/Wanted/CutoffUnmet/CutoffUnmetRow.css +++ /dev/null @@ -1,6 +0,0 @@ -.episode, -.status { - composes: cell from '~Components/Table/Cells/TableRowCell.css'; - - width: 100px; -} diff --git a/frontend/src/Wanted/CutoffUnmet/CutoffUnmetRow.js b/frontend/src/Wanted/CutoffUnmet/CutoffUnmetRow.js index 3aa5b521e..455a89bcc 100644 --- a/frontend/src/Wanted/CutoffUnmet/CutoffUnmetRow.js +++ b/frontend/src/Wanted/CutoffUnmet/CutoffUnmetRow.js @@ -4,17 +4,14 @@ import AuthorNameLink from 'Author/AuthorNameLink'; import bookEntities from 'Book/bookEntities'; import BookSearchCellConnector from 'Book/BookSearchCellConnector'; import BookTitleLink from 'Book/BookTitleLink'; -import EpisodeStatusConnector from 'Book/EpisodeStatusConnector'; import RelativeDateCellConnector from 'Components/Table/Cells/RelativeDateCellConnector'; import TableRowCell from 'Components/Table/Cells/TableRowCell'; import TableSelectCell from 'Components/Table/Cells/TableSelectCell'; import TableRow from 'Components/Table/TableRow'; -import styles from './CutoffUnmetRow.css'; function CutoffUnmetRow(props) { const { id, - bookFileId, author, releaseDate, titleSlug, @@ -80,21 +77,6 @@ function CutoffUnmetRow(props) { ); } - if (name === 'status') { - return ( - - - - ); - } - if (name === 'actions') { return (