diff --git a/frontend/src/Components/Form/RootFolderSelectInputConnector.js b/frontend/src/Components/Form/RootFolderSelectInputConnector.js index 50c8b057f..d1caf6237 100644 --- a/frontend/src/Components/Form/RootFolderSelectInputConnector.js +++ b/frontend/src/Components/Form/RootFolderSelectInputConnector.js @@ -102,6 +102,27 @@ class RootFolderSelectInputConnector extends Component { } } + componentDidUpdate(prevProps) { + const { + name, + value, + values, + onChange + } = this.props; + + if (prevProps.values === values) { + return; + } + + if (!value && values.length && values.some((v) => !!v.key && v.key !== ADD_NEW_KEY)) { + const defaultValue = values[0]; + + if (defaultValue.key !== ADD_NEW_KEY) { + onChange({ name, value: defaultValue.key }); + } + } + } + // // Render diff --git a/src/Readarr.Api.V1/Author/AuthorFolderAsRootFolderValidator.cs b/src/Readarr.Api.V1/Author/AuthorFolderAsRootFolderValidator.cs index 4ff0a3b5c..1025198b3 100644 --- a/src/Readarr.Api.V1/Author/AuthorFolderAsRootFolderValidator.cs +++ b/src/Readarr.Api.V1/Author/AuthorFolderAsRootFolderValidator.cs @@ -30,7 +30,13 @@ protected override bool IsValid(PropertyValidatorContext context) } var rootFolderPath = context.PropertyValue.ToString(); - var rootFolder = new DirectoryInfo(rootFolderPath).Name; + + if (rootFolderPath.IsNullOrWhiteSpace()) + { + return true; + } + + var rootFolder = new DirectoryInfo(rootFolderPath!).Name; var author = authorResource.ToModel(); var authorFolder = _fileNameBuilder.GetAuthorFolder(author);