import { Text } from "preact-i18n"; import styles from "./Panes.module.scss"; import Checkbox from "../../../components/ui/Checkbox"; import { connectState } from "../../../redux/connector"; import { WithDispatcher } from "../../../redux/reducers"; import { SyncKeys, SyncOptions } from "../../../redux/reducers/sync"; interface Props { options?: SyncOptions; } export function Component(props: Props & WithDispatcher) { return (

{ ([ ['appearance', 'appearance.title'], ['theme', 'appearance.theme'], ['locale', 'language.title'] // notifications sync is always-on ] as [ SyncKeys, string ][]).map( ([ key, title ]) => { props.dispatcher({ type: enabled ? 'SYNC_ENABLE_KEY' : 'SYNC_DISABLE_KEY', key }); }} >

) }
); } export const Sync = connectState( Component, state => { return { options: state.sync }; }, true );