New: Author folder hint when selecting a root folder while adding a new author

(cherry picked from commit dd09f31abb4dd3f699bcff0a47577075300c70ee)

Fix AuthorFolderAsRootFolderValidator

(cherry picked from commit 0ce81e1ab69d43fde382cc4ae22cd46fe626dea7)
This commit is contained in:
Mark McDowall
2019-08-03 18:55:31 -07:00
committed by Bogdan
parent 0972d41bf8
commit f819e582cf
26 changed files with 225 additions and 29 deletions
@@ -9,6 +9,7 @@ import ModalContent from 'Components/Modal/ModalContent';
import ModalFooter from 'Components/Modal/ModalFooter';
import ModalHeader from 'Components/Modal/ModalHeader';
import { kinds } from 'Helpers/Props';
import translate from 'Utilities/String/translate';
import AddAuthorOptionsForm from '../Common/AddAuthorOptionsForm.js';
import styles from './AddNewAuthorModalContent.css';
@@ -54,7 +55,7 @@ class AddNewAuthorModalContent extends Component {
return (
<ModalContent onModalClose={onModalClose}>
<ModalHeader>
Add new Author
{translate('AddNewAuthor')}
</ModalHeader>
<ModalBody>
@@ -133,7 +134,7 @@ class AddNewAuthorModalContent extends Component {
AddNewAuthorModalContent.propTypes = {
authorName: PropTypes.string.isRequired,
disambiguation: PropTypes.string.isRequired,
disambiguation: PropTypes.string,
overview: PropTypes.string,
images: PropTypes.arrayOf(PropTypes.object).isRequired,
isAdding: PropTypes.bool.isRequired,
@@ -4,6 +4,7 @@ import { connect } from 'react-redux';
import { createSelector } from 'reselect';
import { addAuthor, setAuthorAddDefault } from 'Store/Actions/searchActions';
import createDimensionsSelector from 'Store/Selectors/createDimensionsSelector';
import createSystemStatusSelector from 'Store/Selectors/createSystemStatusSelector';
import selectSettings from 'Store/Selectors/selectSettings';
import AddNewAuthorModalContent from './AddNewAuthorModalContent';
@@ -12,7 +13,8 @@ function createMapStateToProps() {
(state) => state.search,
(state) => state.settings.metadataProfiles,
createDimensionsSelector(),
(searchState, metadataProfiles, dimensions) => {
createSystemStatusSelector(),
(searchState, metadataProfiles, dimensions, systemStatus) => {
const {
isAdding,
addError,
@@ -32,6 +34,7 @@ function createMapStateToProps() {
isSmallScreen: dimensions.isSmallScreen,
validationErrors,
validationWarnings,
isWindows: systemStatus.isWindows,
...settings
};
}
@@ -78,6 +78,7 @@ class AddNewAuthorSearchResult extends Component {
status,
overview,
ratings,
folder,
images,
isExistingAuthor,
isSmallScreen
@@ -205,6 +206,7 @@ class AddNewAuthorSearchResult extends Component {
disambiguation={disambiguation}
year={year}
overview={overview}
folder={folder}
images={images}
onModalClose={this.onAddAuthorModalClose}
/>
@@ -222,6 +224,7 @@ AddNewAuthorSearchResult.propTypes = {
status: PropTypes.string.isRequired,
overview: PropTypes.string,
ratings: PropTypes.object.isRequired,
folder: PropTypes.string.isRequired,
images: PropTypes.arrayOf(PropTypes.object).isRequired,
isExistingAuthor: PropTypes.bool.isRequired,
isSmallScreen: PropTypes.bool.isRequired