import { observer } from "mobx-react"; import { SettingsIcon } from "outline-icons"; import * as React from "react"; import { Trans, useTranslation } from "react-i18next"; import { languageOptions } from "@shared/i18n"; import { UserPreference } from "@shared/types"; import Button from "~/components/Button"; import Heading from "~/components/Heading"; import InputSelect from "~/components/InputSelect"; import Scene from "~/components/Scene"; import Switch from "~/components/Switch"; import Text from "~/components/Text"; import useCurrentUser from "~/hooks/useCurrentUser"; import useStores from "~/hooks/useStores"; import useToasts from "~/hooks/useToasts"; import UserDelete from "../UserDelete"; import SettingRow from "./components/SettingRow"; function Preferences() { const { t } = useTranslation(); const { showToast } = useToasts(); const { dialogs, auth } = useStores(); const user = useCurrentUser(); const handlePreferenceChange = async ( ev: React.ChangeEvent ) => { const preferences = { ...user.preferences, [ev.target.name]: ev.target.checked, }; await auth.updateUser({ preferences }); showToast(t("Preferences saved"), { type: "success", }); }; const handleLanguageChange = async (language: string) => { await auth.updateUser({ language }); showToast(t("Preferences saved"), { type: "success", }); }; const showDeleteAccount = () => { dialogs.openModal({ title: t("Delete account"), content: , }); }; return ( }> {t("Preferences")} Manage settings that affect your personal experience. {t("Display")} Choose the interface language. Community translations are accepted though our{" "} translation portal . } > {t("Behavior")}

 

); } export default observer(Preferences);