From c07dbef2c4fdcc28f90d8064312bd1bb8405aeea Mon Sep 17 00:00:00 2001 From: Bogdan Date: Thu, 26 Mar 2026 17:04:07 +0200 Subject: [PATCH] Display protocol for download clients in UI --- .../DownloadClients/DownloadClients/DownloadClient.tsx | 6 ++++++ .../Manage/ManageDownloadClientsModalContent.tsx | 6 ++++++ .../Manage/ManageDownloadClientsModalRow.css | 3 ++- .../Manage/ManageDownloadClientsModalRow.css.d.ts | 1 + .../Manage/ManageDownloadClientsModalRow.tsx | 8 ++++++++ 5 files changed, 23 insertions(+), 1 deletion(-) diff --git a/frontend/src/Settings/DownloadClients/DownloadClients/DownloadClient.tsx b/frontend/src/Settings/DownloadClients/DownloadClients/DownloadClient.tsx index d57106a96..ddb2efd0f 100644 --- a/frontend/src/Settings/DownloadClients/DownloadClients/DownloadClient.tsx +++ b/frontend/src/Settings/DownloadClients/DownloadClients/DownloadClient.tsx @@ -1,9 +1,11 @@ import React, { useCallback, useState } from 'react'; import { useDispatch } from 'react-redux'; +import ProtocolLabel from 'Activity/Queue/ProtocolLabel'; import Card from 'Components/Card'; import Label from 'Components/Label'; import ConfirmModal from 'Components/Modal/ConfirmModal'; import TagList from 'Components/TagList'; +import DownloadProtocol from 'DownloadClient/DownloadProtocol'; import { kinds } from 'Helpers/Props'; import { deleteDownloadClient } from 'Store/Actions/settingsActions'; import { useTagList } from 'Tags/useTags'; @@ -14,6 +16,7 @@ import styles from './DownloadClient.css'; interface DownloadClientProps { id: number; name: string; + protocol: DownloadProtocol; enable: boolean; priority: number; tags: number[]; @@ -22,6 +25,7 @@ interface DownloadClientProps { function DownloadClient({ id, name, + protocol, enable, priority, tags, @@ -65,6 +69,8 @@ function DownloadClient({
{name}
+ + {enable ? ( ) : ( diff --git a/frontend/src/Settings/DownloadClients/DownloadClients/Manage/ManageDownloadClientsModalContent.tsx b/frontend/src/Settings/DownloadClients/DownloadClients/Manage/ManageDownloadClientsModalContent.tsx index abcf9fd87..bf1450375 100644 --- a/frontend/src/Settings/DownloadClients/DownloadClients/Manage/ManageDownloadClientsModalContent.tsx +++ b/frontend/src/Settings/DownloadClients/DownloadClients/Manage/ManageDownloadClientsModalContent.tsx @@ -37,6 +37,12 @@ const COLUMNS: Column[] = [ isSortable: true, isVisible: true, }, + { + name: 'protocol', + label: () => translate('Protocol'), + isSortable: true, + isVisible: true, + }, { name: 'implementation', label: () => translate('Implementation'), diff --git a/frontend/src/Settings/DownloadClients/DownloadClients/Manage/ManageDownloadClientsModalRow.css b/frontend/src/Settings/DownloadClients/DownloadClients/Manage/ManageDownloadClientsModalRow.css index 242e0c84e..71736b66f 100644 --- a/frontend/src/Settings/DownloadClients/DownloadClients/Manage/ManageDownloadClientsModalRow.css +++ b/frontend/src/Settings/DownloadClients/DownloadClients/Manage/ManageDownloadClientsModalRow.css @@ -1,4 +1,5 @@ .name, +.protocol, .enable, .tags, .priority, @@ -8,4 +9,4 @@ composes: cell from '~Components/Table/Cells/TableRowCell.css'; word-break: break-all; -} \ No newline at end of file +} diff --git a/frontend/src/Settings/DownloadClients/DownloadClients/Manage/ManageDownloadClientsModalRow.css.d.ts b/frontend/src/Settings/DownloadClients/DownloadClients/Manage/ManageDownloadClientsModalRow.css.d.ts index 74553b4f9..c72af477c 100644 --- a/frontend/src/Settings/DownloadClients/DownloadClients/Manage/ManageDownloadClientsModalRow.css.d.ts +++ b/frontend/src/Settings/DownloadClients/DownloadClients/Manage/ManageDownloadClientsModalRow.css.d.ts @@ -5,6 +5,7 @@ interface CssExports { 'implementation': string; 'name': string; 'priority': string; + 'protocol': string; 'removeCompletedDownloads': string; 'removeFailedDownloads': string; 'tags': string; diff --git a/frontend/src/Settings/DownloadClients/DownloadClients/Manage/ManageDownloadClientsModalRow.tsx b/frontend/src/Settings/DownloadClients/DownloadClients/Manage/ManageDownloadClientsModalRow.tsx index 5cb755bc6..9bff2120b 100644 --- a/frontend/src/Settings/DownloadClients/DownloadClients/Manage/ManageDownloadClientsModalRow.tsx +++ b/frontend/src/Settings/DownloadClients/DownloadClients/Manage/ManageDownloadClientsModalRow.tsx @@ -1,4 +1,5 @@ import React, { useCallback } from 'react'; +import ProtocolLabel from 'Activity/Queue/ProtocolLabel'; import { useSelect } from 'App/Select/SelectContext'; import Label from 'Components/Label'; import SeriesTagList from 'Components/SeriesTagList'; @@ -6,6 +7,7 @@ import TableRowCell from 'Components/Table/Cells/TableRowCell'; import TableSelectCell from 'Components/Table/Cells/TableSelectCell'; import Column from 'Components/Table/Column'; import TableRow from 'Components/Table/TableRow'; +import DownloadProtocol from 'DownloadClient/DownloadProtocol'; import { kinds } from 'Helpers/Props'; import DownloadClient from 'typings/DownloadClient'; import { SelectStateInputProps } from 'typings/props'; @@ -15,6 +17,7 @@ import styles from './ManageDownloadClientsModalRow.css'; interface ManageDownloadClientsModalRowProps { id: number; name: string; + protocol: DownloadProtocol; enable: boolean; priority: number; removeCompletedDownloads: boolean; @@ -30,6 +33,7 @@ function ManageDownloadClientsModalRow( const { id, name, + protocol, enable, priority, removeCompletedDownloads, @@ -62,6 +66,10 @@ function ManageDownloadClientsModalRow( {name} + + + + {implementation}