New: Default name when adding providers

This commit is contained in:
Bogdan 2023-08-14 02:27:59 +03:00
parent 27928103c5
commit a758161e31
16 changed files with 48 additions and 18 deletions

View file

@ -263,6 +263,7 @@ class AddIndexerModalContent extends Component {
<SelectIndexerRowConnector <SelectIndexerRowConnector
key={`${indexer.implementation}-${indexer.name}`} key={`${indexer.implementation}-${indexer.name}`}
implementation={indexer.implementation} implementation={indexer.implementation}
implementationName={indexer.implementationName}
{...indexer} {...indexer}
onIndexerSelect={onIndexerSelect} onIndexerSelect={onIndexerSelect}
/> />

View file

@ -49,8 +49,8 @@ class AddIndexerModalContentConnector extends Component {
// //
// Listeners // Listeners
onIndexerSelect = ({ implementation, name }) => { onIndexerSelect = ({ implementation, implementationName, name }) => {
this.props.selectIndexerSchema({ implementation, name }); this.props.selectIndexerSchema({ implementation, implementationName, name });
this.props.onSelectIndexer(); this.props.onSelectIndexer();
}; };

View file

@ -10,12 +10,14 @@ class AddIndexerPresetMenuItem extends Component {
onPress = () => { onPress = () => {
const { const {
name, name,
implementation implementation,
implementationName
} = this.props; } = this.props;
this.props.onPress({ this.props.onPress({
name, name,
implementation implementation,
implementationName
}); });
}; };
@ -26,6 +28,7 @@ class AddIndexerPresetMenuItem extends Component {
const { const {
name, name,
implementation, implementation,
implementationName,
...otherProps ...otherProps
} = this.props; } = this.props;
@ -43,6 +46,7 @@ class AddIndexerPresetMenuItem extends Component {
AddIndexerPresetMenuItem.propTypes = { AddIndexerPresetMenuItem.propTypes = {
name: PropTypes.string.isRequired, name: PropTypes.string.isRequired,
implementation: PropTypes.string.isRequired, implementation: PropTypes.string.isRequired,
implementationName: PropTypes.string.isRequired,
onPress: PropTypes.func.isRequired onPress: PropTypes.func.isRequired
}; };

View file

@ -17,10 +17,11 @@ class SelectIndexerRow extends Component {
onPress = () => { onPress = () => {
const { const {
implementation, implementation,
implementationName,
name name
} = this.props; } = this.props;
this.props.onIndexerSelect({ implementation, name }); this.props.onIndexerSelect({ implementation, implementationName, name });
}; };
// //
@ -81,6 +82,7 @@ SelectIndexerRow.propTypes = {
language: PropTypes.string.isRequired, language: PropTypes.string.isRequired,
description: PropTypes.string.isRequired, description: PropTypes.string.isRequired,
implementation: PropTypes.string.isRequired, implementation: PropTypes.string.isRequired,
implementationName: PropTypes.string.isRequired,
onIndexerSelect: PropTypes.func.isRequired, onIndexerSelect: PropTypes.func.isRequired,
isExistingIndexer: PropTypes.bool.isRequired isExistingIndexer: PropTypes.bool.isRequired
}; };

View file

@ -61,7 +61,7 @@ function EditIndexerModalContent(props) {
return ( return (
<ModalContent onModalClose={onModalClose}> <ModalContent onModalClose={onModalClose}>
<ModalHeader> <ModalHeader>
{`${id ? translate('EditIndexer') : translate('AddIndexer')} - ${indexerDisplayName}`} {id ? translate('EditIndexerImplementation', { implementationName: indexerDisplayName }) : translate('AddIndexerImplementation', { implementationName: indexerDisplayName })}
</ModalHeader> </ModalHeader>
<ModalBody> <ModalBody>

View file

@ -16,10 +16,11 @@ class AddApplicationItem extends Component {
onApplicationSelect = () => { onApplicationSelect = () => {
const { const {
implementation implementation,
implementationName
} = this.props; } = this.props;
this.props.onApplicationSelect({ implementation }); this.props.onApplicationSelect({ implementation, implementationName });
}; };
// //
@ -77,6 +78,7 @@ class AddApplicationItem extends Component {
key={preset.name} key={preset.name}
name={preset.name} name={preset.name}
implementation={implementation} implementation={implementation}
implementationName={implementationName}
onPress={onApplicationSelect} onPress={onApplicationSelect}
/> />
); );

View file

@ -10,12 +10,14 @@ class AddApplicationPresetMenuItem extends Component {
onPress = () => { onPress = () => {
const { const {
name, name,
implementation implementation,
implementationName
} = this.props; } = this.props;
this.props.onPress({ this.props.onPress({
name, name,
implementation implementation,
implementationName
}); });
}; };
@ -26,6 +28,7 @@ class AddApplicationPresetMenuItem extends Component {
const { const {
name, name,
implementation, implementation,
implementationName,
...otherProps ...otherProps
} = this.props; } = this.props;
@ -43,6 +46,7 @@ class AddApplicationPresetMenuItem extends Component {
AddApplicationPresetMenuItem.propTypes = { AddApplicationPresetMenuItem.propTypes = {
name: PropTypes.string.isRequired, name: PropTypes.string.isRequired,
implementation: PropTypes.string.isRequired, implementation: PropTypes.string.isRequired,
implementationName: PropTypes.string.isRequired,
onPress: PropTypes.func.isRequired onPress: PropTypes.func.isRequired
}; };

View file

@ -71,7 +71,7 @@ function EditApplicationModalContent(props) {
return ( return (
<ModalContent onModalClose={onModalClose}> <ModalContent onModalClose={onModalClose}>
<ModalHeader> <ModalHeader>
{`${id ? translate('Edit') : translate('Add')} ${translate('Application')} - ${implementationName}`} {id ? translate('EditApplicationImplementation', { implementationName }) : translate('AddApplicationImplementation', { implementationName })}
</ModalHeader> </ModalHeader>
<ModalBody> <ModalBody>

View file

@ -35,7 +35,7 @@ function AddCategoryModalContent(props) {
return ( return (
<ModalContent onModalClose={onCancelPress}> <ModalContent onModalClose={onCancelPress}>
<ModalHeader> <ModalHeader>
{`${id ? 'Edit' : 'Add'} Category`} {id ? translate('EditCategory') : translate('AddCategory')}
</ModalHeader> </ModalHeader>
<ModalBody> <ModalBody>

View file

@ -84,7 +84,7 @@ class EditDownloadClientModalContent extends Component {
return ( return (
<ModalContent onModalClose={onModalClose}> <ModalContent onModalClose={onModalClose}>
<ModalHeader> <ModalHeader>
{`${id ? translate('Edit') : translate('Add')} ${translate('DownloadClient')} - ${implementationName}`} {id ? translate('EditDownloadClientImplementation', { implementationName }) : translate('AddDownloadClientImplementation', { implementationName })}
</ModalHeader> </ModalHeader>
<ModalBody> <ModalBody>

View file

@ -16,10 +16,11 @@ class AddIndexerProxyItem extends Component {
onIndexerProxySelect = () => { onIndexerProxySelect = () => {
const { const {
implementation implementation,
implementationName
} = this.props; } = this.props;
this.props.onIndexerProxySelect({ implementation }); this.props.onIndexerProxySelect({ implementation, implementationName });
}; };
// //
@ -77,6 +78,7 @@ class AddIndexerProxyItem extends Component {
key={preset.name} key={preset.name}
name={preset.name} name={preset.name}
implementation={implementation} implementation={implementation}
implementationName={implementationName}
onPress={onIndexerProxySelect} onPress={onIndexerProxySelect}
/> />
); );

View file

@ -47,7 +47,7 @@ function EditIndexerProxyModalContent(props) {
return ( return (
<ModalContent onModalClose={onModalClose}> <ModalContent onModalClose={onModalClose}>
<ModalHeader> <ModalHeader>
{`${id ? 'Edit' : 'Add'} Proxy - ${implementationName}`} {id ? translate('EditIndexerProxyImplementation', { implementationName }) : translate('AddIndexerProxyImplementation', { implementationName })}
</ModalHeader> </ModalHeader>
<ModalBody> <ModalBody>

View file

@ -28,7 +28,7 @@ class AddNotificationModalContent extends Component {
return ( return (
<ModalContent onModalClose={onModalClose}> <ModalContent onModalClose={onModalClose}>
<ModalHeader> <ModalHeader>
Add Notification {translate('AddConnection')}
</ModalHeader> </ModalHeader>
<ModalBody> <ModalBody>

View file

@ -48,7 +48,7 @@ function EditNotificationModalContent(props) {
return ( return (
<ModalContent onModalClose={onModalClose}> <ModalContent onModalClose={onModalClose}>
<ModalHeader> <ModalHeader>
{`${id ? 'Edit' : 'Add'} Connection - ${implementationName}`} {id ? translate('EditConnectionImplementation', { implementationName }) : translate('AddConnectionImplementation', { implementationName })}
</ModalHeader> </ModalHeader>
<ModalBody> <ModalBody>

View file

@ -184,6 +184,8 @@ export const reducers = createHandleActions({
[SELECT_INDEXER_SCHEMA]: (state, { payload }) => { [SELECT_INDEXER_SCHEMA]: (state, { payload }) => {
return selectSchema(state, payload, (selectedSchema) => { return selectSchema(state, payload, (selectedSchema) => {
selectedSchema.name = payload.name ?? payload.implementationName;
selectedSchema.implementationName = payload.implementationName;
selectedSchema.enable = selectedSchema.supportsRss; selectedSchema.enable = selectedSchema.supportsRss;
return selectedSchema; return selectedSchema;

View file

@ -4,11 +4,18 @@
"Actions": "Actions", "Actions": "Actions",
"Add": "Add", "Add": "Add",
"AddApplication": "Add Application", "AddApplication": "Add Application",
"AddApplicationImplementation": "Add Application - {implementationName}",
"AddCategory": "Add Category",
"AddConnection": "Add Connection",
"AddConnectionImplementation": "Add Connection - {implementationName}",
"AddCustomFilter": "Add Custom Filter", "AddCustomFilter": "Add Custom Filter",
"AddDownloadClient": "Add Download Client", "AddDownloadClient": "Add Download Client",
"AddDownloadClientImplementation": "Add Download Client - {implementationName}",
"AddDownloadClientToProwlarr": "Adding a download client allows Prowlarr to send releases direct from the UI while doing a manual search.", "AddDownloadClientToProwlarr": "Adding a download client allows Prowlarr to send releases direct from the UI while doing a manual search.",
"AddIndexer": "Add Indexer", "AddIndexer": "Add Indexer",
"AddIndexerImplementation": "Add Indexer - {implementationName}",
"AddIndexerProxy": "Add Indexer Proxy", "AddIndexerProxy": "Add Indexer Proxy",
"AddIndexerProxyImplementation": "Add Indexer Proxy - {implementationName}",
"AddNewIndexer": "Add New Indexer", "AddNewIndexer": "Add New Indexer",
"AddRemoveOnly": "Add and Remove Only", "AddRemoveOnly": "Add and Remove Only",
"AddSyncProfile": "Add Sync Profile", "AddSyncProfile": "Add Sync Profile",
@ -160,7 +167,13 @@
"DownloadClientsSettingsSummary": "Download clients configuration for integration into Prowlarr UI search", "DownloadClientsSettingsSummary": "Download clients configuration for integration into Prowlarr UI search",
"Duration": "Duration", "Duration": "Duration",
"Edit": "Edit", "Edit": "Edit",
"EditApplicationImplementation": "Edit Application - {implementationName}",
"EditCategory": "Edit Category",
"EditConnectionImplementation": "Edit Connection - {implementationName}",
"EditDownloadClientImplementation": "Edit Download Client - {implementationName}",
"EditIndexer": "Edit Indexer", "EditIndexer": "Edit Indexer",
"EditIndexerImplementation": "Edit Indexer - {implementationName}",
"EditIndexerProxyImplementation": "Edit Indexer Proxy - {implementationName}",
"EditSelectedDownloadClients": "Edit Selected Download Clients", "EditSelectedDownloadClients": "Edit Selected Download Clients",
"EditSelectedIndexers": "Edit Selected Indexers", "EditSelectedIndexers": "Edit Selected Indexers",
"EditSyncProfile": "Edit Sync Profile", "EditSyncProfile": "Edit Sync Profile",