From 1700c471b7e72d0724bf7b13b8fd27bc72ee1d68 Mon Sep 17 00:00:00 2001 From: Qstick Date: Sat, 7 Oct 2017 18:38:31 -0400 Subject: [PATCH] More UI Cleanup --- .../src/Activity/Blacklist/BlacklistRow.js | 10 +++---- .../Blacklist/BlacklistRowConnector.js | 4 +-- .../Activity/History/HistoryEventTypeCell.js | 4 +-- frontend/src/Activity/Queue/QueueRow.js | 18 ++++++------ .../src/Activity/Queue/QueueRowConnector.js | 4 +-- .../AddArtist/AddNewArtist/AddNewArtist.js | 2 +- .../AddNewArtist/AddNewArtistModalContent.js | 1 - .../ImportArtist/Import/ImportArtist.js | 2 +- .../ImportArtist/Import/ImportArtistFooter.js | 11 +------- .../Import/ImportArtistFooterConnector.js | 12 +++----- .../Import/ImportArtistHeader.css | 7 ----- .../ImportArtist/Import/ImportArtistHeader.js | 2 +- .../ImportArtist/Import/ImportArtistRow.css | 9 +----- .../ImportArtist/Import/ImportArtistRow.js | 4 +-- .../Import/ImportArtistRowConnector.js | 6 ++-- .../ImportArtist/Import/ImportArtistTable.js | 9 ++---- .../Import/ImportArtistTableConnector.js | 3 +- .../src/AlbumStudio/AlbumStudioConnector.js | 6 ++-- .../AlbumStudio/AlbumStudioRowConnector.js | 12 ++++---- frontend/src/Artist/Delete/DeleteArtist.less | 2 +- .../DeleteArtistModalContentConnector.js | 4 +-- .../src/Artist/Details/AlbumRowConnector.js | 7 ++--- .../Artist/Details/ArtistDetailsConnector.js | 16 +++++------ .../Details/ArtistDetailsPageConnector.js | 2 +- .../Details/ArtistDetailsSeasonConnector.js | 6 ++-- .../src/Artist/Details/ArtistTagsConnector.js | 4 +-- .../Artist/Edit/EditArtistModalConnector.js | 2 +- .../src/Artist/Edit/EditArtistModalContent.js | 1 - .../Edit/EditArtistModalContentConnector.js | 13 ++++----- .../Artist/Editor/ArtistEditorConnector.js | 6 ++-- .../src/Artist/Editor/ArtistEditorFooter.js | 1 - .../Editor/Delete/DeleteArtistModalContent.js | 12 ++++---- .../DeleteArtistModalContentConnector.js | 4 +-- .../OrganizeArtistModalContentConnector.js | 4 +-- .../Artist/Editor/Tags/TagsModalContent.js | 2 +- .../Editor/Tags/TagsModalContentConnector.js | 4 +-- frontend/src/Artist/Index/ArtistIndex.js | 2 +- .../src/Artist/Index/ArtistIndexConnector.js | 6 ++-- .../src/Artist/Index/ArtistIndexFooter.js | 8 +++--- .../Index/Banners/ArtistIndexBanners.js | 6 ++-- .../Banners/ArtistIndexBannersConnector.js | 6 ++-- .../Index/Posters/ArtistIndexPosters.js | 6 ++-- .../Posters/ArtistIndexPostersConnector.js | 6 ++-- .../Artist/Index/Table/ArtistIndexTable.js | 4 +-- .../Index/Table/ArtistIndexTableConnector.js | 6 ++-- frontend/src/Calendar/Agenda/AgendaEvent.js | 9 ------ frontend/src/Calendar/Events/CalendarEvent.js | 2 +- .../Components/Form/SeriesTypeSelectInput.js | 4 +-- .../src/Components/MonitorToggleButton.js | 2 +- frontend/src/Components/Page/ErrorPage.js | 10 +++---- .../Page/Header/ArtistSearchInput.css | 6 ++-- .../Page/Header/ArtistSearchInput.js | 24 ++++++++-------- .../Page/Header/ArtistSearchInputConnector.js | 6 ++-- frontend/src/Components/Page/PageConnector.js | 10 +++---- .../Page/Sidebar/Messages/Message.js | 2 +- .../Components/Page/Sidebar/PageSidebar.js | 2 +- frontend/src/Components/SignalRConnector.js | 8 +++--- .../src/Episode/EpisodeDetailsModalContent.js | 4 +-- .../EpisodeDetailsModalContentConnector.js | 8 ++---- frontend/src/Episode/EpisodeNumber.js | 14 +++++----- .../src/Episode/EpisodeSearchCellConnector.js | 6 ++-- frontend/src/Episode/EpisodeTitleLink.js | 2 +- frontend/src/Episode/SceneInfo.js | 6 ++-- frontend/src/Episode/SeasonEpisodeNumber.js | 8 +++--- frontend/src/Helpers/Props/inputTypes.js | 2 +- .../OrganizePreviewModalContentConnector.js | 4 +-- .../EditRestrictionModalContent.js | 2 +- .../EditNotificationModalContent.js | 2 +- .../Delay/EditDelayProfileModalContent.js | 4 +-- .../EditLanguageProfileModalContent.js | 2 +- .../Quality/EditQualityProfileModalContent.js | 2 +- frontend/src/Settings/Settings.js | 2 +- .../Store/Actions/addArtistActionHandlers.js | 2 +- .../Actions/albumStudioActionHandlers.js | 18 ++++++------ .../src/Store/Actions/artistActionHandlers.js | 18 ++++++------ frontend/src/Store/Actions/artistActions.js | 4 +-- .../Actions/artistEditorActionHandlers.js | 8 +++--- .../Actions/importArtistActionHandlers.js | 12 ++++---- .../src/Store/Actions/importArtistActions.js | 2 +- .../src/Store/Reducers/addArtistReducers.js | 1 - frontend/src/Store/Reducers/artistReducers.js | 2 +- .../src/Store/Reducers/blacklistReducers.js | 2 +- frontend/src/Store/Reducers/index.js | 10 +++---- .../Reducers/interactiveImportReducers.js | 6 ++-- frontend/src/Store/Reducers/queueReducers.js | 2 +- frontend/src/Store/Reducers/wantedReducers.js | 2 +- .../Selectors/createAllArtistSelector.js | 6 ++-- .../Store/Selectors/createArtistSelector.js | 4 +-- .../Selectors/createExistingArtistSelector.js | 4 +-- .../createImportArtistItemSelector.js | 7 ++--- .../Selectors/createProfileInUseSelector.js | 4 +-- .../TrackFileEditorModalContentConnector.js | 4 +-- frontend/src/Utilities/Series/getNewSeries.js | 28 +++++++++---------- .../src/Wanted/CutoffUnmet/CutoffUnmetRow.js | 16 +++++------ frontend/src/Wanted/Missing/MissingRow.js | 13 --------- src/Lidarr.Api.V3/Albums/AlbumModule.cs | 6 ++-- 96 files changed, 267 insertions(+), 333 deletions(-) diff --git a/frontend/src/Activity/Blacklist/BlacklistRow.js b/frontend/src/Activity/Blacklist/BlacklistRow.js index ef055798e..d6d4d7c21 100644 --- a/frontend/src/Activity/Blacklist/BlacklistRow.js +++ b/frontend/src/Activity/Blacklist/BlacklistRow.js @@ -40,7 +40,7 @@ class BlacklistRow extends Component { render() { const { - series, + artist, sourceTitle, language, quality, @@ -64,12 +64,12 @@ class BlacklistRow extends Component { return null; } - if (name === 'series.sortName') { + if (name === 'artist.sortName') { return ( ); @@ -163,7 +163,7 @@ class BlacklistRow extends Component { BlacklistRow.propTypes = { id: PropTypes.number.isRequired, - series: PropTypes.object.isRequired, + artist: PropTypes.object.isRequired, sourceTitle: PropTypes.string.isRequired, language: PropTypes.object.isRequired, quality: PropTypes.object.isRequired, diff --git a/frontend/src/Activity/Blacklist/BlacklistRowConnector.js b/frontend/src/Activity/Blacklist/BlacklistRowConnector.js index 0cf173c9e..f4f9217bf 100644 --- a/frontend/src/Activity/Blacklist/BlacklistRowConnector.js +++ b/frontend/src/Activity/Blacklist/BlacklistRowConnector.js @@ -6,9 +6,9 @@ import BlacklistRow from './BlacklistRow'; function createMapStateToProps() { return createSelector( createArtistSelector(), - (series) => { + (artist) => { return { - series + artist }; } ); diff --git a/frontend/src/Activity/History/HistoryEventTypeCell.js b/frontend/src/Activity/History/HistoryEventTypeCell.js index 6494bb08f..065ab0492 100644 --- a/frontend/src/Activity/History/HistoryEventTypeCell.js +++ b/frontend/src/Activity/History/HistoryEventTypeCell.js @@ -9,7 +9,7 @@ function getIconName(eventType) { switch (eventType) { case 'grabbed': return icons.DOWNLOADING; - case 'seriesFolderImported': + case 'artistFolderImported': return icons.DRIVE; case 'downloadFolderImported': return icons.DOWNLOADED; @@ -37,7 +37,7 @@ function getTooltip(eventType, data) { switch (eventType) { case 'grabbed': return `Album grabbed from ${data.indexer} and sent to ${data.downloadClient}`; - case 'seriesFolderImported': + case 'artistFolderImported': return 'Track imported from artist folder'; case 'downloadFolderImported': return 'Track downloaded successfully and picked up from download client'; diff --git a/frontend/src/Activity/Queue/QueueRow.js b/frontend/src/Activity/Queue/QueueRow.js index 6b849ecf3..feb864530 100644 --- a/frontend/src/Activity/Queue/QueueRow.js +++ b/frontend/src/Activity/Queue/QueueRow.js @@ -68,7 +68,7 @@ class QueueRow extends Component { trackedDownloadStatus, statusMessages, errorMessage, - series, + artist, episode, quality, protocol, @@ -131,23 +131,23 @@ class QueueRow extends Component { ); } - if (name === 'series.sortName') { + if (name === 'artist.sortName') { return ( ); } - if (name === 'series') { + if (name === 'artist') { return ( ); @@ -158,7 +158,7 @@ class QueueRow extends Component { { + (artist, episode, uiSettings) => { const result = _.pick(uiSettings, [ 'showRelativeDates', 'shortDateFormat', 'timeFormat' ]); - result.series = series; + result.artist = artist; result.episode = episode; return result; diff --git a/frontend/src/AddArtist/AddNewArtist/AddNewArtist.js b/frontend/src/AddArtist/AddNewArtist/AddNewArtist.js index 0c411294d..59c9e2e7f 100644 --- a/frontend/src/AddArtist/AddNewArtist/AddNewArtist.js +++ b/frontend/src/AddArtist/AddNewArtist/AddNewArtist.js @@ -146,7 +146,7 @@ class AddNewArtist extends Component {
Couldn't find any results for '{term}'
You can also search using MusicBrainz ID of a show. eg. lidarr:71663
- + Why can't I find my artist?
diff --git a/frontend/src/AddArtist/AddNewArtist/AddNewArtistModalContent.js b/frontend/src/AddArtist/AddNewArtist/AddNewArtistModalContent.js index 4edf965f6..fa2de4d74 100644 --- a/frontend/src/AddArtist/AddNewArtist/AddNewArtistModalContent.js +++ b/frontend/src/AddArtist/AddNewArtist/AddNewArtistModalContent.js @@ -15,7 +15,6 @@ import ModalFooter from 'Components/Modal/ModalFooter'; import Popover from 'Components/Tooltip/Popover'; import ArtistPoster from 'Artist/ArtistPoster'; import ArtistMonitoringOptionsPopoverContent from 'AddArtist/ArtistMonitoringOptionsPopoverContent'; -// import SeriesTypePopoverContent from 'AddArtist/SeriesTypePopoverContent'; import styles from './AddNewArtistModalContent.css'; class AddNewArtistModalContent extends Component { diff --git a/frontend/src/AddArtist/ImportArtist/Import/ImportArtist.js b/frontend/src/AddArtist/ImportArtist/Import/ImportArtist.js index e41df0090..3c4bea3b6 100644 --- a/frontend/src/AddArtist/ImportArtist/Import/ImportArtist.js +++ b/frontend/src/AddArtist/ImportArtist/Import/ImportArtist.js @@ -116,7 +116,7 @@ class ImportArtist extends Component { { !rootFoldersError && rootFoldersPopulated && !unmappedFolders.length &&
- All series in {path} have been imported + All artist in {path} have been imported
} diff --git a/frontend/src/AddArtist/ImportArtist/Import/ImportArtistFooter.js b/frontend/src/AddArtist/ImportArtist/Import/ImportArtistFooter.js index 4ea72540b..8353d9be2 100644 --- a/frontend/src/AddArtist/ImportArtist/Import/ImportArtistFooter.js +++ b/frontend/src/AddArtist/ImportArtist/Import/ImportArtistFooter.js @@ -23,15 +23,13 @@ class ImportArtistFooter extends Component { defaultMonitor, defaultQualityProfileId, defaultLanguageProfileId, - defaultAlbumFolder, - defaultSeriesType + defaultAlbumFolder } = props; this.state = { monitor: defaultMonitor, qualityProfileId: defaultQualityProfileId, languageProfileId: defaultLanguageProfileId, - seriesType: defaultSeriesType, albumFolder: defaultAlbumFolder }; } @@ -41,12 +39,10 @@ class ImportArtistFooter extends Component { defaultMonitor, defaultQualityProfileId, defaultLanguageProfileId, - // defaultSeriesType, defaultAlbumFolder, isMonitorMixed, isQualityProfileIdMixed, isLanguageProfileIdMixed, - // isSeriesTypeMixed, isAlbumFolderMixed } = this.props; @@ -54,7 +50,6 @@ class ImportArtistFooter extends Component { monitor, qualityProfileId, languageProfileId, - // seriesType, albumFolder } = this.state; @@ -108,7 +103,6 @@ class ImportArtistFooter extends Component { isMonitorMixed, isQualityProfileIdMixed, isLanguageProfileIdMixed, - // isSeriesTypeMixed, showLanguageProfile, onImportPress } = this.props; @@ -117,7 +111,6 @@ class ImportArtistFooter extends Component { monitor, qualityProfileId, languageProfileId, - // seriesType, albumFolder } = this.state; @@ -227,12 +220,10 @@ ImportArtistFooter.propTypes = { defaultMonitor: PropTypes.string.isRequired, defaultQualityProfileId: PropTypes.number, defaultLanguageProfileId: PropTypes.number, - defaultSeriesType: PropTypes.string.isRequired, defaultAlbumFolder: PropTypes.bool.isRequired, isMonitorMixed: PropTypes.bool.isRequired, isQualityProfileIdMixed: PropTypes.bool.isRequired, isLanguageProfileIdMixed: PropTypes.bool.isRequired, - // isSeriesTypeMixed: PropTypes.bool.isRequired, isAlbumFolderMixed: PropTypes.bool.isRequired, showLanguageProfile: PropTypes.bool.isRequired, onInputChange: PropTypes.func.isRequired, diff --git a/frontend/src/AddArtist/ImportArtist/Import/ImportArtistFooterConnector.js b/frontend/src/AddArtist/ImportArtist/Import/ImportArtistFooterConnector.js index aaa99c363..7b45a4b31 100644 --- a/frontend/src/AddArtist/ImportArtist/Import/ImportArtistFooterConnector.js +++ b/frontend/src/AddArtist/ImportArtist/Import/ImportArtistFooterConnector.js @@ -4,8 +4,8 @@ import { createSelector } from 'reselect'; import ImportArtistFooter from './ImportArtistFooter'; function isMixed(items, selectedIds, defaultValue, key) { - return _.some(items, (series) => { - return selectedIds.indexOf(series.id) > -1 && series[key] !== defaultValue; + return _.some(items, (artist) => { + return selectedIds.indexOf(artist.id) > -1 && artist[key] !== defaultValue; }); } @@ -19,20 +19,18 @@ function createMapStateToProps() { monitor: defaultMonitor, qualityProfileId: defaultQualityProfileId, languageProfileId: defaultLanguageProfileId, - seriesType: defaultSeriesType, albumFolder: defaultAlbumFolder } = addArtist.defaults; const items = importArtist.items; - const isLookingUpArtist = _.some(importArtist.items, (series) => { - return !series.isPopulated && series.error == null; + const isLookingUpArtist = _.some(importArtist.items, (artist) => { + return !artist.isPopulated && artist.error == null; }); const isMonitorMixed = isMixed(items, selectedIds, defaultMonitor, 'monitor'); const isQualityProfileIdMixed = isMixed(items, selectedIds, defaultQualityProfileId, 'qualityProfileId'); const isLanguageProfileIdMixed = isMixed(items, selectedIds, defaultLanguageProfileId, 'languageProfileId'); - const isSeriesTypeMixed = isMixed(items, selectedIds, defaultSeriesType, 'seriesType'); const isAlbumFolderMixed = isMixed(items, selectedIds, defaultAlbumFolder, 'albumFolder'); return { @@ -42,12 +40,10 @@ function createMapStateToProps() { defaultMonitor, defaultQualityProfileId, defaultLanguageProfileId, - defaultSeriesType, defaultAlbumFolder, isMonitorMixed, isQualityProfileIdMixed, isLanguageProfileIdMixed, - isSeriesTypeMixed, isAlbumFolderMixed }; } diff --git a/frontend/src/AddArtist/ImportArtist/Import/ImportArtistHeader.css b/frontend/src/AddArtist/ImportArtist/Import/ImportArtistHeader.css index a79568428..a42c0c696 100644 --- a/frontend/src/AddArtist/ImportArtist/Import/ImportArtistHeader.css +++ b/frontend/src/AddArtist/ImportArtist/Import/ImportArtistHeader.css @@ -19,13 +19,6 @@ min-width: 170px; } -.seriesType { - composes: headerCell from 'Components/Table/VirtualTableHeaderCell.css'; - - flex: 0 1 200px; - min-width: 120px; -} - .albumFolder { composes: headerCell from 'Components/Table/VirtualTableHeaderCell.css'; diff --git a/frontend/src/AddArtist/ImportArtist/Import/ImportArtistHeader.js b/frontend/src/AddArtist/ImportArtist/Import/ImportArtistHeader.js index 0423b2082..edb07beb4 100644 --- a/frontend/src/AddArtist/ImportArtist/Import/ImportArtistHeader.js +++ b/frontend/src/AddArtist/ImportArtist/Import/ImportArtistHeader.js @@ -78,7 +78,7 @@ function ImportArtistHeader(props) { Artist diff --git a/frontend/src/AddArtist/ImportArtist/Import/ImportArtistRow.css b/frontend/src/AddArtist/ImportArtist/Import/ImportArtistRow.css index 36c304b1d..26e0998f3 100644 --- a/frontend/src/AddArtist/ImportArtist/Import/ImportArtistRow.css +++ b/frontend/src/AddArtist/ImportArtist/Import/ImportArtistRow.css @@ -24,13 +24,6 @@ min-width: 170px; } -.seriesType { - composes: cell from 'Components/Table/Cells/VirtualTableRowCell.css'; - - flex: 0 1 200px; - min-width: 120px; -} - .albumFolder { composes: cell from 'Components/Table/Cells/VirtualTableRowCell.css'; @@ -38,7 +31,7 @@ min-width: 120px; } -.series { +.artist { composes: cell from 'Components/Table/Cells/VirtualTableRowCell.css'; flex: 0 1 400px; diff --git a/frontend/src/AddArtist/ImportArtist/Import/ImportArtistRow.js b/frontend/src/AddArtist/ImportArtist/Import/ImportArtistRow.js index 21435c310..ddfc3cd10 100644 --- a/frontend/src/AddArtist/ImportArtist/Import/ImportArtistRow.js +++ b/frontend/src/AddArtist/ImportArtist/Import/ImportArtistRow.js @@ -16,7 +16,6 @@ function ImportArtistRow(props) { qualityProfileId, languageProfileId, albumFolder, - // seriesType, selectedArtist, isExistingArtist, showLanguageProfile, @@ -77,7 +76,7 @@ function ImportArtistRow(props) { /> - + { + (item, artist) => { const selectedArtist = item && item.selectedArtist; - const isExistingArtist = !!selectedArtist && _.some(series, { foreignArtistId: selectedArtist.foreignArtistId }); + const isExistingArtist = !!selectedArtist && _.some(artist, { foreignArtistId: selectedArtist.foreignArtistId }); return { ...item, @@ -59,7 +59,6 @@ class ImportArtistRowConnector extends Component { const { items, monitor, - // seriesType, albumFolder } = this.props; @@ -81,7 +80,6 @@ ImportArtistRowConnector.propTypes = { rootFolderId: PropTypes.number.isRequired, id: PropTypes.string.isRequired, monitor: PropTypes.string, - // seriesType: PropTypes.string, albumFolder: PropTypes.bool, items: PropTypes.arrayOf(PropTypes.object), queueLookupArtist: PropTypes.func.isRequired, diff --git a/frontend/src/AddArtist/ImportArtist/Import/ImportArtistTable.js b/frontend/src/AddArtist/ImportArtist/Import/ImportArtistTable.js index 0db24c7ee..120a19dc7 100644 --- a/frontend/src/AddArtist/ImportArtist/Import/ImportArtistTable.js +++ b/frontend/src/AddArtist/ImportArtist/Import/ImportArtistTable.js @@ -22,9 +22,8 @@ class ImportArtistTable extends Component { defaultMonitor, defaultQualityProfileId, defaultLanguageProfileId, - defaultSeriesType, defaultAlbumFolder, - onSeriesLookup, + onArtistLookup, onSetImportArtistValue } = this.props; @@ -32,14 +31,13 @@ class ImportArtistTable extends Component { monitor: defaultMonitor, qualityProfileId: defaultQualityProfileId, languageProfileId: defaultLanguageProfileId, - seriesType: defaultSeriesType, albumFolder: defaultAlbumFolder }; unmappedFolders.forEach((unmappedFolder) => { const id = unmappedFolder.name; - onSeriesLookup(id, unmappedFolder.path); + onArtistLookup(id, unmappedFolder.path); onSetImportArtistValue({ id, @@ -192,7 +190,6 @@ ImportArtistTable.propTypes = { defaultMonitor: PropTypes.string.isRequired, defaultQualityProfileId: PropTypes.number, defaultLanguageProfileId: PropTypes.number, - defaultSeriesType: PropTypes.string.isRequired, defaultAlbumFolder: PropTypes.bool.isRequired, allSelected: PropTypes.bool.isRequired, allUnselected: PropTypes.bool.isRequired, @@ -205,7 +202,7 @@ ImportArtistTable.propTypes = { onSelectAllChange: PropTypes.func.isRequired, onSelectedChange: PropTypes.func.isRequired, onRemoveSelectedStateItem: PropTypes.func.isRequired, - onSeriesLookup: PropTypes.func.isRequired, + onArtistLookup: PropTypes.func.isRequired, onSetImportArtistValue: PropTypes.func.isRequired, onScroll: PropTypes.func.isRequired }; diff --git a/frontend/src/AddArtist/ImportArtist/Import/ImportArtistTableConnector.js b/frontend/src/AddArtist/ImportArtist/Import/ImportArtistTableConnector.js index c30ad3dc7..950555219 100644 --- a/frontend/src/AddArtist/ImportArtist/Import/ImportArtistTableConnector.js +++ b/frontend/src/AddArtist/ImportArtist/Import/ImportArtistTableConnector.js @@ -15,7 +15,6 @@ function createMapStateToProps() { defaultMonitor: addArtist.defaults.monitor, defaultQualityProfileId: addArtist.defaults.qualityProfileId, defaultLanguageProfileId: addArtist.defaults.languageProfileId, - defaultSeriesType: addArtist.defaults.seriesType, defaultAlbumFolder: addArtist.defaults.albumFolder, items: importArtist.items, isSmallScreen: dimensions.isSmallScreen, @@ -27,7 +26,7 @@ function createMapStateToProps() { function createMapDispatchToProps(dispatch, props) { return { - onSeriesLookup(name, path) { + onArtistLookup(name, path) { dispatch(queueLookupArtist({ name, path, diff --git a/frontend/src/AlbumStudio/AlbumStudioConnector.js b/frontend/src/AlbumStudio/AlbumStudioConnector.js index 3009ae251..ce82b2e76 100644 --- a/frontend/src/AlbumStudio/AlbumStudioConnector.js +++ b/frontend/src/AlbumStudio/AlbumStudioConnector.js @@ -9,9 +9,9 @@ import AlbumStudio from './AlbumStudio'; function createMapStateToProps() { return createSelector( createClientSideCollectionSelector(), - (series) => { + (artist) => { return { - ...series + ...artist }; } ); @@ -66,5 +66,5 @@ export default connectSection( mapDispatchToProps, undefined, undefined, - { section: 'series', uiSection: 'albumStudio' } + { section: 'artist', uiSection: 'albumStudio' } )(AlbumStudioConnector); diff --git a/frontend/src/AlbumStudio/AlbumStudioRowConnector.js b/frontend/src/AlbumStudio/AlbumStudioRowConnector.js index eb3d8d922..825fc6dac 100644 --- a/frontend/src/AlbumStudio/AlbumStudioRowConnector.js +++ b/frontend/src/AlbumStudio/AlbumStudioRowConnector.js @@ -4,15 +4,15 @@ import React, { Component } from 'react'; import { connect } from 'react-redux'; import { createSelector } from 'reselect'; import createArtistSelector from 'Store/Selectors/createArtistSelector'; -import { toggleSeriesMonitored, toggleSeasonMonitored } from 'Store/Actions/artistActions'; +import { toggleArtistMonitored, toggleSeasonMonitored } from 'Store/Actions/artistActions'; import { toggleEpisodeMonitored } from 'Store/Actions/episodeActions'; import AlbumStudioRow from './AlbumStudioRow'; function createMapStateToProps() { return createSelector( createArtistSelector(), - (series) => { - return _.pick(series, [ + (artist) => { + return _.pick(artist, [ 'status', 'nameSlug', 'artistName', @@ -25,7 +25,7 @@ function createMapStateToProps() { } const mapDispatchToProps = { - toggleSeriesMonitored, + toggleArtistMonitored, toggleSeasonMonitored, toggleEpisodeMonitored }; @@ -41,7 +41,7 @@ class AlbumStudioRowConnector extends Component { monitored } = this.props; - this.props.toggleSeriesMonitored({ + this.props.toggleArtistMonitored({ artistId, monitored: !monitored }); @@ -71,7 +71,7 @@ class AlbumStudioRowConnector extends Component { AlbumStudioRowConnector.propTypes = { artistId: PropTypes.number.isRequired, monitored: PropTypes.bool.isRequired, - toggleSeriesMonitored: PropTypes.func.isRequired, + toggleArtistMonitored: PropTypes.func.isRequired, toggleSeasonMonitored: PropTypes.func.isRequired, toggleEpisodeMonitored: PropTypes.func.isRequired }; diff --git a/frontend/src/Artist/Delete/DeleteArtist.less b/frontend/src/Artist/Delete/DeleteArtist.less index 72670081b..4cf99e1b2 100644 --- a/frontend/src/Artist/Delete/DeleteArtist.less +++ b/frontend/src/Artist/Delete/DeleteArtist.less @@ -1,6 +1,6 @@ @import "Content/icons"; -.delete-series-modal { +.delete-artist-modal { i { margin-right : 5px; diff --git a/frontend/src/Artist/Delete/DeleteArtistModalContentConnector.js b/frontend/src/Artist/Delete/DeleteArtistModalContentConnector.js index 15b99e84b..938ac5a96 100644 --- a/frontend/src/Artist/Delete/DeleteArtistModalContentConnector.js +++ b/frontend/src/Artist/Delete/DeleteArtistModalContentConnector.js @@ -9,8 +9,8 @@ import DeleteArtistModalContent from './DeleteArtistModalContent'; function createMapStateToProps() { return createSelector( createArtistSelector(), - (series) => { - return series; + (artist) => { + return artist; } ); } diff --git a/frontend/src/Artist/Details/AlbumRowConnector.js b/frontend/src/Artist/Details/AlbumRowConnector.js index ee61c3dee..285598bcb 100644 --- a/frontend/src/Artist/Details/AlbumRowConnector.js +++ b/frontend/src/Artist/Details/AlbumRowConnector.js @@ -13,12 +13,11 @@ function createMapStateToProps() { createArtistSelector(), createTrackFileSelector(), createCommandsSelector(), - (id, sceneSeasonNumber, series, trackFile, commands) => { - const alternateTitles = sceneSeasonNumber ? _.filter(series.alternateTitles, { sceneSeasonNumber }) : []; + (id, sceneSeasonNumber, artist, trackFile, commands) => { + const alternateTitles = sceneSeasonNumber ? _.filter(artist.alternateTitles, { sceneSeasonNumber }) : []; return { - artistMonitored: series.monitored, - seriesType: series.seriesType, + artistMonitored: artist.monitored, trackFilePath: trackFile ? trackFile.path : null, trackFileRelativePath: trackFile ? trackFile.relativePath : null, alternateTitles diff --git a/frontend/src/Artist/Details/ArtistDetailsConnector.js b/frontend/src/Artist/Details/ArtistDetailsConnector.js index 9d36947d9..5c9b9c594 100644 --- a/frontend/src/Artist/Details/ArtistDetailsConnector.js +++ b/frontend/src/Artist/Details/ArtistDetailsConnector.js @@ -24,27 +24,27 @@ function createMapStateToProps() { (nameSlug, episodes, trackFiles, allArtists, commands) => { const sortedArtist = _.orderBy(allArtists, 'sortName'); const artistIndex = _.findIndex(sortedArtist, { nameSlug }); - const series = sortedArtist[artistIndex]; + const artist = sortedArtist[artistIndex]; - if (!series) { + if (!artist) { return {}; } const previousArtist = sortedArtist[artistIndex - 1] || _.last(sortedArtist); const nextArtist = sortedArtist[artistIndex + 1] || _.first(sortedArtist); - const isArtistRefreshing = !!findCommand(commands, { name: commandNames.REFRESH_ARTIST, artistId: series.id }); + const isArtistRefreshing = !!findCommand(commands, { name: commandNames.REFRESH_ARTIST, artistId: artist.id }); const allArtistRefreshing = _.some(commands, (command) => command.name === commandNames.REFRESH_ARTIST && !command.body.artistId); const isRefreshing = isArtistRefreshing || allArtistRefreshing; - const isSearching = !!findCommand(commands, { name: commandNames.ARTIST_SEARCH, artistId: series.id }); - const isRenamingFiles = !!findCommand(commands, { name: commandNames.RENAME_FILES, artistId: series.id }); + const isSearching = !!findCommand(commands, { name: commandNames.ARTIST_SEARCH, artistId: artist.id }); + const isRenamingFiles = !!findCommand(commands, { name: commandNames.RENAME_FILES, artistId: artist.id }); const isRenamingArtistCommand = findCommand(commands, { name: commandNames.RENAME_ARTIST }); - const isRenamingArtist = !!(isRenamingArtistCommand && isRenamingArtistCommand.body.artistId.indexOf(series.id) > -1); + const isRenamingArtist = !!(isRenamingArtistCommand && isRenamingArtistCommand.body.artistId.indexOf(artist.id) > -1); const isFetching = episodes.isFetching || trackFiles.isFetching; const isPopulated = episodes.isPopulated && trackFiles.isPopulated; const episodesError = episodes.error; const trackFilesError = trackFiles.error; - const alternateTitles = _.reduce(series.alternateTitles, (acc, alternateTitle) => { + const alternateTitles = _.reduce(artist.alternateTitles, (acc, alternateTitle) => { if ((alternateTitle.seasonNumber === -1 || alternateTitle.seasonNumber === undefined) && (alternateTitle.sceneSeasonNumber === -1 || alternateTitle.sceneSeasonNumber === undefined)) { acc.push(alternateTitle.title); @@ -54,7 +54,7 @@ function createMapStateToProps() { }, []); return { - ...series, + ...artist, alternateTitles, isRefreshing, isSearching, diff --git a/frontend/src/Artist/Details/ArtistDetailsPageConnector.js b/frontend/src/Artist/Details/ArtistDetailsPageConnector.js index f4e52b344..3219267bf 100644 --- a/frontend/src/Artist/Details/ArtistDetailsPageConnector.js +++ b/frontend/src/Artist/Details/ArtistDetailsPageConnector.js @@ -54,7 +54,7 @@ class ArtistDetailsPageConnector extends Component { if (!nameSlug) { return ( ); } diff --git a/frontend/src/Artist/Details/ArtistDetailsSeasonConnector.js b/frontend/src/Artist/Details/ArtistDetailsSeasonConnector.js index f24fc8fc6..49dfb78e4 100644 --- a/frontend/src/Artist/Details/ArtistDetailsSeasonConnector.js +++ b/frontend/src/Artist/Details/ArtistDetailsSeasonConnector.js @@ -20,10 +20,10 @@ function createMapStateToProps() { createArtistSelector(), createCommandsSelector(), createDimensionsSelector(), - (label, episodes, series, commands, dimensions) => { + (label, episodes, artist, commands, dimensions) => { const isSearching = !!findCommand(commands, { name: commandNames.SEASON_SEARCH, - artistId: series.id, + artistId: artist.id, label }); @@ -34,7 +34,7 @@ function createMapStateToProps() { items: sortedEpisodes, columns: episodes.columns, isSearching, - artistMonitored: series.monitored, + artistMonitored: artist.monitored, isSmallScreen: dimensions.isSmallScreen }; } diff --git a/frontend/src/Artist/Details/ArtistTagsConnector.js b/frontend/src/Artist/Details/ArtistTagsConnector.js index 8c8b035ea..1ecde26cd 100644 --- a/frontend/src/Artist/Details/ArtistTagsConnector.js +++ b/frontend/src/Artist/Details/ArtistTagsConnector.js @@ -9,8 +9,8 @@ function createMapStateToProps() { return createSelector( createArtistSelector(), createTagsSelector(), - (series, tagList) => { - const tags = _.reduce(series.tags, (acc, tag) => { + (artist, tagList) => { + const tags = _.reduce(artist.tags, (acc, tag) => { const matchingTag = _.find(tagList, { id: tag }); if (matchingTag) { diff --git a/frontend/src/Artist/Edit/EditArtistModalConnector.js b/frontend/src/Artist/Edit/EditArtistModalConnector.js index 83a3323bf..9e62a4780 100644 --- a/frontend/src/Artist/Edit/EditArtistModalConnector.js +++ b/frontend/src/Artist/Edit/EditArtistModalConnector.js @@ -14,7 +14,7 @@ class EditArtistModalConnector extends Component { // Listeners onModalClose = () => { - this.props.clearPendingChanges({ section: 'series' }); + this.props.clearPendingChanges({ section: 'artist' }); this.props.onModalClose(); } diff --git a/frontend/src/Artist/Edit/EditArtistModalContent.js b/frontend/src/Artist/Edit/EditArtistModalContent.js index d9a872e66..ae45f6332 100644 --- a/frontend/src/Artist/Edit/EditArtistModalContent.js +++ b/frontend/src/Artist/Edit/EditArtistModalContent.js @@ -36,7 +36,6 @@ class EditArtistModalContent extends Component { albumFolder, qualityProfileId, languageProfileId, - // seriesType, path, tags } = item; diff --git a/frontend/src/Artist/Edit/EditArtistModalContentConnector.js b/frontend/src/Artist/Edit/EditArtistModalContentConnector.js index 2564de7e2..8676584a3 100644 --- a/frontend/src/Artist/Edit/EditArtistModalContentConnector.js +++ b/frontend/src/Artist/Edit/EditArtistModalContentConnector.js @@ -10,30 +10,29 @@ import EditArtistModalContent from './EditArtistModalContent'; function createMapStateToProps() { return createSelector( - (state) => state.series, + (state) => state.artist, (state) => state.settings.languageProfiles, createArtistSelector(), - (seriesState, languageProfiles, series) => { + (artistState, languageProfiles, artist) => { const { isSaving, saveError, pendingChanges - } = seriesState; + } = artistState; - const seriesSettings = _.pick(series, [ + const artistSettings = _.pick(artist, [ 'monitored', 'albumFolder', 'qualityProfileId', 'languageProfileId', - // 'seriesType', 'path', 'tags' ]); - const settings = selectSettings(seriesSettings, pendingChanges, saveError); + const settings = selectSettings(artistSettings, pendingChanges, saveError); return { - artistName: series.artistName, + artistName: artist.artistName, isSaving, saveError, pendingChanges, diff --git a/frontend/src/Artist/Editor/ArtistEditorConnector.js b/frontend/src/Artist/Editor/ArtistEditorConnector.js index e6f1cb1ec..e99e09861 100644 --- a/frontend/src/Artist/Editor/ArtistEditorConnector.js +++ b/frontend/src/Artist/Editor/ArtistEditorConnector.js @@ -14,11 +14,11 @@ function createMapStateToProps() { (state) => state.settings.languageProfiles, createClientSideCollectionSelector(), createCommandSelector(commandNames.RENAME_ARTIST), - (languageProfiles, series, isOrganizingArtist) => { + (languageProfiles, artist, isOrganizingArtist) => { return { isOrganizingArtist, showLanguageProfile: languageProfiles.items.length > 1, - ...series + ...artist }; } ); @@ -82,5 +82,5 @@ export default connectSection( mapDispatchToProps, undefined, undefined, - { section: 'series', uiSection: 'artistEditor' } + { section: 'artist', uiSection: 'artistEditor' } )(ArtistEditorConnector); diff --git a/frontend/src/Artist/Editor/ArtistEditorFooter.js b/frontend/src/Artist/Editor/ArtistEditorFooter.js index 95ae60675..82941a1c5 100644 --- a/frontend/src/Artist/Editor/ArtistEditorFooter.js +++ b/frontend/src/Artist/Editor/ArtistEditorFooter.js @@ -5,7 +5,6 @@ import SelectInput from 'Components/Form/SelectInput'; import LanguageProfileSelectInputConnector from 'Components/Form/LanguageProfileSelectInputConnector'; import QualityProfileSelectInputConnector from 'Components/Form/QualityProfileSelectInputConnector'; import RootFolderSelectInputConnector from 'Components/Form/RootFolderSelectInputConnector'; -// import SeriesTypeSelectInput from 'Components/Form/SeriesTypeSelectInput'; import SpinnerButton from 'Components/Link/SpinnerButton'; import PageContentFooter from 'Components/Page/PageContentFooter'; import TagsModal from './Tags/TagsModal'; diff --git a/frontend/src/Artist/Editor/Delete/DeleteArtistModalContent.js b/frontend/src/Artist/Editor/Delete/DeleteArtistModalContent.js index c39f7f285..87088b472 100644 --- a/frontend/src/Artist/Editor/Delete/DeleteArtistModalContent.js +++ b/frontend/src/Artist/Editor/Delete/DeleteArtistModalContent.js @@ -43,7 +43,7 @@ class DeleteArtistModalContent extends Component { render() { const { - series, + artist, onModalClose } = this.props; const deleteFiles = this.state.deleteFiles; @@ -57,13 +57,13 @@ class DeleteArtistModalContent extends Component {
- {`Delete Artist Folder${series.length > 1 ? 's' : ''}`} + {`Delete Artist Folder${artist.length > 1 ? 's' : ''}`} 1 ? 's' : ''} and all contents`} + helpText={`Delete Artist Folder${artist.length > 1 ? 's' : ''} and all contents`} kind={kinds.DANGER} onChange={this.onDeleteFilesChange} /> @@ -71,12 +71,12 @@ class DeleteArtistModalContent extends Component {
- {`Are you sure you want to delete ${series.length} selected artist${series.length > 1 ? 's' : ''}${deleteFiles ? ' and all contents' : ''}?`} + {`Are you sure you want to delete ${artist.length} selected artist${artist.length > 1 ? 's' : ''}${deleteFiles ? ' and all contents' : ''}?`}
    { - series.map((s) => { + artist.map((s) => { return (
  • {s.artistName} @@ -115,7 +115,7 @@ class DeleteArtistModalContent extends Component { } DeleteArtistModalContent.propTypes = { - series: PropTypes.arrayOf(PropTypes.object).isRequired, + artist: PropTypes.arrayOf(PropTypes.object).isRequired, onModalClose: PropTypes.func.isRequired, onDeleteSelectedPress: PropTypes.func.isRequired }; diff --git a/frontend/src/Artist/Editor/Delete/DeleteArtistModalContentConnector.js b/frontend/src/Artist/Editor/Delete/DeleteArtistModalContentConnector.js index 83787010d..8c61976e8 100644 --- a/frontend/src/Artist/Editor/Delete/DeleteArtistModalContentConnector.js +++ b/frontend/src/Artist/Editor/Delete/DeleteArtistModalContentConnector.js @@ -15,7 +15,7 @@ function createMapStateToProps() { }); const sortedArtist = _.orderBy(selectedArtist, 'sortName'); - const series = _.map(sortedArtist, (s) => { + const artist = _.map(sortedArtist, (s) => { return { artistName: s.artistName, path: s.path @@ -23,7 +23,7 @@ function createMapStateToProps() { }); return { - series + artist }; } ); diff --git a/frontend/src/Artist/Editor/Organize/OrganizeArtistModalContentConnector.js b/frontend/src/Artist/Editor/Organize/OrganizeArtistModalContentConnector.js index 063b85e2d..6be1eb961 100644 --- a/frontend/src/Artist/Editor/Organize/OrganizeArtistModalContentConnector.js +++ b/frontend/src/Artist/Editor/Organize/OrganizeArtistModalContentConnector.js @@ -13,11 +13,11 @@ function createMapStateToProps() { (state, { artistIds }) => artistIds, createAllArtistSelector(), (artistIds, allArtists) => { - const series = _.intersectionWith(allArtists, artistIds, (s, id) => { + const artist = _.intersectionWith(allArtists, artistIds, (s, id) => { return s.id === id; }); - const sortedArtist = _.orderBy(series, 'sortName'); + const sortedArtist = _.orderBy(artist, 'sortName'); const artistNames = _.map(sortedArtist, 'artistName'); return { diff --git a/frontend/src/Artist/Editor/Tags/TagsModalContent.js b/frontend/src/Artist/Editor/Tags/TagsModalContent.js index c0d00d1f3..b982fee0e 100644 --- a/frontend/src/Artist/Editor/Tags/TagsModalContent.js +++ b/frontend/src/Artist/Editor/Tags/TagsModalContent.js @@ -93,7 +93,7 @@ class TagsModalContent extends Component { value={applyTags} values={applyTagsOptions} helpTexts={[ - 'How to apply tags to the selected series', + 'How to apply tags to the selected artist', 'Add: Add the tags the existing list of tags', 'Remove: Remove the entered tags', 'Replace: Replace the tags with the entered tags (enter no tags to clear all tags)' diff --git a/frontend/src/Artist/Editor/Tags/TagsModalContentConnector.js b/frontend/src/Artist/Editor/Tags/TagsModalContentConnector.js index dfc897096..6741e8b5c 100644 --- a/frontend/src/Artist/Editor/Tags/TagsModalContentConnector.js +++ b/frontend/src/Artist/Editor/Tags/TagsModalContentConnector.js @@ -11,11 +11,11 @@ function createMapStateToProps() { createAllArtistSelector(), createTagsSelector(), (artistIds, allArtists, tagList) => { - const series = _.intersectionWith(allArtists, artistIds, (s, id) => { + const artist = _.intersectionWith(allArtists, artistIds, (s, id) => { return s.id === id; }); - const artistTags = _.uniq(_.concat(..._.map(series, 'tags'))); + const artistTags = _.uniq(_.concat(..._.map(artist, 'tags'))); return { artistTags, diff --git a/frontend/src/Artist/Index/ArtistIndex.js b/frontend/src/Artist/Index/ArtistIndex.js index 5bf32a7c3..6fa1c537c 100644 --- a/frontend/src/Artist/Index/ArtistIndex.js +++ b/frontend/src/Artist/Index/ArtistIndex.js @@ -302,7 +302,7 @@ class ArtistIndex extends Component { /> } diff --git a/frontend/src/Artist/Index/ArtistIndexConnector.js b/frontend/src/Artist/Index/ArtistIndexConnector.js index 70f460c33..688852942 100644 --- a/frontend/src/Artist/Index/ArtistIndexConnector.js +++ b/frontend/src/Artist/Index/ArtistIndexConnector.js @@ -44,17 +44,17 @@ function getScrollTop(view, scrollTop, isSmallScreen) { function createMapStateToProps() { return createSelector( - (state) => state.series, + (state) => state.artist, (state) => state.artistIndex, createCommandSelector(commandNames.REFRESH_ARTIST), createCommandSelector(commandNames.RSS_SYNC), createDimensionsSelector(), - (series, artistIndex, isRefreshingArtist, isRssSyncExecuting, dimensionsState) => { + (artist, artistIndex, isRefreshingArtist, isRssSyncExecuting, dimensionsState) => { return { isRefreshingArtist, isRssSyncExecuting, isSmallScreen: dimensionsState.isSmallScreen, - ...series, + ...artist, ...artistIndex }; } diff --git a/frontend/src/Artist/Index/ArtistIndexFooter.js b/frontend/src/Artist/Index/ArtistIndexFooter.js index 69bc9ff3b..c7610a079 100644 --- a/frontend/src/Artist/Index/ArtistIndexFooter.js +++ b/frontend/src/Artist/Index/ArtistIndexFooter.js @@ -4,15 +4,15 @@ import DescriptionList from 'Components/DescriptionList/DescriptionList'; import DescriptionListItem from 'Components/DescriptionList/DescriptionListItem'; import styles from './ArtistIndexFooter.css'; -function ArtistIndexFooter({ series }) { - const count = series.length; +function ArtistIndexFooter({ artist }) { + const count = artist.length; let tracks = 0; let trackFiles = 0; let ended = 0; let continuing = 0; let monitored = 0; - series.forEach((s) => { + artist.forEach((s) => { tracks += s.trackCount || 0; trackFiles += s.trackFileCount || 0; @@ -98,7 +98,7 @@ function ArtistIndexFooter({ series }) { } ArtistIndexFooter.propTypes = { - series: PropTypes.arrayOf(PropTypes.object).isRequired + artist: PropTypes.arrayOf(PropTypes.object).isRequired }; export default ArtistIndexFooter; diff --git a/frontend/src/Artist/Index/Banners/ArtistIndexBanners.js b/frontend/src/Artist/Index/Banners/ArtistIndexBanners.js index 43a104ecc..89f00d965 100644 --- a/frontend/src/Artist/Index/Banners/ArtistIndexBanners.js +++ b/frontend/src/Artist/Index/Banners/ArtistIndexBanners.js @@ -216,9 +216,9 @@ class ArtistIndexBanners extends Component { showQualityProfile } = bannerOptions; - const series = items[rowIndex * columnCount + columnIndex]; + const artist = items[rowIndex * columnCount + columnIndex]; - if (!series) { + if (!artist) { return null; } @@ -236,7 +236,7 @@ class ArtistIndexBanners extends Component { shortDateFormat={shortDateFormat} timeFormat={timeFormat} style={style} - {...series} + {...artist} /> ); } diff --git a/frontend/src/Artist/Index/Banners/ArtistIndexBannersConnector.js b/frontend/src/Artist/Index/Banners/ArtistIndexBannersConnector.js index 72a5156cf..21384039e 100644 --- a/frontend/src/Artist/Index/Banners/ArtistIndexBannersConnector.js +++ b/frontend/src/Artist/Index/Banners/ArtistIndexBannersConnector.js @@ -11,14 +11,14 @@ function createMapStateToProps() { createClientSideCollectionSelector(), createUISettingsSelector(), createDimensionsSelector(), - (bannerOptions, series, uiSettings, dimensions) => { + (bannerOptions, artist, uiSettings, dimensions) => { return { bannerOptions, showRelativeDates: uiSettings.showRelativeDates, shortDateFormat: uiSettings.shortDateFormat, timeFormat: uiSettings.timeFormat, isSmallScreen: dimensions.isSmallScreen, - ...series + ...artist }; } ); @@ -29,5 +29,5 @@ export default connectSection( undefined, undefined, { withRef: true }, - { section: 'series', uiSection: 'artistIndex' } + { section: 'artist', uiSection: 'artistIndex' } )(ArtistIndexBanners); diff --git a/frontend/src/Artist/Index/Posters/ArtistIndexPosters.js b/frontend/src/Artist/Index/Posters/ArtistIndexPosters.js index cf5612182..47424cc54 100644 --- a/frontend/src/Artist/Index/Posters/ArtistIndexPosters.js +++ b/frontend/src/Artist/Index/Posters/ArtistIndexPosters.js @@ -216,9 +216,9 @@ class ArtistIndexPosters extends Component { showQualityProfile } = posterOptions; - const series = items[rowIndex * columnCount + columnIndex]; + const artist = items[rowIndex * columnCount + columnIndex]; - if (!series) { + if (!artist) { return null; } @@ -236,7 +236,7 @@ class ArtistIndexPosters extends Component { shortDateFormat={shortDateFormat} timeFormat={timeFormat} style={style} - {...series} + {...artist} /> ); } diff --git a/frontend/src/Artist/Index/Posters/ArtistIndexPostersConnector.js b/frontend/src/Artist/Index/Posters/ArtistIndexPostersConnector.js index d0d27994c..6ec135987 100644 --- a/frontend/src/Artist/Index/Posters/ArtistIndexPostersConnector.js +++ b/frontend/src/Artist/Index/Posters/ArtistIndexPostersConnector.js @@ -11,14 +11,14 @@ function createMapStateToProps() { createClientSideCollectionSelector(), createUISettingsSelector(), createDimensionsSelector(), - (posterOptions, series, uiSettings, dimensions) => { + (posterOptions, artist, uiSettings, dimensions) => { return { posterOptions, showRelativeDates: uiSettings.showRelativeDates, shortDateFormat: uiSettings.shortDateFormat, timeFormat: uiSettings.timeFormat, isSmallScreen: dimensions.isSmallScreen, - ...series + ...artist }; } ); @@ -29,5 +29,5 @@ export default connectSection( undefined, undefined, { withRef: true }, - { section: 'series', uiSection: 'artistIndex' } + { section: 'artist', uiSection: 'artistIndex' } )(ArtistIndexPosters); diff --git a/frontend/src/Artist/Index/Table/ArtistIndexTable.js b/frontend/src/Artist/Index/Table/ArtistIndexTable.js index 02d754216..acd9b2fa7 100644 --- a/frontend/src/Artist/Index/Table/ArtistIndexTable.js +++ b/frontend/src/Artist/Index/Table/ArtistIndexTable.js @@ -69,7 +69,7 @@ class ArtistIndexTable extends Component { columns } = this.props; - const series = items[rowIndex]; + const artist = items[rowIndex]; return ( ); } diff --git a/frontend/src/Artist/Index/Table/ArtistIndexTableConnector.js b/frontend/src/Artist/Index/Table/ArtistIndexTableConnector.js index 45df59b9d..c49c0cf07 100644 --- a/frontend/src/Artist/Index/Table/ArtistIndexTableConnector.js +++ b/frontend/src/Artist/Index/Table/ArtistIndexTableConnector.js @@ -8,10 +8,10 @@ function createMapStateToProps() { return createSelector( (state) => state.app.dimensions, createClientSideCollectionSelector(), - (dimensions, series) => { + (dimensions, artist) => { return { isSmallScreen: dimensions.isSmallScreen, - ...series + ...artist }; } ); @@ -30,5 +30,5 @@ export default connectSection( createMapDispatchToProps, undefined, { withRef: true }, - { section: 'series', uiSection: 'artistIndex' } + { section: 'artist', uiSection: 'artistIndex' } )(ArtistIndexTable); diff --git a/frontend/src/Calendar/Agenda/AgendaEvent.js b/frontend/src/Calendar/Agenda/AgendaEvent.js index 519d37284..c53a9d7b5 100644 --- a/frontend/src/Calendar/Agenda/AgendaEvent.js +++ b/frontend/src/Calendar/Agenda/AgendaEvent.js @@ -44,9 +44,6 @@ class AgendaEvent extends Component { id, artist, title, - // seasonNumber, - // episodeNumber, - // absoluteEpisodeNumber, releaseDate, monitored, hasFile, @@ -101,9 +98,6 @@ class AgendaEvent extends Component { { !!queueItem && } @@ -135,9 +129,6 @@ AgendaEvent.propTypes = { id: PropTypes.number.isRequired, artist: PropTypes.object.isRequired, title: PropTypes.string.isRequired, - // seasonNumber: PropTypes.number.isRequired, - // episodeNumber: PropTypes.number.isRequired, - // absoluteEpisodeNumber: PropTypes.number, releaseDate: PropTypes.string.isRequired, monitored: PropTypes.bool.isRequired, hasFile: PropTypes.bool.isRequired, diff --git a/frontend/src/Calendar/Events/CalendarEvent.js b/frontend/src/Calendar/Events/CalendarEvent.js index 10c3e76a2..ab93343f0 100644 --- a/frontend/src/Calendar/Events/CalendarEvent.js +++ b/frontend/src/Calendar/Events/CalendarEvent.js @@ -66,7 +66,7 @@ class CalendarEvent extends Component { const downloading = !!(queueItem || grabbed); const isMonitored = artist.monitored && monitored; const statusStyle = getStatusStyle(id, downloading, startTime, isMonitored); - // const missingAbsoluteNumber = artist.seriesType === 'anime' && seasonNumber > 0 && !absoluteEpisodeNumber; + // const missingAbsoluteNumber = artist.artistType === 'anime' && seasonNumber > 0 && !absoluteEpisodeNumber; return (
    diff --git a/frontend/src/Components/Form/SeriesTypeSelectInput.js b/frontend/src/Components/Form/SeriesTypeSelectInput.js index 7b0d0056d..4fe0a974c 100644 --- a/frontend/src/Components/Form/SeriesTypeSelectInput.js +++ b/frontend/src/Components/Form/SeriesTypeSelectInput.js @@ -2,14 +2,14 @@ import PropTypes from 'prop-types'; import React from 'react'; import SelectInput from './SelectInput'; -const seriesTypeOptions = [ +const artistTypeOptions = [ { key: 'standard', value: 'Standard' }, { key: 'daily', value: 'Daily' }, { key: 'anime', value: 'Anime' } ]; function SeriesTypeSelectInput(props) { - const values = [...seriesTypeOptions]; + const values = [...artistTypeOptions]; const { includeNoChange, diff --git a/frontend/src/Components/MonitorToggleButton.js b/frontend/src/Components/MonitorToggleButton.js index 1190c03a3..8802cb1a2 100644 --- a/frontend/src/Components/MonitorToggleButton.js +++ b/frontend/src/Components/MonitorToggleButton.js @@ -39,7 +39,7 @@ class MonitorToggleButton extends Component { className={styles.disabledButton} size={size} name={iconName} - title="Cannot toogle monitored state when series is unmonitored" + title="Cannot toogle monitored state when artist is unmonitored" /> ); } diff --git a/frontend/src/Components/Page/ErrorPage.js b/frontend/src/Components/Page/ErrorPage.js index d237ad916..325575ff0 100644 --- a/frontend/src/Components/Page/ErrorPage.js +++ b/frontend/src/Components/Page/ErrorPage.js @@ -7,7 +7,7 @@ function ErrorPage(props) { const { version, isLocalStorageSupported, - seriesError, + artistError, tagsError, qualityProfilesError, uiSettingsError @@ -17,10 +17,10 @@ function ErrorPage(props) { if (!isLocalStorageSupported) { errorMessage = 'Local Storage is not supported or disabled. A plugin or private browsing may have disabled it.'; - } else if (seriesError) { - errorMessage = getErrorMessage(seriesError, 'Failed to load artist from API'); + } else if (artistError) { + errorMessage = getErrorMessage(artistError, 'Failed to load artist from API'); } else if (tagsError) { - errorMessage = getErrorMessage(seriesError, 'Failed to load artist from API'); + errorMessage = getErrorMessage(artistError, 'Failed to load artist from API'); } else if (qualityProfilesError) { errorMessage = getErrorMessage(qualityProfilesError, 'Failed to load quality profiles from API'); } else if (uiSettingsError) { @@ -43,7 +43,7 @@ function ErrorPage(props) { ErrorPage.propTypes = { version: PropTypes.string.isRequired, isLocalStorageSupported: PropTypes.bool.isRequired, - seriesError: PropTypes.object, + artistError: PropTypes.object, tagsError: PropTypes.object, qualityProfilesError: PropTypes.object, uiSettingsError: PropTypes.object diff --git a/frontend/src/Components/Page/Header/ArtistSearchInput.css b/frontend/src/Components/Page/Header/ArtistSearchInput.css index c34b0d256..1cc1c3b2b 100644 --- a/frontend/src/Components/Page/Header/ArtistSearchInput.css +++ b/frontend/src/Components/Page/Header/ArtistSearchInput.css @@ -36,14 +36,14 @@ flex-grow: 1; } -.seriesContainer { +.artistContainer { @add-mixin scrollbar; @add-mixin scrollbarTrack; @add-mixin scrollbarThumb; } .containerOpen { - .seriesContainer { + .artistContainer { position: absolute; top: 42px; z-index: 1; @@ -80,7 +80,7 @@ color: $disabledColor; } -.addNewSeriesSuggestion { +.addNewArtistSuggestion { padding: 0 3px; cursor: pointer; } diff --git a/frontend/src/Components/Page/Header/ArtistSearchInput.js b/frontend/src/Components/Page/Header/ArtistSearchInput.js index 0de1dedb9..c0fe5ab20 100644 --- a/frontend/src/Components/Page/Header/ArtistSearchInput.js +++ b/frontend/src/Components/Page/Header/ArtistSearchInput.js @@ -62,7 +62,7 @@ class ArtistSearchInput extends Component { renderSuggestion(item, { query }) { if (item.type === ADD_NEW_TYPE) { return ( -
    +
    Search for {query}
    ); @@ -76,9 +76,9 @@ class ArtistSearchInput extends Component { ); } - goToArtist(series) { + goToArtist(artist) { this.setState({ value: '' }); - this.props.onGoToSeries(series.nameSlug); + this.props.onGoToArtist(artist.nameSlug); } reset() { @@ -117,8 +117,8 @@ class ArtistSearchInput extends Component { return; } - // If an suggestion is not selected go to the first series, - // otherwise go to the selected series. + // If an suggestion is not selected go to the first artist, + // otherwise go to the selected artist. if (highlightedSuggestionIndex == null) { this.goToArtist(suggestions[0]); @@ -134,12 +134,12 @@ class ArtistSearchInput extends Component { onSuggestionsFetchRequested = ({ value }) => { const lowerCaseValue = jdu.replace(value).toLowerCase(); - const suggestions = _.filter(this.props.series, (series) => { + const suggestions = _.filter(this.props.artist, (artist) => { // Check the title first and if there isn't a match fallback to the alternate titles - const titleMatch = jdu.replace(series.artistName).toLowerCase().contains(lowerCaseValue); + const titleMatch = jdu.replace(artist.artistName).toLowerCase().contains(lowerCaseValue); - return titleMatch || _.some(series.alternateTitles, (alternateTitle) => { + return titleMatch || _.some(artist.alternateTitles, (alternateTitle) => { return jdu.replace(alternateTitle.title).toLowerCase().contains(lowerCaseValue); }); }); @@ -192,7 +192,7 @@ class ArtistSearchInput extends Component { const inputProps = { ref: this.setInputRef, className: styles.input, - name: 'seriesSearch', + name: 'artistSearch', value, placeholder: 'Search', autoComplete: 'off', @@ -206,7 +206,7 @@ class ArtistSearchInput extends Component { const theme = { container: styles.container, containerOpen: styles.containerOpen, - suggestionsContainer: styles.seriesContainer, + suggestionsContainer: styles.artistContainer, suggestionsList: styles.list, suggestion: styles.listItem, suggestionHighlighted: styles.highlighted @@ -241,8 +241,8 @@ class ArtistSearchInput extends Component { } ArtistSearchInput.propTypes = { - series: PropTypes.arrayOf(PropTypes.object).isRequired, - onGoToSeries: PropTypes.func.isRequired, + artist: PropTypes.arrayOf(PropTypes.object).isRequired, + onGoToArtist: PropTypes.func.isRequired, onGoToAddNewArtist: PropTypes.func.isRequired, bindShortcut: PropTypes.func.isRequired }; diff --git a/frontend/src/Components/Page/Header/ArtistSearchInputConnector.js b/frontend/src/Components/Page/Header/ArtistSearchInputConnector.js index 822bb8c8c..3bf1a1678 100644 --- a/frontend/src/Components/Page/Header/ArtistSearchInputConnector.js +++ b/frontend/src/Components/Page/Header/ArtistSearchInputConnector.js @@ -8,9 +8,9 @@ import ArtistSearchInput from './ArtistSearchInput'; function createMapStateToProps() { return createSelector( createAllArtistSelector(), - (series) => { + (artist) => { return { - series: _.sortBy(series, 'sortName') + artist: _.sortBy(artist, 'sortName') }; } ); @@ -18,7 +18,7 @@ function createMapStateToProps() { function createMapDispatchToProps(dispatch, props) { return { - onGoToSeries(nameSlug) { + onGoToArtist(nameSlug) { dispatch(push(`${window.Sonarr.urlBase}/artist/${nameSlug}`)); }, diff --git a/frontend/src/Components/Page/PageConnector.js b/frontend/src/Components/Page/PageConnector.js index bcc28c411..416b194b9 100644 --- a/frontend/src/Components/Page/PageConnector.js +++ b/frontend/src/Components/Page/PageConnector.js @@ -28,18 +28,18 @@ function testLocalStorage() { function createMapStateToProps() { return createSelector( - (state) => state.series, + (state) => state.artist, (state) => state.tags, (state) => state.settings, (state) => state.app, createDimensionsSelector(), - (series, tags, settings, app, dimensions) => { - const isPopulated = series.isPopulated && + (artist, tags, settings, app, dimensions) => { + const isPopulated = artist.isPopulated && tags.isPopulated && settings.qualityProfiles.isPopulated && settings.ui.isPopulated; - const hasError = !!series.error || + const hasError = !!artist.error || !!tags.error || !!settings.qualityProfiles.error || !!settings.ui.error; @@ -47,7 +47,7 @@ function createMapStateToProps() { return { isPopulated, hasError, - seriesError: series.error, + artistError: artist.error, tagsError: tags.error, qualityProfilesError: settings.qualityProfiles.error, uiSettingsError: settings.ui.error, diff --git a/frontend/src/Components/Page/Sidebar/Messages/Message.js b/frontend/src/Components/Page/Sidebar/Messages/Message.js index 1332a6599..ed3a8325c 100644 --- a/frontend/src/Components/Page/Sidebar/Messages/Message.js +++ b/frontend/src/Components/Page/Sidebar/Messages/Message.js @@ -23,7 +23,7 @@ function getIconName(name) { return icons.RSS; case 'SeasonSearch': return icons.SEARCH; - case 'SeriesSearch': + case 'ArtistSearch': return icons.SEARCH; case 'UpdateSceneMapping': return icons.REFRESH; diff --git a/frontend/src/Components/Page/Sidebar/PageSidebar.js b/frontend/src/Components/Page/Sidebar/PageSidebar.js index d03938b2d..50ddc3ae7 100644 --- a/frontend/src/Components/Page/Sidebar/PageSidebar.js +++ b/frontend/src/Components/Page/Sidebar/PageSidebar.js @@ -22,7 +22,7 @@ const links = [ iconName: icons.ARTIST_CONTINUING, title: 'Artist', to: '/', - alias: '/series', + alias: '/artist', children: [ { title: 'Add New', diff --git a/frontend/src/Components/SignalRConnector.js b/frontend/src/Components/SignalRConnector.js index 06c4db2e7..75ecbddab 100644 --- a/frontend/src/Components/SignalRConnector.js +++ b/frontend/src/Components/SignalRConnector.js @@ -132,8 +132,8 @@ class SignalRConnector extends Component { return; } - if (name === 'series') { - this.handleSeries(body); + if (name === 'artist') { + this.handleArtist(body); return; } @@ -225,9 +225,9 @@ class SignalRConnector extends Component { this.props.fetchHealth(); } - handleSeries = (body) => { + handleArtist = (body) => { const action = body.action; - const section = 'series'; + const section = 'artist'; if (action === 'updated') { this.props.updateItem({ section, ...body.resource }); diff --git a/frontend/src/Episode/EpisodeDetailsModalContent.js b/frontend/src/Episode/EpisodeDetailsModalContent.js index b425daa79..e0e89547e 100644 --- a/frontend/src/Episode/EpisodeDetailsModalContent.js +++ b/frontend/src/Episode/EpisodeDetailsModalContent.js @@ -61,7 +61,7 @@ class EpisodeDetailsModalContent extends Component { onModalClose } = this.props; - const seriesLink = `/artist/${nameSlug}`; + const artistLink = `/artist/${nameSlug}`; return ( Open Artist diff --git a/frontend/src/Episode/EpisodeDetailsModalContentConnector.js b/frontend/src/Episode/EpisodeDetailsModalContentConnector.js index 02d0c6752..aeab595b8 100644 --- a/frontend/src/Episode/EpisodeDetailsModalContentConnector.js +++ b/frontend/src/Episode/EpisodeDetailsModalContentConnector.js @@ -15,19 +15,17 @@ function createMapStateToProps() { return createSelector( createEpisodeSelector(), createArtistSelector(), - (album, series) => { + (album, artist) => { const { artistName, nameSlug, - monitored: artistMonitored, - seriesType - } = series; + monitored: artistMonitored + } = artist; return { artistName, nameSlug, artistMonitored, - seriesType, ...album }; } diff --git a/frontend/src/Episode/EpisodeNumber.js b/frontend/src/Episode/EpisodeNumber.js index 9df84111e..88d1cb0e8 100644 --- a/frontend/src/Episode/EpisodeNumber.js +++ b/frontend/src/Episode/EpisodeNumber.js @@ -15,12 +15,12 @@ function EpisodeNumber(props) { sceneAbsoluteEpisodeNumber, unverifiedSceneNumbering, alternateTitles, - seriesType + artistType } = props; const hasSceneInformation = sceneSeasonNumber !== undefined || sceneEpisodeNumber !== undefined || - (seriesType === 'anime' && sceneAbsoluteEpisodeNumber !== undefined) || + (artistType === 'anime' && sceneAbsoluteEpisodeNumber !== undefined) || !!alternateTitles.length; return ( @@ -33,7 +33,7 @@ function EpisodeNumber(props) { {episodeNumber} { - seriesType === 'anime' && !!absoluteEpisodeNumber && + artistType === 'anime' && !!absoluteEpisodeNumber && ({absoluteEpisodeNumber}) @@ -47,7 +47,7 @@ function EpisodeNumber(props) { sceneEpisodeNumber={sceneEpisodeNumber} sceneAbsoluteEpisodeNumber={sceneAbsoluteEpisodeNumber} alternateTitles={alternateTitles} - seriesType={seriesType} + artistType={artistType} /> } position={tooltipPositions.RIGHT} @@ -56,7 +56,7 @@ function EpisodeNumber(props) { {episodeNumber} { - seriesType === 'anime' && !!absoluteEpisodeNumber && + artistType === 'anime' && !!absoluteEpisodeNumber && ({absoluteEpisodeNumber}) @@ -75,7 +75,7 @@ function EpisodeNumber(props) { } { - seriesType === 'anime' && !absoluteEpisodeNumber && + artistType === 'anime' && !absoluteEpisodeNumber && sceneSeasonNumber, createArtistSelector(), createCommandsSelector(), - (albumId, sceneSeasonNumber, series, commands) => { + (albumId, sceneSeasonNumber, artist, commands) => { const isSearching = _.some(commands, (command) => { const episodeSearch = command.name === commandNames.EPISODE_SEARCH; @@ -25,8 +25,8 @@ function createMapStateToProps() { }); return { - artistMonitored: series.monitored, - seriesType: series.seriesType, + artistMonitored: artist.monitored, + artistType: artist.artistType, isSearching }; } diff --git a/frontend/src/Episode/EpisodeTitleLink.js b/frontend/src/Episode/EpisodeTitleLink.js index eac76eaae..2604bf665 100644 --- a/frontend/src/Episode/EpisodeTitleLink.js +++ b/frontend/src/Episode/EpisodeTitleLink.js @@ -62,7 +62,7 @@ EpisodeTitleLink.propTypes = { }; EpisodeTitleLink.defaultProps = { - showSeriesButton: false + showArtistButton: false }; export default EpisodeTitleLink; diff --git a/frontend/src/Episode/SceneInfo.js b/frontend/src/Episode/SceneInfo.js index b406bb242..0c9ffa8cd 100644 --- a/frontend/src/Episode/SceneInfo.js +++ b/frontend/src/Episode/SceneInfo.js @@ -10,7 +10,7 @@ function SceneInfo(props) { sceneEpisodeNumber, sceneAbsoluteEpisodeNumber, alternateTitles, - seriesType + artistType } = props; return ( @@ -36,7 +36,7 @@ function SceneInfo(props) { } { - seriesType === 'anime' && sceneAbsoluteEpisodeNumber !== undefined && + artistType === 'anime' && sceneAbsoluteEpisodeNumber !== undefined && {airDate} ); } - if (seriesType === 'anime') { + if (artistType === 'anime') { return ( {seasonNumber}x{padNumber(episodeNumber, 2)} @@ -45,7 +45,7 @@ SeasonEpisodeNumber.propTypes = { episodeNumber: PropTypes.number.isRequired, absoluteEpisodeNumber: PropTypes.number, airDate: PropTypes.string, - seriesType: PropTypes.string + artistType: PropTypes.string }; export default SeasonEpisodeNumber; diff --git a/frontend/src/Helpers/Props/inputTypes.js b/frontend/src/Helpers/Props/inputTypes.js index b77daade4..124f5b88b 100644 --- a/frontend/src/Helpers/Props/inputTypes.js +++ b/frontend/src/Helpers/Props/inputTypes.js @@ -9,7 +9,7 @@ export const QUALITY_PROFILE_SELECT = 'qualityProfileSelect'; export const LANGUAGE_PROFILE_SELECT = 'languageProfileSelect'; export const ROOT_FOLDER_SELECT = 'rootFolderSelect'; export const SELECT = 'select'; -export const SERIES_TYPE_SELECT = 'seriesTypeSelect'; +export const SERIES_TYPE_SELECT = 'artistTypeSelect'; export const TAG = 'tag'; export const TEXT = 'text'; export const TEXT_TAG = 'textTag'; diff --git a/frontend/src/Organize/OrganizePreviewModalContentConnector.js b/frontend/src/Organize/OrganizePreviewModalContentConnector.js index 4dad00653..edaf425ee 100644 --- a/frontend/src/Organize/OrganizePreviewModalContentConnector.js +++ b/frontend/src/Organize/OrganizePreviewModalContentConnector.js @@ -14,14 +14,14 @@ function createMapStateToProps() { (state) => state.organizePreview, (state) => state.settings.naming, createArtistSelector(), - (organizePreview, naming, series) => { + (organizePreview, naming, artist) => { const props = { ...organizePreview }; props.isFetching = organizePreview.isFetching || naming.isFetching; props.isPopulated = organizePreview.isPopulated && naming.isPopulated; props.error = organizePreview.error || naming.error; props.renameTracks = naming.item.renameTracks; props.trackFormat = naming.item['standardTrackFormat']; - props.path = series.path; + props.path = artist.path; return props; } diff --git a/frontend/src/Settings/Indexers/Restrictions/EditRestrictionModalContent.js b/frontend/src/Settings/Indexers/Restrictions/EditRestrictionModalContent.js index 37f8cd760..eea3abad0 100644 --- a/frontend/src/Settings/Indexers/Restrictions/EditRestrictionModalContent.js +++ b/frontend/src/Settings/Indexers/Restrictions/EditRestrictionModalContent.js @@ -76,7 +76,7 @@ function EditRestrictionModalContent(props) { diff --git a/frontend/src/Settings/Notifications/Notifications/EditNotificationModalContent.js b/frontend/src/Settings/Notifications/Notifications/EditNotificationModalContent.js index f3af135f2..f375275f2 100644 --- a/frontend/src/Settings/Notifications/Notifications/EditNotificationModalContent.js +++ b/frontend/src/Settings/Notifications/Notifications/EditNotificationModalContent.js @@ -154,7 +154,7 @@ function EditNotificationModalContent(props) { diff --git a/frontend/src/Settings/Profiles/Delay/EditDelayProfileModalContent.js b/frontend/src/Settings/Profiles/Delay/EditDelayProfileModalContent.js index 42c6bece0..8dbee2837 100644 --- a/frontend/src/Settings/Profiles/Delay/EditDelayProfileModalContent.js +++ b/frontend/src/Settings/Profiles/Delay/EditDelayProfileModalContent.js @@ -110,7 +110,7 @@ function EditDelayProfileModalContent(props) { { id === 1 ? - This is the default profile. It applies to all series that don't have an explicit profile. + This is the default profile. It applies to all artist that don't have an explicit profile. : @@ -120,7 +120,7 @@ function EditDelayProfileModalContent(props) { type={inputTypes.TAG} name="tags" {...tags} - helpText="Applies to series with at least one matching tag" + helpText="Applies to artist with at least one matching tag" onChange={onInputChange} /> diff --git a/frontend/src/Settings/Profiles/Language/EditLanguageProfileModalContent.js b/frontend/src/Settings/Profiles/Language/EditLanguageProfileModalContent.js index 81d404f14..f1686dcce 100644 --- a/frontend/src/Settings/Profiles/Language/EditLanguageProfileModalContent.js +++ b/frontend/src/Settings/Profiles/Language/EditLanguageProfileModalContent.js @@ -101,7 +101,7 @@ function EditLanguageProfileModalContent(props) { id &&