From f6f397700e0e0eec89a23e7de981b7530698b490 Mon Sep 17 00:00:00 2001 From: Patrick Robertson Date: Fri, 7 Mar 2025 12:41:09 +0000 Subject: [PATCH] Fix typo + use hidden password fields for secret info --- docs/source/installation/settings.html | 503 +++++++++++++++++++------ scripts/settings/src/App.tsx | 3 +- scripts/settings/src/StepCard.tsx | 54 ++- 3 files changed, 446 insertions(+), 114 deletions(-) diff --git a/docs/source/installation/settings.html b/docs/source/installation/settings.html index b1bf1ff..915ee8d 100644 --- a/docs/source/installation/settings.html +++ b/docs/source/installation/settings.html @@ -1,17 +1,4 @@ - - - - - - - - - - Auto Archiver Settings - - - +//# sourceMappingURL=index-B70OAwt6.js.map +
- - diff --git a/scripts/settings/src/App.tsx b/scripts/settings/src/App.tsx index 511e602..991808a 100644 --- a/scripts/settings/src/App.tsx +++ b/scripts/settings/src/App.tsx @@ -206,8 +206,7 @@ function ModuleTypes({ stepType, setEnabledModules, enabledModules, configValues {stepType} - Select the {stepType} you wish to enable. Drag to. - Learn more about {stepType} here. + Select the {stepType} you wish to enable. Drag to reorder. {showError ? Only one {stepType.slice(0,-1)} can be enabled at a time. : null} diff --git a/scripts/settings/src/StepCard.tsx b/scripts/settings/src/StepCard.tsx index f8a55b5..52ee76b 100644 --- a/scripts/settings/src/StepCard.tsx +++ b/scripts/settings/src/StepCard.tsx @@ -23,9 +23,12 @@ import { TextField, Stack, Typography, + InputAdornment, } from '@mui/material'; import Grid from '@mui/material/Grid2'; import DragIndicatorIcon from '@mui/icons-material/DragIndicator'; +import Visibility from '@mui/icons-material/Visibility'; +import VisibilityOff from '@mui/icons-material/VisibilityOff'; import HelpIconOutlined from '@mui/icons-material/HelpOutline'; import { Module, Config } from "./types"; @@ -83,24 +86,24 @@ const StepCard = ({ title={ } + control={} label={module.display_name} /> } /> - setHelpOpen(true)}> + setHelpOpen(true)}> {enabled && module.configs && name != 'cli_feeder' ? ( ) : null} - - - - + + + + setShowPassword((show) => !show); + + const handleMouseDownPassword = (event: React.MouseEvent) => { + event.preventDefault(); + }; + + const handleMouseUpPassword = (event: React.MouseEvent) => { + event.preventDefault(); + }; + function setConfigValue(config: any, value: any) { configValues[module.name][config] = value; } @@ -130,6 +144,18 @@ function ConfigField({ config_value, module, configValues }: { config_value: any const config_name: string = config_value.replace(/_/g, " "); const config_display_name = config_name.capitalize(); const value = configValues[module.name][config_value] || config_args.default; + + + const config_value_lower = config_value.toLowerCase(); + const is_password = config_value_lower.includes('password') || + config_value_lower.includes('secret') || + config_value_lower.includes('token') || + config_value_lower.includes('key') || + config_value_lower.includes('api_hash') || + config_args.type === 'password'; + + const text_input_type = is_password ? 'password' : (config_args.type === 'int' ? 'number' : 'text'); + return ( {config_display_name} {config_args.required && (`(required)`)} @@ -172,11 +198,25 @@ function ConfigField({ config_value, module, configValues }: { config_value: any } } /> : - { setConfigValue(config_value, e.target.value); }} required={config_args.required} + slotProps={ is_password ? { + input: { endAdornment: ( + + + {showPassword ? : } + + + )} + } : {}} /> ) )