Files
ncd-fe/src/features/compose/containers/upload-button-container.tsx
marcin mikołajczak 5c047c4ef6 Modals cleanup
Signed-off-by: marcin mikołajczak <git@mkljczk.pl>
2024-08-22 16:46:46 +02:00

29 lines
903 B
TypeScript

import React from 'react';
import { uploadCompose } from 'soapbox/actions/compose';
import { useAppDispatch, useAppSelector } from 'soapbox/hooks';
import UploadButton from '../components/upload-button';
import type { IntlShape } from 'react-intl';
interface IUploadButtonContainer {
composeId: string;
}
const UploadButtonContainer: React.FC<IUploadButtonContainer> = ({ composeId }) => {
const dispatch = useAppDispatch();
const { disabled, resetFileKey } = useAppSelector((state) => ({
disabled: state.compose.get(composeId)?.is_uploading,
resetFileKey: state.compose.get(composeId)?.resetFileKey!,
}));
const onSelectFile = (files: FileList, intl: IntlShape) => {
dispatch(uploadCompose(composeId, files, intl));
};
return <UploadButton disabled={disabled} resetFileKey={resetFileKey} onSelectFile={onSelectFile} />;
};
export { UploadButtonContainer as default };