From 0aadc2db2a42fc99538fbbb096b84b209b9ccd68 Mon Sep 17 00:00:00 2001
From: tobi <31960611+tsmethurst@users.noreply.github.com>
Date: Wed, 17 Jul 2024 16:46:52 +0200
Subject: [feature] Allow users to set default interaction policies per status
 visibility (#3108)

* [feature] Allow users to set default interaction policies

* use vars for default policies

* avoid some code repetition

* unfuck form binding

* avoid bonkers loop

* beep boop

* put policyValsToAPIPolicyVals in separate function

* don't bother with slices.Grow

* oops
---
 web/source/settings/views/user/posts/index.tsx | 51 ++++++++++++++++++++++++++
 1 file changed, 51 insertions(+)
 create mode 100644 web/source/settings/views/user/posts/index.tsx

(limited to 'web/source/settings/views/user/posts/index.tsx')

diff --git a/web/source/settings/views/user/posts/index.tsx b/web/source/settings/views/user/posts/index.tsx
new file mode 100644
index 000000000..4d7669391
--- /dev/null
+++ b/web/source/settings/views/user/posts/index.tsx
@@ -0,0 +1,51 @@
+/*
+	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 <http://www.gnu.org/licenses/>.
+*/
+
+import React from "react";
+import { useVerifyCredentialsQuery } from "../../../lib/query/oauth";
+import Loading from "../../../components/loading";
+import { Error } from "../../../components/error";
+import BasicSettings from "./basic-settings";
+import InteractionPolicySettings from "./interaction-policy-settings";
+
+export default function PostSettings() {
+	const {
+		data: account,
+		isLoading,
+		isFetching,
+		isError,
+		error,
+	} = useVerifyCredentialsQuery();
+
+	if (isLoading || isFetching) {
+		return <Loading />;
+	}
+
+	if (isError) {
+		return <Error error={error} />;
+	}
+
+	return (
+		<>
+			<h1>Post Settings</h1>
+			<BasicSettings account={account} />
+			<InteractionPolicySettings />
+		</>
+	);
+}
-- 
cgit v1.2.3

