pleroma/app/soapbox/features/follow-requests/components/account-authorize.tsx
2023-06-21 16:51:08 -05:00

38 lines
1,011 B
TypeScript

import React from 'react';
import { authorizeFollowRequest, rejectFollowRequest } from 'soapbox/actions/accounts';
import { useAccount } from 'soapbox/api/hooks';
import Account from 'soapbox/components/account';
import { AuthorizeRejectButtons } from 'soapbox/components/authorize-reject-buttons';
import { useAppDispatch } from 'soapbox/hooks';
interface IAccountAuthorize {
id: string
}
const AccountAuthorize: React.FC<IAccountAuthorize> = ({ id }) => {
const dispatch = useAppDispatch();
const { account } = useAccount(id);
const onAuthorize = () => dispatch(authorizeFollowRequest(id));
const onReject = () => dispatch(rejectFollowRequest(id));
if (!account) return null;
return (
<div className='p-2.5'>
<Account
account={account}
action={
<AuthorizeRejectButtons
onAuthorize={onAuthorize}
onReject={onReject}
countdown={3000}
/>
}
/>
</div>
);
};
export default AccountAuthorize;