mirror of
https://github.com/Prowlarr/Prowlarr.git
synced 2025-09-17 17:14:18 +02:00
@@ -11,6 +11,12 @@
|
|||||||
flex: 0 0 60px;
|
flex: 0 0 60px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.id {
|
||||||
|
composes: cell;
|
||||||
|
|
||||||
|
flex: 0 0 60px;
|
||||||
|
}
|
||||||
|
|
||||||
.sortName {
|
.sortName {
|
||||||
composes: cell;
|
composes: cell;
|
||||||
|
|
||||||
|
@@ -8,6 +8,7 @@ interface CssExports {
|
|||||||
'cell': string;
|
'cell': string;
|
||||||
'checkInput': string;
|
'checkInput': string;
|
||||||
'externalLink': string;
|
'externalLink': string;
|
||||||
|
'id': string;
|
||||||
'minimumSeeders': string;
|
'minimumSeeders': string;
|
||||||
'packSeedTime': string;
|
'packSeedTime': string;
|
||||||
'priority': string;
|
'priority': string;
|
||||||
|
@@ -34,7 +34,7 @@ function IndexerIndexRow(props: IndexerIndexRowProps) {
|
|||||||
const { indexerId, columns, isSelectMode, onCloneIndexerPress } = props;
|
const { indexerId, columns, isSelectMode, onCloneIndexerPress } = props;
|
||||||
|
|
||||||
const { indexer, appProfile, status, longDateFormat, timeFormat } =
|
const { indexer, appProfile, status, longDateFormat, timeFormat } =
|
||||||
useSelector(createIndexerIndexItemSelector(props.indexerId));
|
useSelector(createIndexerIndexItemSelector(indexerId));
|
||||||
|
|
||||||
const {
|
const {
|
||||||
id,
|
id,
|
||||||
@@ -148,12 +148,24 @@ function IndexerIndexRow(props: IndexerIndexRowProps) {
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (name === 'id') {
|
||||||
|
return (
|
||||||
|
<VirtualTableRowCell key={name} className={styles[name]}>
|
||||||
|
<IndexerTitleLink
|
||||||
|
indexerId={indexerId}
|
||||||
|
title={`${indexerId}`}
|
||||||
|
onCloneIndexerPress={onCloneIndexerPress}
|
||||||
|
/>
|
||||||
|
</VirtualTableRowCell>
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
if (name === 'sortName') {
|
if (name === 'sortName') {
|
||||||
return (
|
return (
|
||||||
<VirtualTableRowCell key={name} className={styles[name]}>
|
<VirtualTableRowCell key={name} className={styles[name]}>
|
||||||
<IndexerTitleLink
|
<IndexerTitleLink
|
||||||
indexerId={indexerId}
|
indexerId={indexerId}
|
||||||
indexerName={indexerName}
|
title={indexerName}
|
||||||
onCloneIndexerPress={onCloneIndexerPress}
|
onCloneIndexerPress={onCloneIndexerPress}
|
||||||
/>
|
/>
|
||||||
</VirtualTableRowCell>
|
</VirtualTableRowCell>
|
||||||
|
@@ -4,6 +4,12 @@
|
|||||||
flex: 0 0 60px;
|
flex: 0 0 60px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.id {
|
||||||
|
composes: headerCell from '~Components/Table/VirtualTableHeaderCell.css';
|
||||||
|
|
||||||
|
flex: 0 0 60px;
|
||||||
|
}
|
||||||
|
|
||||||
.sortName {
|
.sortName {
|
||||||
composes: headerCell from '~Components/Table/VirtualTableHeaderCell.css';
|
composes: headerCell from '~Components/Table/VirtualTableHeaderCell.css';
|
||||||
|
|
||||||
|
@@ -5,6 +5,7 @@ interface CssExports {
|
|||||||
'added': string;
|
'added': string;
|
||||||
'appProfileId': string;
|
'appProfileId': string;
|
||||||
'capabilities': string;
|
'capabilities': string;
|
||||||
|
'id': string;
|
||||||
'minimumSeeders': string;
|
'minimumSeeders': string;
|
||||||
'packSeedTime': string;
|
'packSeedTime': string;
|
||||||
'priority': string;
|
'priority': string;
|
||||||
|
@@ -1,17 +1,16 @@
|
|||||||
import PropTypes from 'prop-types';
|
|
||||||
import React, { useCallback, useState } from 'react';
|
import React, { useCallback, useState } from 'react';
|
||||||
import Link from 'Components/Link/Link';
|
import Link from 'Components/Link/Link';
|
||||||
import IndexerInfoModal from './Info/IndexerInfoModal';
|
import IndexerInfoModal from './Info/IndexerInfoModal';
|
||||||
import styles from './IndexerTitleLink.css';
|
import styles from './IndexerTitleLink.css';
|
||||||
|
|
||||||
interface IndexerTitleLinkProps {
|
interface IndexerTitleLinkProps {
|
||||||
indexerName: string;
|
|
||||||
indexerId: number;
|
indexerId: number;
|
||||||
|
title: string;
|
||||||
onCloneIndexerPress(id: number): void;
|
onCloneIndexerPress(id: number): void;
|
||||||
}
|
}
|
||||||
|
|
||||||
function IndexerTitleLink(props: IndexerTitleLinkProps) {
|
function IndexerTitleLink(props: IndexerTitleLinkProps) {
|
||||||
const { indexerName, indexerId, onCloneIndexerPress } = props;
|
const { title, indexerId, onCloneIndexerPress } = props;
|
||||||
|
|
||||||
const [isIndexerInfoModalOpen, setIsIndexerInfoModalOpen] = useState(false);
|
const [isIndexerInfoModalOpen, setIsIndexerInfoModalOpen] = useState(false);
|
||||||
|
|
||||||
@@ -26,7 +25,7 @@ function IndexerTitleLink(props: IndexerTitleLinkProps) {
|
|||||||
return (
|
return (
|
||||||
<div>
|
<div>
|
||||||
<Link className={styles.link} onPress={onIndexerInfoPress}>
|
<Link className={styles.link} onPress={onIndexerInfoPress}>
|
||||||
{indexerName}
|
{title}
|
||||||
</Link>
|
</Link>
|
||||||
|
|
||||||
<IndexerInfoModal
|
<IndexerInfoModal
|
||||||
@@ -39,8 +38,4 @@ function IndexerTitleLink(props: IndexerTitleLinkProps) {
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
IndexerTitleLink.propTypes = {
|
|
||||||
indexerName: PropTypes.string.isRequired,
|
|
||||||
};
|
|
||||||
|
|
||||||
export default IndexerTitleLink;
|
export default IndexerTitleLink;
|
||||||
|
@@ -37,12 +37,18 @@ export const defaultState = {
|
|||||||
isVisible: true,
|
isVisible: true,
|
||||||
isModifiable: false
|
isModifiable: false
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
name: 'id',
|
||||||
|
columnLabel: () => translate('IndexerId'),
|
||||||
|
label: () => translate('Id'),
|
||||||
|
isSortable: true,
|
||||||
|
isVisible: false
|
||||||
|
},
|
||||||
{
|
{
|
||||||
name: 'sortName',
|
name: 'sortName',
|
||||||
label: () => translate('IndexerName'),
|
label: () => translate('IndexerName'),
|
||||||
isSortable: true,
|
isSortable: true,
|
||||||
isVisible: true,
|
isVisible: true
|
||||||
isModifiable: false
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: 'protocol',
|
name: 'protocol',
|
||||||
|
@@ -200,7 +200,7 @@
|
|||||||
"EnableInteractiveSearch": "Enable Interactive Search",
|
"EnableInteractiveSearch": "Enable Interactive Search",
|
||||||
"EnableInteractiveSearchHelpText": "Will be used when interactive search is used",
|
"EnableInteractiveSearchHelpText": "Will be used when interactive search is used",
|
||||||
"EnableRss": "Enable RSS",
|
"EnableRss": "Enable RSS",
|
||||||
"EnableRssHelpText": "Enable Rss feed for Indexer",
|
"EnableRssHelpText": "Enable RSS feed for Indexer",
|
||||||
"EnableSSL": "Enable SSL",
|
"EnableSSL": "Enable SSL",
|
||||||
"EnableSslHelpText": " Requires restart running as administrator to take effect",
|
"EnableSslHelpText": " Requires restart running as administrator to take effect",
|
||||||
"Enabled": "Enabled",
|
"Enabled": "Enabled",
|
||||||
@@ -248,7 +248,7 @@
|
|||||||
"HomePage": "Home Page",
|
"HomePage": "Home Page",
|
||||||
"Host": "Host",
|
"Host": "Host",
|
||||||
"Hostname": "Hostname",
|
"Hostname": "Hostname",
|
||||||
"Id": "Id",
|
"Id": "ID",
|
||||||
"IgnoredAddresses": "Ignored Addresses",
|
"IgnoredAddresses": "Ignored Addresses",
|
||||||
"IllRestartLater": "I'll restart later",
|
"IllRestartLater": "I'll restart later",
|
||||||
"Implementation": "Implementation",
|
"Implementation": "Implementation",
|
||||||
@@ -266,6 +266,7 @@
|
|||||||
"IndexerFlags": "Indexer Flags",
|
"IndexerFlags": "Indexer Flags",
|
||||||
"IndexerHealthCheckNoIndexers": "No indexers enabled, {appName} will not return search results",
|
"IndexerHealthCheckNoIndexers": "No indexers enabled, {appName} will not return search results",
|
||||||
"IndexerHistoryLoadError": "Error loading indexer history",
|
"IndexerHistoryLoadError": "Error loading indexer history",
|
||||||
|
"IndexerId": "Indexer ID",
|
||||||
"IndexerInfo": "Indexer Info",
|
"IndexerInfo": "Indexer Info",
|
||||||
"IndexerLongTermStatusCheckAllClientMessage": "All indexers are unavailable due to failures for more than 6 hours",
|
"IndexerLongTermStatusCheckAllClientMessage": "All indexers are unavailable due to failures for more than 6 hours",
|
||||||
"IndexerLongTermStatusCheckSingleClientMessage": "Indexers unavailable due to failures for more than 6 hours: {0}",
|
"IndexerLongTermStatusCheckSingleClientMessage": "Indexers unavailable due to failures for more than 6 hours: {0}",
|
||||||
@@ -279,7 +280,7 @@
|
|||||||
"IndexerProxyStatusCheckAllClientMessage": "All proxies are unavailable due to failures",
|
"IndexerProxyStatusCheckAllClientMessage": "All proxies are unavailable due to failures",
|
||||||
"IndexerProxyStatusCheckSingleClientMessage": "Proxies unavailable due to failures: {0}",
|
"IndexerProxyStatusCheckSingleClientMessage": "Proxies unavailable due to failures: {0}",
|
||||||
"IndexerQuery": "Indexer Query",
|
"IndexerQuery": "Indexer Query",
|
||||||
"IndexerRss": "Indexer Rss",
|
"IndexerRss": "Indexer RSS",
|
||||||
"IndexerSettingsSummary": "Configure various global Indexer settings including Proxies.",
|
"IndexerSettingsSummary": "Configure various global Indexer settings including Proxies.",
|
||||||
"IndexerSite": "Indexer Site",
|
"IndexerSite": "Indexer Site",
|
||||||
"IndexerStatus": "Indexer Status",
|
"IndexerStatus": "Indexer Status",
|
||||||
|
Reference in New Issue
Block a user