feat(transmissionbt): implement reannounce and max active rules (#708)

* feat(transmissionbt): feature parity with qBit

* Update transmission.go

* feat(actions): transmission re-announce

* build(goreleaser): update archive name replacement

* feat(actions): transmission max active downloads check

* build(goreleaser): update archive name replacement

* build(goreleaser): remove archive files none

---------

Co-authored-by: ze0s <ze0s@riseup.net>
This commit is contained in:
Kyle Sanderson 2023-07-01 13:51:57 -07:00 committed by GitHub
parent bc823f98a4
commit 90b5cc9351
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
4 changed files with 223 additions and 26 deletions

View file

@ -422,11 +422,43 @@ function FormFieldsRulesQbit() {
);
}
function FormFieldsRulesTransmission() {
const {
values: { settings }
} = useFormikContext<InitialValues>();
return (
<div className="border-t border-gray-200 dark:border-gray-700 py-5 px-2">
<div className="px-4 space-y-1">
<Dialog.Title className="text-lg font-medium text-gray-900 dark:text-white">
Rules
</Dialog.Title>
<p className="text-sm text-gray-500 dark:text-gray-400">
Manage max downloads etc.
</p>
</div>
<SwitchGroupWide name="settings.rules.enabled" label="Enabled" />
{settings.rules?.enabled === true && (
<>
<NumberFieldWide
name="settings.rules.max_active_downloads"
label="Max active downloads"
tooltip={<><p>Limit the amount of active downloads (0 is unlimited), to give the maximum amount of bandwidth and disk for the downloads.</p><a href='https://autobrr.com/configuration/download-clients/dedicated#transmission-rules' className='text-blue-400 visited:text-blue-400' target='_blank'>https://autobrr.com/configuration/download-clients/dedicated#transmission-rules</a><br /><br /><p>See recommendations for various server types here:</p><a href='https://autobrr.com/filters/examples#build-buffer' className='text-blue-400 visited:text-blue-400' target='_blank'>https://autobrr.com/filters/examples#build-buffer</a></>}
/>
</>
)}
</div>
);
}
export const rulesComponentMap: componentMapType = {
DELUGE_V1: <FormFieldsRulesBasic/>,
DELUGE_V2: <FormFieldsRulesBasic/>,
QBITTORRENT: <FormFieldsRulesQbit/>,
PORLA: <FormFieldsRulesBasic/>
PORLA: <FormFieldsRulesBasic/>,
TRANSMISSION: <FormFieldsRulesTransmission/>
};
interface formButtonsProps {