CryptoDonate: convert to tsx

This commit is contained in:
Alex Gleason 2022-03-25 15:24:10 -05:00
parent 13c4948ad2
commit 7e2a74b05d
No known key found for this signature in database
GPG key ID: 7211D1F99744FBB7
2 changed files with 42 additions and 0 deletions

View file

@ -0,0 +1,42 @@
import React, { useState } from 'react';
import { defineMessages, useIntl, FormattedMessage } from 'react-intl';
import { Column } from 'soapbox/components/ui';
import Accordion from 'soapbox/features/ui/components/accordion';
import { useAppSelector } from 'soapbox/hooks';
import SiteWallet from './components/site_wallet';
const messages = defineMessages({
heading: { id: 'column.crypto_donate', defaultMessage: 'Donate Cryptocurrency' },
});
const CryptoDonate: React.FC = (): JSX.Element => {
const [explanationBoxExpanded, toggleExplanationBox] = useState(true);
const siteTitle = useAppSelector((state) => state.instance.title);
const intl = useIntl();
return (
<Column label={intl.formatMessage(messages.heading)} withHeader>
<div className='crypto-donate'>
<div className='explanation-box'>
<Accordion
headline={<FormattedMessage id='crypto_donate.explanation_box.title' defaultMessage='Sending cryptocurrency donations' />}
expanded={explanationBoxExpanded}
onToggle={toggleExplanationBox}
>
<FormattedMessage
id='crypto_donate.explanation_box.message'
defaultMessage='{siteTitle} accepts cryptocurrency donations. You may send a donation to any of the addresses below. Thank you for your support!'
values={{ siteTitle }}
/>
</Accordion>
</div>
<SiteWallet />
</div>
</Column>
);
};
export default CryptoDonate;