InviteUserControl.jsx 1.1 KB

1234567891011121314151617181920212223242526272829303132333435
  1. import React, { Fragment } from 'react';
  2. import PropTypes from 'prop-types';
  3. import { withTranslation } from 'react-i18next';
  4. import { withUnstatedContainers } from '../../UnstatedUtils';
  5. import AppContainer from '../../../services/AppContainer';
  6. import AdminUsersContainer from '../../../services/AdminUsersContainer';
  7. import UserInviteModal from './UserInviteModal';
  8. class InviteUserControl extends React.Component {
  9. render() {
  10. const { t, adminUsersContainer } = this.props;
  11. return (
  12. <Fragment>
  13. <button type="button" className="btn btn-outline-secondary" onClick={adminUsersContainer.toggleUserInviteModal}>
  14. {t('admin:user_management.invite_users')}
  15. </button>
  16. <UserInviteModal />
  17. </Fragment>
  18. );
  19. }
  20. }
  21. const InviteUserControlWrapper = withUnstatedContainers(InviteUserControl, [AppContainer, AdminUsersContainer]);
  22. InviteUserControl.propTypes = {
  23. t: PropTypes.func.isRequired, // i18next
  24. appContainer: PropTypes.instanceOf(AppContainer).isRequired,
  25. adminUsersContainer: PropTypes.instanceOf(AdminUsersContainer).isRequired,
  26. };
  27. export default withTranslation()(InviteUserControlWrapper);