import { useState, useEffect } from 'react'; import { FormattedMessage, FormattedDate, useIntl, defineMessages, } from 'react-intl'; import { Helmet } from 'react-helmet'; import { apiGetTermsOfService } from 'mastodon/api/instance'; import type { ApiTermsOfServiceJSON } from 'mastodon/api_types/instance'; import { Column } from 'mastodon/components/column'; import { Skeleton } from 'mastodon/components/skeleton'; import BundleColumnError from 'mastodon/features/ui/components/bundle_column_error'; const messages = defineMessages({ title: { id: 'terms_of_service.title', defaultMessage: 'Terms of Service' }, }); const TermsOfService: React.FC<{ multiColumn: boolean; }> = ({ multiColumn }) => { const intl = useIntl(); const [response, setResponse] = useState(); const [loading, setLoading] = useState(true); useEffect(() => { apiGetTermsOfService() .then((data) => { setResponse(data); setLoading(false); return ''; }) .catch(() => { setLoading(false); }); }, []); if (!loading && !response) { return ; } return (

) : ( ), }} />

{response && (
)}
{intl.formatMessage(messages.title)} ); }; // eslint-disable-next-line import/no-default-export export default TermsOfService;