From 1fd9b4e74459a41ed8502700bf717262763670f6 Mon Sep 17 00:00:00 2001 From: schroda <50052685+schroda@users.noreply.github.com> Date: Sun, 19 Nov 2023 00:10:30 +0100 Subject: [PATCH] Disable disallowed settings (#461) --- src/components/settings/NumberSetting.tsx | 4 +- src/components/settings/TextSetting.tsx | 4 +- .../downloads/DownloadAheadSetting.tsx | 41 +++++++------- .../GlobalUpdateSettingsInterval.tsx | 39 +++++++------- src/screens/settings/DownloadSettings.tsx | 23 ++++---- src/screens/settings/ServerSettings.tsx | 54 +++++++++---------- 6 files changed, 80 insertions(+), 85 deletions(-) diff --git a/src/components/settings/NumberSetting.tsx b/src/components/settings/NumberSetting.tsx index 1e702d43..8c18b793 100644 --- a/src/components/settings/NumberSetting.tsx +++ b/src/components/settings/NumberSetting.tsx @@ -33,6 +33,7 @@ type BaseProps = { valueUnit: string; handleUpdate: (value: number) => void; showSlider?: never; + disabled?: boolean; }; type PropsWithSlider = Omit & @@ -53,6 +54,7 @@ export const NumberSetting = ({ valueUnit, handleUpdate, showSlider, + disabled = false, }: Props) => { const { t } = useTranslation(); @@ -94,7 +96,7 @@ export const NumberSetting = ({ return ( <> - setIsDialogOpen(true)}> + setIsDialogOpen(true)}> {settingIcon ? {settingIcon} : null} void; isPassword?: boolean; placeholder?: string; + disabled?: boolean; }) => { const { t } = useTranslation(); @@ -64,7 +66,7 @@ export const TextSetting = ({ return ( <> - setIsDialogOpen(true)}> + setIsDialogOpen(true)}> { /> - {shouldDownloadAhead ? ( - - ) : null} + ); }; diff --git a/src/components/settings/globalUpdate/GlobalUpdateSettingsInterval.tsx b/src/components/settings/globalUpdate/GlobalUpdateSettingsInterval.tsx index eb9977a5..22b92a6f 100644 --- a/src/components/settings/globalUpdate/GlobalUpdateSettingsInterval.tsx +++ b/src/components/settings/globalUpdate/GlobalUpdateSettingsInterval.tsx @@ -42,26 +42,25 @@ export const GlobalUpdateSettingsInterval = () => { setDoAutoUpdates(e.target.checked)} /> - {doAutoUpdates ? ( - - ) : null} + ); }; diff --git a/src/screens/settings/DownloadSettings.tsx b/src/screens/settings/DownloadSettings.tsx index 581c5ac9..7ebb0c7e 100644 --- a/src/screens/settings/DownloadSettings.tsx +++ b/src/screens/settings/DownloadSettings.tsx @@ -92,20 +92,17 @@ export const DownloadSettings = () => { /> - {downloadSettings?.autoDownloadNewChapters ? ( - - + + + updateSetting('excludeEntryWithUnreadChapters', e.target.checked)} + disabled={!downloadSettings?.autoDownloadNewChapters} /> - - updateSetting('excludeEntryWithUnreadChapters', e.target.checked)} - /> - - - ) : null} + + { /> - {!!serverSettings?.socksProxyEnabled && ( - <> - updateSetting('socksProxyHost', proxyHost)} - /> - updateSetting('socksProxyPort', proxyPort)} - /> - - )} + updateSetting('socksProxyHost', proxyHost)} + disabled={!serverSettings?.socksProxyEnabled} + /> + updateSetting('socksProxyPort', proxyPort)} + disabled={!serverSettings?.socksProxyEnabled} + /> { /> - {!!serverSettings?.basicAuthEnabled && ( - <> - updateSetting('basicAuthUsername', authUsername)} - /> - updateSetting('basicAuthPassword', authPassword)} - /> - - )} + updateSetting('basicAuthUsername', authUsername)} + disabled={!serverSettings?.basicAuthEnabled} + /> + updateSetting('basicAuthPassword', authPassword)} + disabled={!serverSettings?.basicAuthEnabled} + />