/* GoToSocial Copyright (C) GoToSocial Authors admin@gotosocial.org SPDX-License-Identifier: AGPL-3.0-or-later This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details. You should have received a copy of the GNU Affero General Public License along with this program. If not, see . */ import React from "react"; import { useTextInput, useBoolInput } from "../../../../lib/form"; import useFormSubmit from "../../../../lib/form/submit"; import { Select, Checkbox } from "../../../../components/form/inputs"; import Languages from "../../../../components/languages"; import MutationButton from "../../../../components/form/mutation-button"; import { useUpdateCredentialsMutation } from "../../../../lib/query/user"; import { Account } from "../../../../lib/types/account"; export default function BasicSettings({ account }: { account: Account }) { /* form keys - string source[privacy] - bool source[sensitive] - string source[language] - string source[status_content_type] */ const form = { defaultPrivacy: useTextInput("source[privacy]", { source: account, defaultValue: "unlisted" }), isSensitive: useBoolInput("source[sensitive]", { source: account }), language: useTextInput("source[language]", { source: account, valueSelector: (s: Account) => s.source?.language?.toUpperCase() ?? "EN" }), statusContentType: useTextInput("source[status_content_type]", { source: account, defaultValue: "text/plain" }), }; const [submitForm, result] = useFormSubmit(form, useUpdateCredentialsMutation()); return (

Basic

Learn more about these settings (opens in a new tab)
); }