pleroma/app/soapbox/features/compose/containers/quoted_status_container.tsx
marcin mikolajczak 9822266561 do i really understand this?
Signed-off-by: marcin mikolajczak <git@mkljczk.pl>
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
Signed-off-by: marcin mikolajczak <git@mkljczk.pl>
2022-09-13 13:49:50 +02:00

34 lines
862 B
TypeScript

import React, { useCallback } from 'react';
import { cancelQuoteCompose } from 'soapbox/actions/compose';
import QuotedStatus from 'soapbox/components/quoted-status';
import { useAppSelector, useAppDispatch } from 'soapbox/hooks';
import { makeGetStatus } from 'soapbox/selectors';
/** QuotedStatus shown in post composer. */
const QuotedStatusContainer: React.FC = () => {
const dispatch = useAppDispatch();
const getStatus = useCallback(makeGetStatus(), []);
const status = useAppSelector(state => getStatus(state, { id: state.compose.quote! }));
const onCancel = () => {
dispatch(cancelQuoteCompose());
};
if (!status) {
return null;
}
return (
<div className='mb-2'>
<QuotedStatus
status={status}
onCancel={onCancel}
compose
/>
</div>
);
};
export default QuotedStatusContainer;