pl-fe: improve defaultSettings handling

Signed-off-by: mkljczk <git@mkljczk.pl>
This commit is contained in:
mkljczk
2025-03-08 16:24:26 +01:00
parent ae9cac0c64
commit e7ca259762
6 changed files with 17 additions and 17 deletions

View File

@ -55,7 +55,7 @@ const messages = defineMessages({
type ValueGetter<T1 = Element, T2 = any> = (e: React.ChangeEvent<T1>) => T2;
type StreamItemConfigPath = ['promoPanel', 'items'] | ['navlinks', 'homeFooter'] | ['cryptoAddresses'];
type ThemeChangeHandler = (theme: string) => void;
type ThemeChangeHandler = (theme: 'system' | 'light' | 'dark' | 'black') => void;
const PlFeConfigEditor: React.FC = () => {
const intl = useIntl();
@ -189,7 +189,7 @@ const PlFeConfigEditor: React.FC = () => {
<List>
<ListItem label={<FormattedMessage id='plfe_config.fields.theme_label' defaultMessage='Default theme' />}>
<ThemeSelector
value={plFe.defaultSettings?.themeMode}
value={plFe.defaultSettings?.themeMode || 'system'}
onChange={handleThemeChange}
/>
</ListItem>

View File

@ -13,7 +13,7 @@ const messages = defineMessages({
interface IThemeSelector {
value: string;
onChange: (value: string) => void;
onChange: (value: 'system' | 'light' | 'dark' | 'black') => void;
}
/** Pure theme selector. */
@ -36,7 +36,7 @@ const ThemeSelector: React.FC<IThemeSelector> = ({ value, onChange }) => {
}, [value]);
const handleChange: React.ChangeEventHandler<HTMLSelectElement> = e => {
onChange(e.target.value);
onChange(e.target.value as any);
};
return (

View File

@ -13,7 +13,7 @@ import Input from 'pl-fe/components/ui/input';
import { useAppDispatch } from 'pl-fe/hooks/use-app-dispatch';
import { useSettings } from 'pl-fe/hooks/use-settings';
import SettingToggle from '../notifications/components/setting-toggle';
import SettingToggle from '../settings/components/setting-toggle';
const messages = defineMessages({
urlPrivacy: { id: 'settings.url_privacy', defaultMessage: 'URL privacy' },