You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

33 lines
1.1 KiB

  1. import React from 'react';
  2. import ImmutablePropTypes from 'react-immutable-proptypes';
  3. import UploadProgressContainer from '../containers/upload_progress_container';
  4. import ImmutablePureComponent from 'react-immutable-pure-component';
  5. import UploadContainer from '../containers/upload_container';
  6. import SensitiveButtonContainer from '../containers/sensitive_button_container';
  7. import { FormattedMessage } from 'react-intl';
  8. export default class UploadForm extends ImmutablePureComponent {
  9. static propTypes = {
  10. mediaIds: ImmutablePropTypes.list.isRequired,
  11. };
  12. render () {
  13. const { mediaIds } = this.props;
  14. return (
  15. <div className='compose-form__upload-wrapper'>
  16. <UploadProgressContainer icon='upload' message={<FormattedMessage id='upload_progress.label' defaultMessage='Uploading…' />} />
  17. <div className='compose-form__uploads-wrapper'>
  18. {mediaIds.map(id => (
  19. <UploadContainer id={id} key={id} />
  20. ))}
  21. </div>
  22. {!mediaIds.isEmpty() && <SensitiveButtonContainer />}
  23. </div>
  24. );
  25. }
  26. }